lazy-render-virtual-scroll 1.4.0 → 1.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +32 -288
- package/backend-helpers/README.md +233 -0
- package/backend-helpers/example.ts +114 -0
- package/backend-helpers/frontend-example.tsx +122 -0
- package/backend-helpers/pagination.ts +159 -0
- package/dist/adapters/react/index.d.ts +187 -1
- package/dist/cjs/adapters/react/LazyList.js +377 -0
- package/dist/cjs/adapters/react/LazyList.js.map +1 -1
- package/dist/cjs/adapters/react/adapters/react/components/AdaptiveScrollView.d.ts +16 -0
- package/dist/cjs/adapters/react/adapters/react/components/AdaptiveScrollView.d.ts.map +1 -0
- package/dist/cjs/adapters/react/adapters/react/components/IntelligentLazyList.d.ts +16 -0
- package/dist/cjs/adapters/react/adapters/react/components/IntelligentLazyList.d.ts.map +1 -0
- package/dist/cjs/adapters/react/adapters/react/components/SmartInfiniteScroll.d.ts +15 -0
- package/dist/cjs/adapters/react/adapters/react/components/SmartInfiniteScroll.d.ts.map +1 -0
- package/dist/cjs/adapters/react/adapters/react/components/index.d.ts +7 -0
- package/dist/cjs/adapters/react/adapters/react/components/index.d.ts.map +1 -0
- package/dist/cjs/adapters/react/adapters/react/hooks/index.d.ts +7 -0
- package/dist/cjs/adapters/react/adapters/react/hooks/index.d.ts.map +1 -0
- package/dist/cjs/adapters/react/adapters/react/hooks/useAdaptiveLoading.d.ts +39 -0
- package/dist/cjs/adapters/react/adapters/react/hooks/useAdaptiveLoading.d.ts.map +1 -0
- package/dist/cjs/adapters/react/adapters/react/hooks/useIntelligentScroll.d.ts +37 -0
- package/dist/cjs/adapters/react/adapters/react/hooks/useIntelligentScroll.d.ts.map +1 -0
- package/dist/cjs/adapters/react/adapters/react/hooks/useSmartPagination.d.ts +57 -0
- package/dist/cjs/adapters/react/adapters/react/hooks/useSmartPagination.d.ts.map +1 -0
- package/dist/cjs/adapters/react/adapters/react/index.d.ts +2 -0
- package/dist/cjs/adapters/react/adapters/react/index.d.ts.map +1 -1
- package/dist/cjs/adapters/react/components/AdaptiveScrollView.d.ts +16 -0
- package/dist/cjs/adapters/react/components/AdaptiveScrollView.d.ts.map +1 -0
- package/dist/cjs/adapters/react/components/IntelligentLazyList.d.ts +16 -0
- package/dist/cjs/adapters/react/components/IntelligentLazyList.d.ts.map +1 -0
- package/dist/cjs/adapters/react/components/SmartInfiniteScroll.d.ts +15 -0
- package/dist/cjs/adapters/react/components/SmartInfiniteScroll.d.ts.map +1 -0
- package/dist/cjs/adapters/react/components/index.d.ts +7 -0
- package/dist/cjs/adapters/react/components/index.d.ts.map +1 -0
- package/dist/cjs/adapters/react/core/BatchSizeOptimizer.d.ts +84 -0
- package/dist/cjs/adapters/react/core/BatchSizeOptimizer.d.ts.map +1 -0
- package/dist/cjs/adapters/react/core/DynamicHeightEngine.d.ts +107 -0
- package/dist/cjs/adapters/react/core/DynamicHeightEngine.d.ts.map +1 -0
- package/dist/cjs/adapters/react/core/Engine.d.ts +3 -0
- package/dist/cjs/adapters/react/core/Engine.d.ts.map +1 -1
- package/dist/cjs/adapters/react/core/HeightMeasurementCache.d.ts +92 -0
- package/dist/cjs/adapters/react/core/HeightMeasurementCache.d.ts.map +1 -0
- package/dist/cjs/adapters/react/core/IntelligentPagination.d.ts +113 -0
- package/dist/cjs/adapters/react/core/IntelligentPagination.d.ts.map +1 -0
- package/dist/cjs/adapters/react/core/PreemptiveCache.d.ts +83 -0
- package/dist/cjs/adapters/react/core/PreemptiveCache.d.ts.map +1 -0
- package/dist/cjs/adapters/react/core/PriorityRequestQueue.d.ts +56 -0
- package/dist/cjs/adapters/react/core/PriorityRequestQueue.d.ts.map +1 -0
- package/dist/cjs/adapters/react/core/RequestDeduplicator.d.ts +35 -0
- package/dist/cjs/adapters/react/core/RequestDeduplicator.d.ts.map +1 -0
- package/dist/cjs/adapters/react/core/SmartPrefetchAlgorithm.d.ts +63 -0
- package/dist/cjs/adapters/react/core/SmartPrefetchAlgorithm.d.ts.map +1 -0
- package/dist/cjs/adapters/react/core/VariableHeightManager.d.ts +84 -0
- package/dist/cjs/adapters/react/core/VariableHeightManager.d.ts.map +1 -0
- package/dist/cjs/adapters/react/hooks/index.d.ts +7 -0
- package/dist/cjs/adapters/react/hooks/index.d.ts.map +1 -0
- package/dist/cjs/adapters/react/hooks/useAdaptiveLoading.d.ts +39 -0
- package/dist/cjs/adapters/react/hooks/useAdaptiveLoading.d.ts.map +1 -0
- package/dist/cjs/adapters/react/hooks/useIntelligentScroll.d.ts +37 -0
- package/dist/cjs/adapters/react/hooks/useIntelligentScroll.d.ts.map +1 -0
- package/dist/cjs/adapters/react/hooks/useSmartPagination.d.ts +57 -0
- package/dist/cjs/adapters/react/hooks/useSmartPagination.d.ts.map +1 -0
- package/dist/cjs/adapters/react/index.d.ts +9 -0
- package/dist/cjs/adapters/react/index.d.ts.map +1 -1
- package/dist/cjs/adapters/react/index.js +1738 -0
- package/dist/cjs/adapters/react/index.js.map +1 -1
- package/dist/cjs/adapters/react/useLazyList.js +377 -0
- package/dist/cjs/adapters/react/useLazyList.js.map +1 -1
- package/dist/cjs/angular/adapters/react/components/AdaptiveScrollView.d.ts +16 -0
- package/dist/cjs/angular/adapters/react/components/AdaptiveScrollView.d.ts.map +1 -0
- package/dist/cjs/angular/adapters/react/components/IntelligentLazyList.d.ts +16 -0
- package/dist/cjs/angular/adapters/react/components/IntelligentLazyList.d.ts.map +1 -0
- package/dist/cjs/angular/adapters/react/components/SmartInfiniteScroll.d.ts +15 -0
- package/dist/cjs/angular/adapters/react/components/SmartInfiniteScroll.d.ts.map +1 -0
- package/dist/cjs/angular/adapters/react/components/index.d.ts +7 -0
- package/dist/cjs/angular/adapters/react/components/index.d.ts.map +1 -0
- package/dist/cjs/angular/adapters/react/hooks/index.d.ts +7 -0
- package/dist/cjs/angular/adapters/react/hooks/index.d.ts.map +1 -0
- package/dist/cjs/angular/adapters/react/hooks/useAdaptiveLoading.d.ts +39 -0
- package/dist/cjs/angular/adapters/react/hooks/useAdaptiveLoading.d.ts.map +1 -0
- package/dist/cjs/angular/adapters/react/hooks/useIntelligentScroll.d.ts +37 -0
- package/dist/cjs/angular/adapters/react/hooks/useIntelligentScroll.d.ts.map +1 -0
- package/dist/cjs/angular/adapters/react/hooks/useSmartPagination.d.ts +57 -0
- package/dist/cjs/angular/adapters/react/hooks/useSmartPagination.d.ts.map +1 -0
- package/dist/cjs/angular/adapters/react/index.d.ts +2 -0
- package/dist/cjs/angular/adapters/react/index.d.ts.map +1 -1
- package/dist/cjs/angular/core/BatchSizeOptimizer.d.ts +84 -0
- package/dist/cjs/angular/core/BatchSizeOptimizer.d.ts.map +1 -0
- package/dist/cjs/angular/core/DynamicHeightEngine.d.ts +107 -0
- package/dist/cjs/angular/core/DynamicHeightEngine.d.ts.map +1 -0
- package/dist/cjs/angular/core/Engine.d.ts +3 -0
- package/dist/cjs/angular/core/Engine.d.ts.map +1 -1
- package/dist/cjs/angular/core/HeightMeasurementCache.d.ts +92 -0
- package/dist/cjs/angular/core/HeightMeasurementCache.d.ts.map +1 -0
- package/dist/cjs/angular/core/IntelligentPagination.d.ts +113 -0
- package/dist/cjs/angular/core/IntelligentPagination.d.ts.map +1 -0
- package/dist/cjs/angular/core/PreemptiveCache.d.ts +83 -0
- package/dist/cjs/angular/core/PreemptiveCache.d.ts.map +1 -0
- package/dist/cjs/angular/core/PriorityRequestQueue.d.ts +56 -0
- package/dist/cjs/angular/core/PriorityRequestQueue.d.ts.map +1 -0
- package/dist/cjs/angular/core/RequestDeduplicator.d.ts +35 -0
- package/dist/cjs/angular/core/RequestDeduplicator.d.ts.map +1 -0
- package/dist/cjs/angular/core/SmartPrefetchAlgorithm.d.ts +63 -0
- package/dist/cjs/angular/core/SmartPrefetchAlgorithm.d.ts.map +1 -0
- package/dist/cjs/angular/core/VariableHeightManager.d.ts +84 -0
- package/dist/cjs/angular/core/VariableHeightManager.d.ts.map +1 -0
- package/dist/cjs/angular/index.d.ts +9 -0
- package/dist/cjs/angular/index.d.ts.map +1 -1
- package/dist/cjs/angular/index.js +377 -0
- package/dist/cjs/angular/index.js.map +1 -1
- package/dist/cjs/core/BatchSizeOptimizer.d.ts +84 -0
- package/dist/cjs/core/BatchSizeOptimizer.d.ts.map +1 -0
- package/dist/cjs/core/DynamicHeightEngine.d.ts +107 -0
- package/dist/cjs/core/DynamicHeightEngine.d.ts.map +1 -0
- package/dist/cjs/core/Engine.d.ts +3 -0
- package/dist/cjs/core/Engine.d.ts.map +1 -1
- package/dist/cjs/core/HeightMeasurementCache.d.ts +92 -0
- package/dist/cjs/core/HeightMeasurementCache.d.ts.map +1 -0
- package/dist/cjs/core/IntelligentPagination.d.ts +113 -0
- package/dist/cjs/core/IntelligentPagination.d.ts.map +1 -0
- package/dist/cjs/core/PreemptiveCache.d.ts +83 -0
- package/dist/cjs/core/PreemptiveCache.d.ts.map +1 -0
- package/dist/cjs/core/PriorityRequestQueue.d.ts +56 -0
- package/dist/cjs/core/PriorityRequestQueue.d.ts.map +1 -0
- package/dist/cjs/core/RequestDeduplicator.d.ts +35 -0
- package/dist/cjs/core/RequestDeduplicator.d.ts.map +1 -0
- package/dist/cjs/core/SmartPrefetchAlgorithm.d.ts +63 -0
- package/dist/cjs/core/SmartPrefetchAlgorithm.d.ts.map +1 -0
- package/dist/cjs/core/VariableHeightManager.d.ts +84 -0
- package/dist/cjs/core/VariableHeightManager.d.ts.map +1 -0
- package/dist/cjs/index.d.ts +9 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +1545 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/svelte/adapters/react/components/AdaptiveScrollView.d.ts +16 -0
- package/dist/cjs/svelte/adapters/react/components/AdaptiveScrollView.d.ts.map +1 -0
- package/dist/cjs/svelte/adapters/react/components/IntelligentLazyList.d.ts +16 -0
- package/dist/cjs/svelte/adapters/react/components/IntelligentLazyList.d.ts.map +1 -0
- package/dist/cjs/svelte/adapters/react/components/SmartInfiniteScroll.d.ts +15 -0
- package/dist/cjs/svelte/adapters/react/components/SmartInfiniteScroll.d.ts.map +1 -0
- package/dist/cjs/svelte/adapters/react/components/index.d.ts +7 -0
- package/dist/cjs/svelte/adapters/react/components/index.d.ts.map +1 -0
- package/dist/cjs/svelte/adapters/react/hooks/index.d.ts +7 -0
- package/dist/cjs/svelte/adapters/react/hooks/index.d.ts.map +1 -0
- package/dist/cjs/svelte/adapters/react/hooks/useAdaptiveLoading.d.ts +39 -0
- package/dist/cjs/svelte/adapters/react/hooks/useAdaptiveLoading.d.ts.map +1 -0
- package/dist/cjs/svelte/adapters/react/hooks/useIntelligentScroll.d.ts +37 -0
- package/dist/cjs/svelte/adapters/react/hooks/useIntelligentScroll.d.ts.map +1 -0
- package/dist/cjs/svelte/adapters/react/hooks/useSmartPagination.d.ts +57 -0
- package/dist/cjs/svelte/adapters/react/hooks/useSmartPagination.d.ts.map +1 -0
- package/dist/cjs/svelte/adapters/react/index.d.ts +2 -0
- package/dist/cjs/svelte/adapters/react/index.d.ts.map +1 -1
- package/dist/cjs/svelte/core/BatchSizeOptimizer.d.ts +84 -0
- package/dist/cjs/svelte/core/BatchSizeOptimizer.d.ts.map +1 -0
- package/dist/cjs/svelte/core/DynamicHeightEngine.d.ts +107 -0
- package/dist/cjs/svelte/core/DynamicHeightEngine.d.ts.map +1 -0
- package/dist/cjs/svelte/core/Engine.d.ts +3 -0
- package/dist/cjs/svelte/core/Engine.d.ts.map +1 -1
- package/dist/cjs/svelte/core/HeightMeasurementCache.d.ts +92 -0
- package/dist/cjs/svelte/core/HeightMeasurementCache.d.ts.map +1 -0
- package/dist/cjs/svelte/core/IntelligentPagination.d.ts +113 -0
- package/dist/cjs/svelte/core/IntelligentPagination.d.ts.map +1 -0
- package/dist/cjs/svelte/core/PreemptiveCache.d.ts +83 -0
- package/dist/cjs/svelte/core/PreemptiveCache.d.ts.map +1 -0
- package/dist/cjs/svelte/core/PriorityRequestQueue.d.ts +56 -0
- package/dist/cjs/svelte/core/PriorityRequestQueue.d.ts.map +1 -0
- package/dist/cjs/svelte/core/RequestDeduplicator.d.ts +35 -0
- package/dist/cjs/svelte/core/RequestDeduplicator.d.ts.map +1 -0
- package/dist/cjs/svelte/core/SmartPrefetchAlgorithm.d.ts +63 -0
- package/dist/cjs/svelte/core/SmartPrefetchAlgorithm.d.ts.map +1 -0
- package/dist/cjs/svelte/core/VariableHeightManager.d.ts +84 -0
- package/dist/cjs/svelte/core/VariableHeightManager.d.ts.map +1 -0
- package/dist/cjs/svelte/index.d.ts +9 -0
- package/dist/cjs/svelte/index.d.ts.map +1 -1
- package/dist/cjs/svelte/index.js +377 -0
- package/dist/cjs/svelte/index.js.map +1 -1
- package/dist/cjs/vue/adapters/react/components/AdaptiveScrollView.d.ts +16 -0
- package/dist/cjs/vue/adapters/react/components/AdaptiveScrollView.d.ts.map +1 -0
- package/dist/cjs/vue/adapters/react/components/IntelligentLazyList.d.ts +16 -0
- package/dist/cjs/vue/adapters/react/components/IntelligentLazyList.d.ts.map +1 -0
- package/dist/cjs/vue/adapters/react/components/SmartInfiniteScroll.d.ts +15 -0
- package/dist/cjs/vue/adapters/react/components/SmartInfiniteScroll.d.ts.map +1 -0
- package/dist/cjs/vue/adapters/react/components/index.d.ts +7 -0
- package/dist/cjs/vue/adapters/react/components/index.d.ts.map +1 -0
- package/dist/cjs/vue/adapters/react/hooks/index.d.ts +7 -0
- package/dist/cjs/vue/adapters/react/hooks/index.d.ts.map +1 -0
- package/dist/cjs/vue/adapters/react/hooks/useAdaptiveLoading.d.ts +39 -0
- package/dist/cjs/vue/adapters/react/hooks/useAdaptiveLoading.d.ts.map +1 -0
- package/dist/cjs/vue/adapters/react/hooks/useIntelligentScroll.d.ts +37 -0
- package/dist/cjs/vue/adapters/react/hooks/useIntelligentScroll.d.ts.map +1 -0
- package/dist/cjs/vue/adapters/react/hooks/useSmartPagination.d.ts +57 -0
- package/dist/cjs/vue/adapters/react/hooks/useSmartPagination.d.ts.map +1 -0
- package/dist/cjs/vue/adapters/react/index.d.ts +2 -0
- package/dist/cjs/vue/adapters/react/index.d.ts.map +1 -1
- package/dist/cjs/vue/core/BatchSizeOptimizer.d.ts +84 -0
- package/dist/cjs/vue/core/BatchSizeOptimizer.d.ts.map +1 -0
- package/dist/cjs/vue/core/DynamicHeightEngine.d.ts +107 -0
- package/dist/cjs/vue/core/DynamicHeightEngine.d.ts.map +1 -0
- package/dist/cjs/vue/core/Engine.d.ts +3 -0
- package/dist/cjs/vue/core/Engine.d.ts.map +1 -1
- package/dist/cjs/vue/core/HeightMeasurementCache.d.ts +92 -0
- package/dist/cjs/vue/core/HeightMeasurementCache.d.ts.map +1 -0
- package/dist/cjs/vue/core/IntelligentPagination.d.ts +113 -0
- package/dist/cjs/vue/core/IntelligentPagination.d.ts.map +1 -0
- package/dist/cjs/vue/core/PreemptiveCache.d.ts +83 -0
- package/dist/cjs/vue/core/PreemptiveCache.d.ts.map +1 -0
- package/dist/cjs/vue/core/PriorityRequestQueue.d.ts +56 -0
- package/dist/cjs/vue/core/PriorityRequestQueue.d.ts.map +1 -0
- package/dist/cjs/vue/core/RequestDeduplicator.d.ts +35 -0
- package/dist/cjs/vue/core/RequestDeduplicator.d.ts.map +1 -0
- package/dist/cjs/vue/core/SmartPrefetchAlgorithm.d.ts +63 -0
- package/dist/cjs/vue/core/SmartPrefetchAlgorithm.d.ts.map +1 -0
- package/dist/cjs/vue/core/VariableHeightManager.d.ts +84 -0
- package/dist/cjs/vue/core/VariableHeightManager.d.ts.map +1 -0
- package/dist/cjs/vue/index.d.ts +9 -0
- package/dist/cjs/vue/index.d.ts.map +1 -1
- package/dist/cjs/vue/index.js +377 -0
- package/dist/cjs/vue/index.js.map +1 -1
- package/dist/esm/adapters/react/LazyList.js +377 -0
- package/dist/esm/adapters/react/LazyList.js.map +1 -1
- package/dist/esm/adapters/react/adapters/react/components/AdaptiveScrollView.d.ts +16 -0
- package/dist/esm/adapters/react/adapters/react/components/AdaptiveScrollView.d.ts.map +1 -0
- package/dist/esm/adapters/react/adapters/react/components/IntelligentLazyList.d.ts +16 -0
- package/dist/esm/adapters/react/adapters/react/components/IntelligentLazyList.d.ts.map +1 -0
- package/dist/esm/adapters/react/adapters/react/components/SmartInfiniteScroll.d.ts +15 -0
- package/dist/esm/adapters/react/adapters/react/components/SmartInfiniteScroll.d.ts.map +1 -0
- package/dist/esm/adapters/react/adapters/react/components/index.d.ts +7 -0
- package/dist/esm/adapters/react/adapters/react/components/index.d.ts.map +1 -0
- package/dist/esm/adapters/react/adapters/react/hooks/index.d.ts +7 -0
- package/dist/esm/adapters/react/adapters/react/hooks/index.d.ts.map +1 -0
- package/dist/esm/adapters/react/adapters/react/hooks/useAdaptiveLoading.d.ts +39 -0
- package/dist/esm/adapters/react/adapters/react/hooks/useAdaptiveLoading.d.ts.map +1 -0
- package/dist/esm/adapters/react/adapters/react/hooks/useIntelligentScroll.d.ts +37 -0
- package/dist/esm/adapters/react/adapters/react/hooks/useIntelligentScroll.d.ts.map +1 -0
- package/dist/esm/adapters/react/adapters/react/hooks/useSmartPagination.d.ts +57 -0
- package/dist/esm/adapters/react/adapters/react/hooks/useSmartPagination.d.ts.map +1 -0
- package/dist/esm/adapters/react/adapters/react/index.d.ts +2 -0
- package/dist/esm/adapters/react/adapters/react/index.d.ts.map +1 -1
- package/dist/esm/adapters/react/components/AdaptiveScrollView.d.ts +16 -0
- package/dist/esm/adapters/react/components/AdaptiveScrollView.d.ts.map +1 -0
- package/dist/esm/adapters/react/components/IntelligentLazyList.d.ts +16 -0
- package/dist/esm/adapters/react/components/IntelligentLazyList.d.ts.map +1 -0
- package/dist/esm/adapters/react/components/SmartInfiniteScroll.d.ts +15 -0
- package/dist/esm/adapters/react/components/SmartInfiniteScroll.d.ts.map +1 -0
- package/dist/esm/adapters/react/components/index.d.ts +7 -0
- package/dist/esm/adapters/react/components/index.d.ts.map +1 -0
- package/dist/esm/adapters/react/core/BatchSizeOptimizer.d.ts +84 -0
- package/dist/esm/adapters/react/core/BatchSizeOptimizer.d.ts.map +1 -0
- package/dist/esm/adapters/react/core/DynamicHeightEngine.d.ts +107 -0
- package/dist/esm/adapters/react/core/DynamicHeightEngine.d.ts.map +1 -0
- package/dist/esm/adapters/react/core/Engine.d.ts +3 -0
- package/dist/esm/adapters/react/core/Engine.d.ts.map +1 -1
- package/dist/esm/adapters/react/core/HeightMeasurementCache.d.ts +92 -0
- package/dist/esm/adapters/react/core/HeightMeasurementCache.d.ts.map +1 -0
- package/dist/esm/adapters/react/core/IntelligentPagination.d.ts +113 -0
- package/dist/esm/adapters/react/core/IntelligentPagination.d.ts.map +1 -0
- package/dist/esm/adapters/react/core/PreemptiveCache.d.ts +83 -0
- package/dist/esm/adapters/react/core/PreemptiveCache.d.ts.map +1 -0
- package/dist/esm/adapters/react/core/PriorityRequestQueue.d.ts +56 -0
- package/dist/esm/adapters/react/core/PriorityRequestQueue.d.ts.map +1 -0
- package/dist/esm/adapters/react/core/RequestDeduplicator.d.ts +35 -0
- package/dist/esm/adapters/react/core/RequestDeduplicator.d.ts.map +1 -0
- package/dist/esm/adapters/react/core/SmartPrefetchAlgorithm.d.ts +63 -0
- package/dist/esm/adapters/react/core/SmartPrefetchAlgorithm.d.ts.map +1 -0
- package/dist/esm/adapters/react/core/VariableHeightManager.d.ts +84 -0
- package/dist/esm/adapters/react/core/VariableHeightManager.d.ts.map +1 -0
- package/dist/esm/adapters/react/hooks/index.d.ts +7 -0
- package/dist/esm/adapters/react/hooks/index.d.ts.map +1 -0
- package/dist/esm/adapters/react/hooks/useAdaptiveLoading.d.ts +39 -0
- package/dist/esm/adapters/react/hooks/useAdaptiveLoading.d.ts.map +1 -0
- package/dist/esm/adapters/react/hooks/useIntelligentScroll.d.ts +37 -0
- package/dist/esm/adapters/react/hooks/useIntelligentScroll.d.ts.map +1 -0
- package/dist/esm/adapters/react/hooks/useSmartPagination.d.ts +57 -0
- package/dist/esm/adapters/react/hooks/useSmartPagination.d.ts.map +1 -0
- package/dist/esm/adapters/react/index.d.ts +9 -0
- package/dist/esm/adapters/react/index.d.ts.map +1 -1
- package/dist/esm/adapters/react/index.js +1733 -1
- package/dist/esm/adapters/react/index.js.map +1 -1
- package/dist/esm/adapters/react/useLazyList.js +377 -0
- package/dist/esm/adapters/react/useLazyList.js.map +1 -1
- package/dist/esm/angular/adapters/react/components/AdaptiveScrollView.d.ts +16 -0
- package/dist/esm/angular/adapters/react/components/AdaptiveScrollView.d.ts.map +1 -0
- package/dist/esm/angular/adapters/react/components/IntelligentLazyList.d.ts +16 -0
- package/dist/esm/angular/adapters/react/components/IntelligentLazyList.d.ts.map +1 -0
- package/dist/esm/angular/adapters/react/components/SmartInfiniteScroll.d.ts +15 -0
- package/dist/esm/angular/adapters/react/components/SmartInfiniteScroll.d.ts.map +1 -0
- package/dist/esm/angular/adapters/react/components/index.d.ts +7 -0
- package/dist/esm/angular/adapters/react/components/index.d.ts.map +1 -0
- package/dist/esm/angular/adapters/react/hooks/index.d.ts +7 -0
- package/dist/esm/angular/adapters/react/hooks/index.d.ts.map +1 -0
- package/dist/esm/angular/adapters/react/hooks/useAdaptiveLoading.d.ts +39 -0
- package/dist/esm/angular/adapters/react/hooks/useAdaptiveLoading.d.ts.map +1 -0
- package/dist/esm/angular/adapters/react/hooks/useIntelligentScroll.d.ts +37 -0
- package/dist/esm/angular/adapters/react/hooks/useIntelligentScroll.d.ts.map +1 -0
- package/dist/esm/angular/adapters/react/hooks/useSmartPagination.d.ts +57 -0
- package/dist/esm/angular/adapters/react/hooks/useSmartPagination.d.ts.map +1 -0
- package/dist/esm/angular/adapters/react/index.d.ts +2 -0
- package/dist/esm/angular/adapters/react/index.d.ts.map +1 -1
- package/dist/esm/angular/core/BatchSizeOptimizer.d.ts +84 -0
- package/dist/esm/angular/core/BatchSizeOptimizer.d.ts.map +1 -0
- package/dist/esm/angular/core/DynamicHeightEngine.d.ts +107 -0
- package/dist/esm/angular/core/DynamicHeightEngine.d.ts.map +1 -0
- package/dist/esm/angular/core/Engine.d.ts +3 -0
- package/dist/esm/angular/core/Engine.d.ts.map +1 -1
- package/dist/esm/angular/core/HeightMeasurementCache.d.ts +92 -0
- package/dist/esm/angular/core/HeightMeasurementCache.d.ts.map +1 -0
- package/dist/esm/angular/core/IntelligentPagination.d.ts +113 -0
- package/dist/esm/angular/core/IntelligentPagination.d.ts.map +1 -0
- package/dist/esm/angular/core/PreemptiveCache.d.ts +83 -0
- package/dist/esm/angular/core/PreemptiveCache.d.ts.map +1 -0
- package/dist/esm/angular/core/PriorityRequestQueue.d.ts +56 -0
- package/dist/esm/angular/core/PriorityRequestQueue.d.ts.map +1 -0
- package/dist/esm/angular/core/RequestDeduplicator.d.ts +35 -0
- package/dist/esm/angular/core/RequestDeduplicator.d.ts.map +1 -0
- package/dist/esm/angular/core/SmartPrefetchAlgorithm.d.ts +63 -0
- package/dist/esm/angular/core/SmartPrefetchAlgorithm.d.ts.map +1 -0
- package/dist/esm/angular/core/VariableHeightManager.d.ts +84 -0
- package/dist/esm/angular/core/VariableHeightManager.d.ts.map +1 -0
- package/dist/esm/angular/index.d.ts +9 -0
- package/dist/esm/angular/index.d.ts.map +1 -1
- package/dist/esm/angular/index.js +377 -0
- package/dist/esm/angular/index.js.map +1 -1
- package/dist/esm/core/BatchSizeOptimizer.d.ts +84 -0
- package/dist/esm/core/BatchSizeOptimizer.d.ts.map +1 -0
- package/dist/esm/core/DynamicHeightEngine.d.ts +107 -0
- package/dist/esm/core/DynamicHeightEngine.d.ts.map +1 -0
- package/dist/esm/core/Engine.d.ts +3 -0
- package/dist/esm/core/Engine.d.ts.map +1 -1
- package/dist/esm/core/HeightMeasurementCache.d.ts +92 -0
- package/dist/esm/core/HeightMeasurementCache.d.ts.map +1 -0
- package/dist/esm/core/IntelligentPagination.d.ts +113 -0
- package/dist/esm/core/IntelligentPagination.d.ts.map +1 -0
- package/dist/esm/core/PreemptiveCache.d.ts +83 -0
- package/dist/esm/core/PreemptiveCache.d.ts.map +1 -0
- package/dist/esm/core/PriorityRequestQueue.d.ts +56 -0
- package/dist/esm/core/PriorityRequestQueue.d.ts.map +1 -0
- package/dist/esm/core/RequestDeduplicator.d.ts +35 -0
- package/dist/esm/core/RequestDeduplicator.d.ts.map +1 -0
- package/dist/esm/core/SmartPrefetchAlgorithm.d.ts +63 -0
- package/dist/esm/core/SmartPrefetchAlgorithm.d.ts.map +1 -0
- package/dist/esm/core/VariableHeightManager.d.ts +84 -0
- package/dist/esm/core/VariableHeightManager.d.ts.map +1 -0
- package/dist/esm/index.d.ts +9 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1537 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/svelte/adapters/react/components/AdaptiveScrollView.d.ts +16 -0
- package/dist/esm/svelte/adapters/react/components/AdaptiveScrollView.d.ts.map +1 -0
- package/dist/esm/svelte/adapters/react/components/IntelligentLazyList.d.ts +16 -0
- package/dist/esm/svelte/adapters/react/components/IntelligentLazyList.d.ts.map +1 -0
- package/dist/esm/svelte/adapters/react/components/SmartInfiniteScroll.d.ts +15 -0
- package/dist/esm/svelte/adapters/react/components/SmartInfiniteScroll.d.ts.map +1 -0
- package/dist/esm/svelte/adapters/react/components/index.d.ts +7 -0
- package/dist/esm/svelte/adapters/react/components/index.d.ts.map +1 -0
- package/dist/esm/svelte/adapters/react/hooks/index.d.ts +7 -0
- package/dist/esm/svelte/adapters/react/hooks/index.d.ts.map +1 -0
- package/dist/esm/svelte/adapters/react/hooks/useAdaptiveLoading.d.ts +39 -0
- package/dist/esm/svelte/adapters/react/hooks/useAdaptiveLoading.d.ts.map +1 -0
- package/dist/esm/svelte/adapters/react/hooks/useIntelligentScroll.d.ts +37 -0
- package/dist/esm/svelte/adapters/react/hooks/useIntelligentScroll.d.ts.map +1 -0
- package/dist/esm/svelte/adapters/react/hooks/useSmartPagination.d.ts +57 -0
- package/dist/esm/svelte/adapters/react/hooks/useSmartPagination.d.ts.map +1 -0
- package/dist/esm/svelte/adapters/react/index.d.ts +2 -0
- package/dist/esm/svelte/adapters/react/index.d.ts.map +1 -1
- package/dist/esm/svelte/core/BatchSizeOptimizer.d.ts +84 -0
- package/dist/esm/svelte/core/BatchSizeOptimizer.d.ts.map +1 -0
- package/dist/esm/svelte/core/DynamicHeightEngine.d.ts +107 -0
- package/dist/esm/svelte/core/DynamicHeightEngine.d.ts.map +1 -0
- package/dist/esm/svelte/core/Engine.d.ts +3 -0
- package/dist/esm/svelte/core/Engine.d.ts.map +1 -1
- package/dist/esm/svelte/core/HeightMeasurementCache.d.ts +92 -0
- package/dist/esm/svelte/core/HeightMeasurementCache.d.ts.map +1 -0
- package/dist/esm/svelte/core/IntelligentPagination.d.ts +113 -0
- package/dist/esm/svelte/core/IntelligentPagination.d.ts.map +1 -0
- package/dist/esm/svelte/core/PreemptiveCache.d.ts +83 -0
- package/dist/esm/svelte/core/PreemptiveCache.d.ts.map +1 -0
- package/dist/esm/svelte/core/PriorityRequestQueue.d.ts +56 -0
- package/dist/esm/svelte/core/PriorityRequestQueue.d.ts.map +1 -0
- package/dist/esm/svelte/core/RequestDeduplicator.d.ts +35 -0
- package/dist/esm/svelte/core/RequestDeduplicator.d.ts.map +1 -0
- package/dist/esm/svelte/core/SmartPrefetchAlgorithm.d.ts +63 -0
- package/dist/esm/svelte/core/SmartPrefetchAlgorithm.d.ts.map +1 -0
- package/dist/esm/svelte/core/VariableHeightManager.d.ts +84 -0
- package/dist/esm/svelte/core/VariableHeightManager.d.ts.map +1 -0
- package/dist/esm/svelte/index.d.ts +9 -0
- package/dist/esm/svelte/index.d.ts.map +1 -1
- package/dist/esm/svelte/index.js +377 -0
- package/dist/esm/svelte/index.js.map +1 -1
- package/dist/esm/vue/adapters/react/components/AdaptiveScrollView.d.ts +16 -0
- package/dist/esm/vue/adapters/react/components/AdaptiveScrollView.d.ts.map +1 -0
- package/dist/esm/vue/adapters/react/components/IntelligentLazyList.d.ts +16 -0
- package/dist/esm/vue/adapters/react/components/IntelligentLazyList.d.ts.map +1 -0
- package/dist/esm/vue/adapters/react/components/SmartInfiniteScroll.d.ts +15 -0
- package/dist/esm/vue/adapters/react/components/SmartInfiniteScroll.d.ts.map +1 -0
- package/dist/esm/vue/adapters/react/components/index.d.ts +7 -0
- package/dist/esm/vue/adapters/react/components/index.d.ts.map +1 -0
- package/dist/esm/vue/adapters/react/hooks/index.d.ts +7 -0
- package/dist/esm/vue/adapters/react/hooks/index.d.ts.map +1 -0
- package/dist/esm/vue/adapters/react/hooks/useAdaptiveLoading.d.ts +39 -0
- package/dist/esm/vue/adapters/react/hooks/useAdaptiveLoading.d.ts.map +1 -0
- package/dist/esm/vue/adapters/react/hooks/useIntelligentScroll.d.ts +37 -0
- package/dist/esm/vue/adapters/react/hooks/useIntelligentScroll.d.ts.map +1 -0
- package/dist/esm/vue/adapters/react/hooks/useSmartPagination.d.ts +57 -0
- package/dist/esm/vue/adapters/react/hooks/useSmartPagination.d.ts.map +1 -0
- package/dist/esm/vue/adapters/react/index.d.ts +2 -0
- package/dist/esm/vue/adapters/react/index.d.ts.map +1 -1
- package/dist/esm/vue/core/BatchSizeOptimizer.d.ts +84 -0
- package/dist/esm/vue/core/BatchSizeOptimizer.d.ts.map +1 -0
- package/dist/esm/vue/core/DynamicHeightEngine.d.ts +107 -0
- package/dist/esm/vue/core/DynamicHeightEngine.d.ts.map +1 -0
- package/dist/esm/vue/core/Engine.d.ts +3 -0
- package/dist/esm/vue/core/Engine.d.ts.map +1 -1
- package/dist/esm/vue/core/HeightMeasurementCache.d.ts +92 -0
- package/dist/esm/vue/core/HeightMeasurementCache.d.ts.map +1 -0
- package/dist/esm/vue/core/IntelligentPagination.d.ts +113 -0
- package/dist/esm/vue/core/IntelligentPagination.d.ts.map +1 -0
- package/dist/esm/vue/core/PreemptiveCache.d.ts +83 -0
- package/dist/esm/vue/core/PreemptiveCache.d.ts.map +1 -0
- package/dist/esm/vue/core/PriorityRequestQueue.d.ts +56 -0
- package/dist/esm/vue/core/PriorityRequestQueue.d.ts.map +1 -0
- package/dist/esm/vue/core/RequestDeduplicator.d.ts +35 -0
- package/dist/esm/vue/core/RequestDeduplicator.d.ts.map +1 -0
- package/dist/esm/vue/core/SmartPrefetchAlgorithm.d.ts +63 -0
- package/dist/esm/vue/core/SmartPrefetchAlgorithm.d.ts.map +1 -0
- package/dist/esm/vue/core/VariableHeightManager.d.ts +84 -0
- package/dist/esm/vue/core/VariableHeightManager.d.ts.map +1 -0
- package/dist/esm/vue/index.d.ts +9 -0
- package/dist/esm/vue/index.d.ts.map +1 -1
- package/dist/esm/vue/index.js +377 -0
- package/dist/esm/vue/index.js.map +1 -1
- package/dist/index.d.ts +681 -1
- package/package.json +7 -2
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface SmartInfiniteScrollProps {
|
|
3
|
+
fetchMore: (page: number, limit: number) => Promise<any[]>;
|
|
4
|
+
renderItem: (item: any, index: number) => React.ReactNode;
|
|
5
|
+
initialPageSize?: number;
|
|
6
|
+
minPageSize?: number;
|
|
7
|
+
maxPageSize?: number;
|
|
8
|
+
enableAdaptation?: boolean;
|
|
9
|
+
className?: string;
|
|
10
|
+
style?: React.CSSProperties;
|
|
11
|
+
emptyMessage?: string;
|
|
12
|
+
}
|
|
13
|
+
export declare const SmartInfiniteScroll: React.FC<SmartInfiniteScrollProps>;
|
|
14
|
+
export default SmartInfiniteScroll;
|
|
15
|
+
//# sourceMappingURL=SmartInfiniteScroll.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SmartInfiniteScroll.d.ts","sourceRoot":"","sources":["../../../../src/adapters/react/components/SmartInfiniteScroll.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAIjD,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC3D,UAAU,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC;IAC1D,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAiNlE,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { IntelligentLazyList } from './IntelligentLazyList';
|
|
2
|
+
export type { IntelligentLazyListProps } from './IntelligentLazyList';
|
|
3
|
+
export { AdaptiveScrollView } from './AdaptiveScrollView';
|
|
4
|
+
export type { AdaptiveScrollViewProps } from './AdaptiveScrollView';
|
|
5
|
+
export { SmartInfiniteScroll } from './SmartInfiniteScroll';
|
|
6
|
+
export type { SmartInfiniteScrollProps } from './SmartInfiniteScroll';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/adapters/react/components/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,YAAY,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAEtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,YAAY,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,YAAY,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { useIntelligentScroll } from './useIntelligentScroll';
|
|
2
|
+
export type { UseIntelligentScrollConfig, IntelligentScrollState } from './useIntelligentScroll';
|
|
3
|
+
export { useAdaptiveLoading } from './useAdaptiveLoading';
|
|
4
|
+
export type { UseAdaptiveLoadingConfig, AdaptiveLoadingState } from './useAdaptiveLoading';
|
|
5
|
+
export { useSmartPagination } from './useSmartPagination';
|
|
6
|
+
export type { UseSmartPaginationConfig, SmartPaginationState } from './useSmartPagination';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/adapters/react/hooks/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAEjG,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,YAAY,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE3F,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,YAAY,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export interface UseAdaptiveLoadingConfig {
|
|
2
|
+
initialBatchSize?: number;
|
|
3
|
+
minBatchSize?: number;
|
|
4
|
+
maxBatchSize?: number;
|
|
5
|
+
fetchMore: () => Promise<any[]>;
|
|
6
|
+
enableNetworkAdaptation?: boolean;
|
|
7
|
+
enablePerformanceAdaptation?: boolean;
|
|
8
|
+
}
|
|
9
|
+
export interface AdaptiveLoadingState {
|
|
10
|
+
currentBatchSize: number;
|
|
11
|
+
networkQuality: 'excellent' | 'good' | 'poor' | 'offline';
|
|
12
|
+
performanceScore: number;
|
|
13
|
+
isLoading: boolean;
|
|
14
|
+
loadedItems: number;
|
|
15
|
+
avgLoadTime: number;
|
|
16
|
+
adaptationCount: number;
|
|
17
|
+
}
|
|
18
|
+
export declare const useAdaptiveLoading: (config: UseAdaptiveLoadingConfig) => {
|
|
19
|
+
loadMore: () => Promise<any[]>;
|
|
20
|
+
getCurrentBatchSize: () => number;
|
|
21
|
+
getStats: () => {
|
|
22
|
+
currentBatchSize: number;
|
|
23
|
+
networkQuality: "excellent" | "good" | "poor" | "offline";
|
|
24
|
+
performanceScore: number;
|
|
25
|
+
avgLoadTime: number;
|
|
26
|
+
adaptationCount: number;
|
|
27
|
+
loadedItems: number;
|
|
28
|
+
};
|
|
29
|
+
reset: () => void;
|
|
30
|
+
currentBatchSize: number;
|
|
31
|
+
networkQuality: "excellent" | "good" | "poor" | "offline";
|
|
32
|
+
performanceScore: number;
|
|
33
|
+
isLoading: boolean;
|
|
34
|
+
loadedItems: number;
|
|
35
|
+
avgLoadTime: number;
|
|
36
|
+
adaptationCount: number;
|
|
37
|
+
};
|
|
38
|
+
export default useAdaptiveLoading;
|
|
39
|
+
//# sourceMappingURL=useAdaptiveLoading.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useAdaptiveLoading.d.ts","sourceRoot":"","sources":["../../../../src/adapters/react/hooks/useAdaptiveLoading.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,wBAAwB;IACvC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAChC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,2BAA2B,CAAC,EAAE,OAAO,CAAC;CACvC;AAED,MAAM,WAAW,oBAAoB;IACnC,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAC1D,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,kBAAkB,GAAI,QAAQ,wBAAwB;;;;;;;;;;;;sBAT/C,MAAM;oBACR,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS;sBACvC,MAAM;eACb,OAAO;iBACL,MAAM;iBACN,MAAM;qBACF,MAAM;CAyJxB,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { VisibleRange, FetchMoreCallback } from '../../../core/types';
|
|
2
|
+
export interface UseIntelligentScrollConfig {
|
|
3
|
+
itemHeight?: number;
|
|
4
|
+
viewportHeight?: number;
|
|
5
|
+
bufferSize?: number;
|
|
6
|
+
fetchMore: FetchMoreCallback;
|
|
7
|
+
enablePrefetch?: boolean;
|
|
8
|
+
enableCache?: boolean;
|
|
9
|
+
cacheSize?: number;
|
|
10
|
+
}
|
|
11
|
+
export interface IntelligentScrollState {
|
|
12
|
+
visibleRange: VisibleRange;
|
|
13
|
+
isLoading: boolean;
|
|
14
|
+
scrollVelocity: number;
|
|
15
|
+
scrollDirection: 'up' | 'down' | 'stationary';
|
|
16
|
+
scrollPattern: 'fast-scroll' | 'slow-scroll' | 'paused' | 'oscillating' | 'steady';
|
|
17
|
+
prefetchConfidence: number;
|
|
18
|
+
cacheHitRate: number;
|
|
19
|
+
totalItems: number;
|
|
20
|
+
}
|
|
21
|
+
export declare const useIntelligentScroll: (config: UseIntelligentScrollConfig) => {
|
|
22
|
+
visibleRange: VisibleRange;
|
|
23
|
+
isLoading: boolean;
|
|
24
|
+
scrollVelocity: number;
|
|
25
|
+
scrollDirection: "up" | "down" | "stationary";
|
|
26
|
+
scrollPattern: "fast-scroll" | "slow-scroll" | "paused" | "oscillating" | "steady";
|
|
27
|
+
prefetchConfidence: number;
|
|
28
|
+
cacheHitRate: number;
|
|
29
|
+
totalItems: number;
|
|
30
|
+
setContainerRef: (element: HTMLElement | null) => (() => void) | undefined;
|
|
31
|
+
getCachedData: (index: number) => any;
|
|
32
|
+
cacheData: (index: number, data: any, priority?: "low" | "normal" | "high" | "critical") => void;
|
|
33
|
+
getPaginationState: () => import("../../../core/IntelligentPagination").PaginationState | null;
|
|
34
|
+
refresh: () => void;
|
|
35
|
+
};
|
|
36
|
+
export default useIntelligentScroll;
|
|
37
|
+
//# sourceMappingURL=useIntelligentScroll.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useIntelligentScroll.d.ts","sourceRoot":"","sources":["../../../../src/adapters/react/hooks/useIntelligentScroll.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAEtE,MAAM,WAAW,0BAA0B;IACzC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,iBAAiB,CAAC;IAC7B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,sBAAsB;IACrC,YAAY,EAAE,YAAY,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,IAAI,GAAG,MAAM,GAAG,YAAY,CAAC;IAC9C,aAAa,EAAE,aAAa,GAAG,aAAa,GAAG,QAAQ,GAAG,aAAa,GAAG,QAAQ,CAAC;IACnF,kBAAkB,EAAE,MAAM,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,oBAAoB,GAAI,QAAQ,0BAA0B;;;;;;;;;+BA4GvB,WAAW,GAAG,IAAI;2BAiBtB,MAAM;uBAQV,MAAM,QAAQ,GAAG,aAAY,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU;;;CAiC1G,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
export interface UseSmartPaginationConfig {
|
|
2
|
+
initialPage?: number;
|
|
3
|
+
initialPageSize?: number;
|
|
4
|
+
minPageSize?: number;
|
|
5
|
+
maxPageSize?: number;
|
|
6
|
+
enableAdaptation?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export interface SmartPaginationState {
|
|
9
|
+
currentPage: number;
|
|
10
|
+
pageSize: number;
|
|
11
|
+
totalItems: number;
|
|
12
|
+
totalPages: number;
|
|
13
|
+
hasMore: boolean;
|
|
14
|
+
cursor?: string;
|
|
15
|
+
nextCursor?: string;
|
|
16
|
+
prevCursor?: string;
|
|
17
|
+
avgLoadTime: number;
|
|
18
|
+
isAdapting: boolean;
|
|
19
|
+
}
|
|
20
|
+
export declare const useSmartPagination: (config?: UseSmartPaginationConfig) => {
|
|
21
|
+
nextPage: (loadDataFn?: () => Promise<void>) => Promise<void>;
|
|
22
|
+
prevPage: () => void;
|
|
23
|
+
goToPage: (page: number) => void;
|
|
24
|
+
goToCursor: (cursor: string) => void;
|
|
25
|
+
setTotalItems: (total: number) => void;
|
|
26
|
+
getFetchRange: () => {
|
|
27
|
+
skip: number;
|
|
28
|
+
limit: number;
|
|
29
|
+
};
|
|
30
|
+
getCurrentCursor: () => string | undefined;
|
|
31
|
+
getStats: () => {
|
|
32
|
+
currentPage: number;
|
|
33
|
+
pageSize: number;
|
|
34
|
+
totalItems: number;
|
|
35
|
+
totalPages: number;
|
|
36
|
+
hasMore: boolean;
|
|
37
|
+
avgLoadTime: number;
|
|
38
|
+
currentCursor: string | undefined;
|
|
39
|
+
loadHistory: {
|
|
40
|
+
page: number;
|
|
41
|
+
time: number;
|
|
42
|
+
}[];
|
|
43
|
+
} | null;
|
|
44
|
+
reset: () => void;
|
|
45
|
+
currentPage: number;
|
|
46
|
+
pageSize: number;
|
|
47
|
+
totalItems: number;
|
|
48
|
+
totalPages: number;
|
|
49
|
+
hasMore: boolean;
|
|
50
|
+
cursor?: string;
|
|
51
|
+
nextCursor?: string;
|
|
52
|
+
prevCursor?: string;
|
|
53
|
+
avgLoadTime: number;
|
|
54
|
+
isAdapting: boolean;
|
|
55
|
+
};
|
|
56
|
+
export default useSmartPagination;
|
|
57
|
+
//# sourceMappingURL=useSmartPagination.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSmartPagination.d.ts","sourceRoot":"","sources":["../../../../src/adapters/react/hooks/useSmartPagination.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,wBAAwB;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,kBAAkB,GAAI,SAAQ,wBAA6B;4BAkErB,MAAM,OAAO,CAAC,IAAI,CAAC;;qBAmDhC,MAAM;yBAQF,MAAM;2BAnEJ,MAAM;;;;;;;;;;;;;;;kBAnCN,MAAM;kBAAQ,MAAM;;;;iBAnCjD,MAAM;cACT,MAAM;gBACJ,MAAM;gBACN,MAAM;aACT,OAAO;aACP,MAAM;iBACF,MAAM;iBACN,MAAM;iBACN,MAAM;gBACP,OAAO;CA0LpB,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adapters/react/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adapters/react/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,cAAc,SAAS,CAAC;AAGxB,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Batch Size Optimizer
|
|
3
|
+
* Dynamically adjusts batch size based on scroll speed, network, and performance
|
|
4
|
+
*/
|
|
5
|
+
import { NetworkSpeedDetector } from './NetworkSpeedDetector';
|
|
6
|
+
import { DevicePerformanceMonitor } from './DevicePerformanceMonitor';
|
|
7
|
+
export interface BatchConfig {
|
|
8
|
+
minBatchSize: number;
|
|
9
|
+
maxBatchSize: number;
|
|
10
|
+
baseBatchSize: number;
|
|
11
|
+
scrollSpeedThreshold: number;
|
|
12
|
+
}
|
|
13
|
+
export interface BatchMetrics {
|
|
14
|
+
currentBatchSize: number;
|
|
15
|
+
scrollSpeed: number;
|
|
16
|
+
networkQuality: 'excellent' | 'good' | 'poor' | 'offline';
|
|
17
|
+
performanceScore: number;
|
|
18
|
+
avgRenderTime: number;
|
|
19
|
+
}
|
|
20
|
+
export declare class BatchSizeOptimizer {
|
|
21
|
+
private config;
|
|
22
|
+
private networkDetector;
|
|
23
|
+
private performanceMonitor;
|
|
24
|
+
private currentBatchSize;
|
|
25
|
+
private scrollSpeedHistory;
|
|
26
|
+
private renderTimeHistory;
|
|
27
|
+
private readonly HISTORY_SIZE;
|
|
28
|
+
constructor(config?: Partial<BatchConfig>, networkDetector?: NetworkSpeedDetector, performanceMonitor?: DevicePerformanceMonitor);
|
|
29
|
+
/**
|
|
30
|
+
* Calculate optimal batch size based on all factors
|
|
31
|
+
*/
|
|
32
|
+
calculateOptimalBatchSize(scrollSpeed: number): Promise<number>;
|
|
33
|
+
/**
|
|
34
|
+
* Calculate multiplier based on scroll speed
|
|
35
|
+
*/
|
|
36
|
+
private calculateSpeedMultiplier;
|
|
37
|
+
/**
|
|
38
|
+
* Calculate multiplier based on network quality
|
|
39
|
+
*/
|
|
40
|
+
private calculateNetworkMultiplier;
|
|
41
|
+
/**
|
|
42
|
+
* Calculate multiplier based on device performance
|
|
43
|
+
*/
|
|
44
|
+
private calculatePerformanceMultiplier;
|
|
45
|
+
/**
|
|
46
|
+
* Track scroll speed for averaging
|
|
47
|
+
*/
|
|
48
|
+
private trackScrollSpeed;
|
|
49
|
+
/**
|
|
50
|
+
* Get average scroll speed
|
|
51
|
+
*/
|
|
52
|
+
private getAverageScrollSpeed;
|
|
53
|
+
/**
|
|
54
|
+
* Track render time for performance monitoring
|
|
55
|
+
*/
|
|
56
|
+
trackRenderTime(renderTime: number): void;
|
|
57
|
+
/**
|
|
58
|
+
* Get average render time
|
|
59
|
+
*/
|
|
60
|
+
getAverageRenderTime(): number;
|
|
61
|
+
/**
|
|
62
|
+
* Get current batch metrics
|
|
63
|
+
*/
|
|
64
|
+
getMetrics(): BatchMetrics;
|
|
65
|
+
/**
|
|
66
|
+
* Get current batch size
|
|
67
|
+
*/
|
|
68
|
+
getCurrentBatchSize(): number;
|
|
69
|
+
/**
|
|
70
|
+
* Reset optimizer
|
|
71
|
+
*/
|
|
72
|
+
reset(): void;
|
|
73
|
+
/**
|
|
74
|
+
* Get optimization statistics
|
|
75
|
+
*/
|
|
76
|
+
getStats(): {
|
|
77
|
+
avgScrollSpeed: number;
|
|
78
|
+
avgRenderTime: number;
|
|
79
|
+
currentBatchSize: number;
|
|
80
|
+
totalAdjustments: number;
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
export default BatchSizeOptimizer;
|
|
84
|
+
//# sourceMappingURL=BatchSizeOptimizer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BatchSizeOptimizer.d.ts","sourceRoot":"","sources":["../../src/core/BatchSizeOptimizer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,MAAM,WAAW,WAAW;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,YAAY;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAC1D,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,kBAAkB,CAA2B;IAErD,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,kBAAkB,CAAgB;IAC1C,OAAO,CAAC,iBAAiB,CAAgB;IACzC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAM;gBAGjC,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,EAC7B,eAAe,CAAC,EAAE,oBAAoB,EACtC,kBAAkB,CAAC,EAAE,wBAAwB;IAc/C;;OAEG;IACG,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAiCrE;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAehC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAelC;;OAEG;IACH,OAAO,CAAC,8BAA8B;IAWtC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAOxB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAM7B;;OAEG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAOzC;;OAEG;IACH,oBAAoB,IAAI,MAAM;IAM9B;;OAEG;IACH,UAAU,IAAI,YAAY;IAU1B;;OAEG;IACH,mBAAmB,IAAI,MAAM;IAI7B;;OAEG;IACH,KAAK,IAAI,IAAI;IAMb;;OAEG;IACH,QAAQ,IAAI;QACV,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,EAAE,MAAM,CAAC;QACtB,gBAAgB,EAAE,MAAM,CAAC;QACzB,gBAAgB,EAAE,MAAM,CAAC;KAC1B;CAQF;AAED,eAAe,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dynamic Height Engine
|
|
3
|
+
* Core engine for variable height virtual scrolling
|
|
4
|
+
*/
|
|
5
|
+
import { VisibleRange, EngineState, EngineConfig } from './types';
|
|
6
|
+
export interface DynamicHeightConfig extends EngineConfig {
|
|
7
|
+
estimatedItemHeight: number;
|
|
8
|
+
minItemHeight: number;
|
|
9
|
+
maxItemHeight: number;
|
|
10
|
+
heightBufferSize: number;
|
|
11
|
+
}
|
|
12
|
+
export interface DynamicHeightState extends EngineState {
|
|
13
|
+
totalContentHeight: number;
|
|
14
|
+
measuredItems: number;
|
|
15
|
+
estimatedItems: number;
|
|
16
|
+
}
|
|
17
|
+
export declare class DynamicHeightEngine {
|
|
18
|
+
private config;
|
|
19
|
+
private variableHeightManager;
|
|
20
|
+
private heightCache;
|
|
21
|
+
private state;
|
|
22
|
+
private containerElement;
|
|
23
|
+
private itemElements;
|
|
24
|
+
constructor(config?: Partial<DynamicHeightConfig>);
|
|
25
|
+
/**
|
|
26
|
+
* Initialize with container element
|
|
27
|
+
*/
|
|
28
|
+
init(container: HTMLElement): void;
|
|
29
|
+
/**
|
|
30
|
+
* Setup scroll listener
|
|
31
|
+
*/
|
|
32
|
+
private setupScrollListener;
|
|
33
|
+
/**
|
|
34
|
+
* Handle scroll event
|
|
35
|
+
*/
|
|
36
|
+
private onScroll;
|
|
37
|
+
/**
|
|
38
|
+
* Update visible range based on scroll position
|
|
39
|
+
*/
|
|
40
|
+
private updateVisibleRange;
|
|
41
|
+
/**
|
|
42
|
+
* Measure item height from DOM element
|
|
43
|
+
*/
|
|
44
|
+
measureItem(index: number, element: HTMLElement): number;
|
|
45
|
+
/**
|
|
46
|
+
* Called when item height is measured
|
|
47
|
+
*/
|
|
48
|
+
private onHeightMeasured;
|
|
49
|
+
/**
|
|
50
|
+
* Get items to render for current viewport
|
|
51
|
+
*/
|
|
52
|
+
getItemsToRender(): {
|
|
53
|
+
items: Array<{
|
|
54
|
+
index: number;
|
|
55
|
+
offset: number;
|
|
56
|
+
height: number;
|
|
57
|
+
}>;
|
|
58
|
+
totalHeight: number;
|
|
59
|
+
visibleRange: VisibleRange;
|
|
60
|
+
};
|
|
61
|
+
/**
|
|
62
|
+
* Scroll to specific item index
|
|
63
|
+
*/
|
|
64
|
+
scrollToIndex(index: number): void;
|
|
65
|
+
/**
|
|
66
|
+
* Set total number of items
|
|
67
|
+
*/
|
|
68
|
+
setTotalItems(total: number): void;
|
|
69
|
+
/**
|
|
70
|
+
* Get current state
|
|
71
|
+
*/
|
|
72
|
+
getState(): DynamicHeightState;
|
|
73
|
+
/**
|
|
74
|
+
* Get cache statistics
|
|
75
|
+
*/
|
|
76
|
+
getCacheStats(): import("./HeightMeasurementCache").HeightCacheStats;
|
|
77
|
+
/**
|
|
78
|
+
* Clear cache for range
|
|
79
|
+
*/
|
|
80
|
+
clearCacheRange(startIndex: number, endIndex: number): void;
|
|
81
|
+
/**
|
|
82
|
+
* Clear entire cache
|
|
83
|
+
*/
|
|
84
|
+
clearCache(): void;
|
|
85
|
+
/**
|
|
86
|
+
* Cleanup
|
|
87
|
+
*/
|
|
88
|
+
cleanup(): void;
|
|
89
|
+
/**
|
|
90
|
+
* Update viewport height
|
|
91
|
+
*/
|
|
92
|
+
updateViewportHeight(height: number): void;
|
|
93
|
+
/**
|
|
94
|
+
* Get item offset for styling
|
|
95
|
+
*/
|
|
96
|
+
getItemOffset(index: number): number;
|
|
97
|
+
/**
|
|
98
|
+
* Get item height
|
|
99
|
+
*/
|
|
100
|
+
getItemHeight(index: number): number;
|
|
101
|
+
/**
|
|
102
|
+
* Check if item is measured
|
|
103
|
+
*/
|
|
104
|
+
isItemMeasured(index: number): boolean;
|
|
105
|
+
}
|
|
106
|
+
export default DynamicHeightEngine;
|
|
107
|
+
//# sourceMappingURL=DynamicHeightEngine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DynamicHeightEngine.d.ts","sourceRoot":"","sources":["../../src/core/DynamicHeightEngine.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAElE,MAAM,WAAW,mBAAoB,SAAQ,YAAY;IACvD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACrD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,qBAAqB,CAAwB;IACrD,OAAO,CAAC,WAAW,CAAyB;IAE5C,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,gBAAgB,CAA4B;IACpD,OAAO,CAAC,YAAY,CAAuC;gBAE/C,MAAM,GAAE,OAAO,CAAC,mBAAmB,CAAM;IA+BrD;;OAEG;IACH,IAAI,CAAC,SAAS,EAAE,WAAW,GAAG,IAAI;IAKlC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAQ3B;;OAEG;IACH,OAAO,CAAC,QAAQ;IAUhB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAkB1B;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,MAAM;IAkBxD;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAKxB;;OAEG;IACH,gBAAgB,IAAI;QAClB,KAAK,EAAE,KAAK,CAAC;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAChE,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,YAAY,CAAC;KAC5B;IAqBD;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAWlC;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMlC;;OAEG;IACH,QAAQ,IAAI,kBAAkB;IAI9B;;OAEG;IACH,aAAa;IAIb;;OAEG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAS3D;;OAEG;IACH,UAAU,IAAI,IAAI;IAKlB;;OAEG;IACH,OAAO,IAAI,IAAI;IAOf;;OAEG;IACH,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAK1C;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIpC;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIpC;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;CAGvC;AAED,eAAe,mBAAmB,CAAC"}
|
|
@@ -12,6 +12,9 @@ export declare class Engine {
|
|
|
12
12
|
private performanceOptimizer;
|
|
13
13
|
private memoryManager;
|
|
14
14
|
private gpuAccelerator;
|
|
15
|
+
private batchSizeOptimizer;
|
|
16
|
+
private requestDeduplicator;
|
|
17
|
+
private priorityRequestQueue;
|
|
15
18
|
private state;
|
|
16
19
|
private fetchMoreCallback;
|
|
17
20
|
private totalItems;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Engine.d.ts","sourceRoot":"","sources":["../../src/core/Engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"Engine.d.ts","sourceRoot":"","sources":["../../src/core/Engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAgBrF,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,yBAAyB,CAA4B;IAC7D,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,2BAA2B,CAA8B;IACjE,OAAO,CAAC,wBAAwB,CAA2B;IAC3D,OAAO,CAAC,wBAAwB,CAA2B;IAC3D,OAAO,CAAC,oBAAoB,CAAuB;IACnD,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,mBAAmB,CAAsB;IACjD,OAAO,CAAC,oBAAoB,CAAuB;IAEnD,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,iBAAiB,CAAkC;IAC3D,OAAO,CAAC,UAAU,CAAS;gBAEf,MAAM,EAAE,YAAY;IAoChC;;OAEG;IACG,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqC5D;;OAEG;IACH,eAAe,IAAI,YAAY;IAI/B;;OAEG;IACG,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC;IAsBzC;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBhC;;OAEG;IACH,oBAAoB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAIvD;;OAEG;IACH,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIrC;;OAEG;IACH,QAAQ,IAAI,WAAW;IAIvB;;OAEG;IACH,gBAAgB,CAAC,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAQlE;;OAEG;IACH,OAAO,IAAI,IAAI;CAQhB"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Height Measurement Cache
|
|
3
|
+
* Dynamically measures and caches item heights for variable height support
|
|
4
|
+
*/
|
|
5
|
+
export interface HeightCacheEntry {
|
|
6
|
+
height: number;
|
|
7
|
+
measured: boolean;
|
|
8
|
+
timestamp: number;
|
|
9
|
+
}
|
|
10
|
+
export interface HeightCacheStats {
|
|
11
|
+
totalItems: number;
|
|
12
|
+
measuredItems: number;
|
|
13
|
+
estimatedItems: number;
|
|
14
|
+
cacheSize: number;
|
|
15
|
+
hitRate: number;
|
|
16
|
+
}
|
|
17
|
+
export declare class HeightMeasurementCache {
|
|
18
|
+
private heightMap;
|
|
19
|
+
private offsetMap;
|
|
20
|
+
private estimatedHeight;
|
|
21
|
+
private totalHeight;
|
|
22
|
+
private accessCount;
|
|
23
|
+
private hitCount;
|
|
24
|
+
private readonly DEFAULT_TTL;
|
|
25
|
+
constructor(estimatedHeight?: number);
|
|
26
|
+
/**
|
|
27
|
+
* Measure and cache height for an item
|
|
28
|
+
*/
|
|
29
|
+
measureHeight(index: number, element: HTMLElement): number;
|
|
30
|
+
/**
|
|
31
|
+
* Get height for an item (measured or estimated)
|
|
32
|
+
*/
|
|
33
|
+
getHeight(index: number): number;
|
|
34
|
+
/**
|
|
35
|
+
* Get offset (cumulative height) for an item
|
|
36
|
+
*/
|
|
37
|
+
getOffset(index: number): number;
|
|
38
|
+
/**
|
|
39
|
+
* Check if item height is measured
|
|
40
|
+
*/
|
|
41
|
+
isMeasured(index: number): boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Mark item as needing remeasurement
|
|
44
|
+
*/
|
|
45
|
+
invalidate(index: number): void;
|
|
46
|
+
/**
|
|
47
|
+
* Clear specific item from cache
|
|
48
|
+
*/
|
|
49
|
+
clear(index: number): void;
|
|
50
|
+
/**
|
|
51
|
+
* Clear entire cache
|
|
52
|
+
*/
|
|
53
|
+
clearAll(): void;
|
|
54
|
+
/**
|
|
55
|
+
* Recalculate all offsets
|
|
56
|
+
*/
|
|
57
|
+
private recalculateOffsets;
|
|
58
|
+
/**
|
|
59
|
+
* Get total height of all items
|
|
60
|
+
*/
|
|
61
|
+
getTotalHeight(totalItems: number): number;
|
|
62
|
+
/**
|
|
63
|
+
* Find item index at a specific scroll position
|
|
64
|
+
*/
|
|
65
|
+
findIndexAtPosition(position: number, totalItems: number): number;
|
|
66
|
+
/**
|
|
67
|
+
* Get cache statistics
|
|
68
|
+
*/
|
|
69
|
+
getStats(totalItems: number): HeightCacheStats;
|
|
70
|
+
/**
|
|
71
|
+
* Update estimated height
|
|
72
|
+
*/
|
|
73
|
+
updateEstimatedHeight(height: number): void;
|
|
74
|
+
/**
|
|
75
|
+
* Get estimated height
|
|
76
|
+
*/
|
|
77
|
+
getEstimatedHeight(): number;
|
|
78
|
+
/**
|
|
79
|
+
* Cleanup old entries (older than TTL)
|
|
80
|
+
*/
|
|
81
|
+
cleanup(ttl?: number): void;
|
|
82
|
+
/**
|
|
83
|
+
* Get all measured heights
|
|
84
|
+
*/
|
|
85
|
+
getAllHeights(): Map<number, number>;
|
|
86
|
+
/**
|
|
87
|
+
* Set heights in bulk (for initial data load)
|
|
88
|
+
*/
|
|
89
|
+
setHeightsBulk(heights: Map<number, number>): void;
|
|
90
|
+
}
|
|
91
|
+
export default HeightMeasurementCache;
|
|
92
|
+
//# sourceMappingURL=HeightMeasurementCache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HeightMeasurementCache.d.ts","sourceRoot":"","sources":["../../src/core/HeightMeasurementCache.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,sBAAsB;IACjC,OAAO,CAAC,SAAS,CAA4C;IAC7D,OAAO,CAAC,SAAS,CAAkC;IACnD,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAiB;gBAEjC,eAAe,GAAE,MAAY;IAIzC;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,MAAM;IAe1D;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAchC;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAKhC;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAIlC;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAO/B;;OAEG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK1B;;OAEG;IACH,QAAQ,IAAI,IAAI;IAQhB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAqB1B;;OAEG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAc1C;;OAEG;IACH,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;IAoBjE;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB;IAa9C;;OAEG;IACH,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI3C;;OAEG;IACH,kBAAkB,IAAI,MAAM;IAI5B;;OAEG;IACH,OAAO,CAAC,GAAG,GAAE,MAAyB,GAAG,IAAI;IAa7C;;OAEG;IACH,aAAa,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAQpC;;OAEG;IACH,cAAc,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;CAUnD;AAED,eAAe,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Intelligent Pagination
|
|
3
|
+
* Adaptive page size with cursor-based pagination
|
|
4
|
+
*/
|
|
5
|
+
export interface PaginationState {
|
|
6
|
+
currentPage: number;
|
|
7
|
+
pageSize: number;
|
|
8
|
+
totalItems: number;
|
|
9
|
+
totalPages: number;
|
|
10
|
+
hasMore: boolean;
|
|
11
|
+
cursor?: string;
|
|
12
|
+
nextCursor?: string;
|
|
13
|
+
prevCursor?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface CursorData {
|
|
16
|
+
page: number;
|
|
17
|
+
limit: number;
|
|
18
|
+
timestamp: number;
|
|
19
|
+
checksum?: string;
|
|
20
|
+
}
|
|
21
|
+
export declare class IntelligentPagination {
|
|
22
|
+
private currentPage;
|
|
23
|
+
private basePageSize;
|
|
24
|
+
private adaptivePageSize;
|
|
25
|
+
private totalItems;
|
|
26
|
+
private loadHistory;
|
|
27
|
+
private readonly MIN_PAGE_SIZE;
|
|
28
|
+
private readonly MAX_PAGE_SIZE;
|
|
29
|
+
/**
|
|
30
|
+
* Get current pagination state
|
|
31
|
+
*/
|
|
32
|
+
getState(): PaginationState;
|
|
33
|
+
/**
|
|
34
|
+
* Set total items
|
|
35
|
+
*/
|
|
36
|
+
setTotalItems(total: number): void;
|
|
37
|
+
/**
|
|
38
|
+
* Go to next page
|
|
39
|
+
*/
|
|
40
|
+
nextPage(): PaginationState;
|
|
41
|
+
/**
|
|
42
|
+
* Go to previous page
|
|
43
|
+
*/
|
|
44
|
+
prevPage(): PaginationState;
|
|
45
|
+
/**
|
|
46
|
+
* Go to specific page
|
|
47
|
+
*/
|
|
48
|
+
goToPage(page: number): PaginationState;
|
|
49
|
+
/**
|
|
50
|
+
* Record load time for adaptive sizing
|
|
51
|
+
*/
|
|
52
|
+
recordLoadTime(page: number, loadTimeMs: number): void;
|
|
53
|
+
/**
|
|
54
|
+
* Adapt page size based on performance
|
|
55
|
+
*/
|
|
56
|
+
private adaptPageSize;
|
|
57
|
+
/**
|
|
58
|
+
* Create cursor for page
|
|
59
|
+
*/
|
|
60
|
+
createCursor(page: number): string;
|
|
61
|
+
/**
|
|
62
|
+
* Decode cursor
|
|
63
|
+
*/
|
|
64
|
+
decodeCursor(cursor: string): CursorData | null;
|
|
65
|
+
/**
|
|
66
|
+
* Go to page from cursor
|
|
67
|
+
*/
|
|
68
|
+
goToCursor(cursor: string): PaginationState;
|
|
69
|
+
/**
|
|
70
|
+
* Calculate checksum for cursor validation
|
|
71
|
+
*/
|
|
72
|
+
private calculateChecksum;
|
|
73
|
+
/**
|
|
74
|
+
* Validate cursor checksum
|
|
75
|
+
*/
|
|
76
|
+
private validateChecksum;
|
|
77
|
+
/**
|
|
78
|
+
* Get items to fetch for current page
|
|
79
|
+
*/
|
|
80
|
+
getFetchRange(): {
|
|
81
|
+
skip: number;
|
|
82
|
+
limit: number;
|
|
83
|
+
};
|
|
84
|
+
/**
|
|
85
|
+
* Reset pagination
|
|
86
|
+
*/
|
|
87
|
+
reset(): void;
|
|
88
|
+
/**
|
|
89
|
+
* Get load history for analytics
|
|
90
|
+
*/
|
|
91
|
+
getLoadHistory(): {
|
|
92
|
+
page: number;
|
|
93
|
+
loadTime: number;
|
|
94
|
+
}[];
|
|
95
|
+
/**
|
|
96
|
+
* Get average load time
|
|
97
|
+
*/
|
|
98
|
+
getAverageLoadTime(): number;
|
|
99
|
+
/**
|
|
100
|
+
* Set base page size
|
|
101
|
+
*/
|
|
102
|
+
setBasePageSize(size: number): void;
|
|
103
|
+
/**
|
|
104
|
+
* Get current page size
|
|
105
|
+
*/
|
|
106
|
+
getPageSize(): number;
|
|
107
|
+
/**
|
|
108
|
+
* Get current page number
|
|
109
|
+
*/
|
|
110
|
+
getCurrentPage(): number;
|
|
111
|
+
}
|
|
112
|
+
export default IntelligentPagination;
|
|
113
|
+
//# sourceMappingURL=IntelligentPagination.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IntelligentPagination.d.ts","sourceRoot":"","sources":["../../src/core/IntelligentPagination.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,qBAAqB;IAChC,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,gBAAgB,CAAc;IACtC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,WAAW,CAA4C;IAC/D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAM;IACpC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAO;IAErC;;OAEG;IACH,QAAQ,IAAI,eAAe;IAgB3B;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIlC;;OAEG;IACH,QAAQ,IAAI,eAAe;IAQ3B;;OAEG;IACH,QAAQ,IAAI,eAAe;IAO3B;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe;IAMvC;;OAEG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAYtD;;OAEG;IACH,OAAO,CAAC,aAAa;IAsBrB;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAalC;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IAe/C;;OAEG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe;IAW3C;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAWzB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAMxB;;OAEG;IACH,aAAa,IAAI;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;IAOhD;;OAEG;IACH,KAAK,IAAI,IAAI;IAMb;;OAEG;IACH,cAAc,IAAI;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EAAE;IAItD;;OAEG;IACH,kBAAkB,IAAI,MAAM;IAK5B;;OAEG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAKnC;;OAEG;IACH,WAAW,IAAI,MAAM;IAIrB;;OAEG;IACH,cAAc,IAAI,MAAM;CAGzB;AAED,eAAe,qBAAqB,CAAC"}
|