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,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"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Preemptive Caching
|
|
3
|
+
* Caches data before it's needed based on predictions
|
|
4
|
+
*/
|
|
5
|
+
export interface CacheEntry<T> {
|
|
6
|
+
data: T;
|
|
7
|
+
timestamp: number;
|
|
8
|
+
priority: 'low' | 'normal' | 'high' | 'critical';
|
|
9
|
+
accessCount: number;
|
|
10
|
+
expiry: number;
|
|
11
|
+
}
|
|
12
|
+
export interface CacheConfig {
|
|
13
|
+
maxSize: number;
|
|
14
|
+
defaultTTL: number;
|
|
15
|
+
cleanupThreshold: number;
|
|
16
|
+
}
|
|
17
|
+
export declare class PreemptiveCache<T> {
|
|
18
|
+
private cache;
|
|
19
|
+
private config;
|
|
20
|
+
private accessHistory;
|
|
21
|
+
constructor(config?: Partial<CacheConfig>);
|
|
22
|
+
/**
|
|
23
|
+
* Preemptively cache data with priority
|
|
24
|
+
*/
|
|
25
|
+
preemptiveCache(index: number, data: T, priority?: 'low' | 'normal' | 'high' | 'critical'): void;
|
|
26
|
+
/**
|
|
27
|
+
* Get cached data
|
|
28
|
+
*/
|
|
29
|
+
get(index: number): T | null;
|
|
30
|
+
/**
|
|
31
|
+
* Check if data is cached
|
|
32
|
+
*/
|
|
33
|
+
has(index: number): boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Get cached data for range
|
|
36
|
+
*/
|
|
37
|
+
getRange(startIndex: number, endIndex: number): T[];
|
|
38
|
+
/**
|
|
39
|
+
* Delete cached data
|
|
40
|
+
*/
|
|
41
|
+
delete(index: number): boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Clear cache
|
|
44
|
+
*/
|
|
45
|
+
clear(): void;
|
|
46
|
+
/**
|
|
47
|
+
* Cleanup old/low-priority entries
|
|
48
|
+
*/
|
|
49
|
+
cleanup(): void;
|
|
50
|
+
/**
|
|
51
|
+
* Track access for analytics
|
|
52
|
+
*/
|
|
53
|
+
private trackAccess;
|
|
54
|
+
/**
|
|
55
|
+
* Get cache statistics
|
|
56
|
+
*/
|
|
57
|
+
getStats(): {
|
|
58
|
+
size: number;
|
|
59
|
+
maxSize: number;
|
|
60
|
+
hitRate: number;
|
|
61
|
+
avgAccessCount: number;
|
|
62
|
+
byPriority: {
|
|
63
|
+
critical: number;
|
|
64
|
+
high: number;
|
|
65
|
+
normal: number;
|
|
66
|
+
low: number;
|
|
67
|
+
};
|
|
68
|
+
};
|
|
69
|
+
/**
|
|
70
|
+
* Get all cached indices
|
|
71
|
+
*/
|
|
72
|
+
getCachedIndices(): number[];
|
|
73
|
+
/**
|
|
74
|
+
* Preemptively cache range
|
|
75
|
+
*/
|
|
76
|
+
cacheRange(startIndex: number, endIndex: number, dataFetcher: (index: number) => T, priority?: 'low' | 'normal' | 'high' | 'critical'): void;
|
|
77
|
+
/**
|
|
78
|
+
* Get memory usage estimate
|
|
79
|
+
*/
|
|
80
|
+
getMemoryUsage(): number;
|
|
81
|
+
}
|
|
82
|
+
export default PreemptiveCache;
|
|
83
|
+
//# sourceMappingURL=PreemptiveCache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PreemptiveCache.d.ts","sourceRoot":"","sources":["../../src/core/PreemptiveCache.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,UAAU,CAAC,CAAC;IAC3B,IAAI,EAAE,CAAC,CAAC;IACR,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IACjD,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,qBAAa,eAAe,CAAC,CAAC;IAC5B,OAAO,CAAC,KAAK,CAAyC;IACtD,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,aAAa,CAAgB;gBAEzB,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC;IAQzC;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,GAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAqB,GAAG,IAAI;IAiB1G;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI;IAoB5B;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAa3B;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,EAAE;IAanD;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAI9B;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,OAAO,IAAI,IAAI;IA+Bf;;OAEG;IACH,OAAO,CAAC,WAAW;IAOnB;;OAEG;IACH,QAAQ,IAAI;QACV,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,EAAE,MAAM,CAAC;QACvB,UAAU,EAAE;YACV,QAAQ,EAAE,MAAM,CAAC;YACjB,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,MAAM,CAAC;YACf,GAAG,EAAE,MAAM,CAAC;SACb,CAAC;KACH;IAyBD;;OAEG;IACH,gBAAgB,IAAI,MAAM,EAAE;IAI5B;;OAEG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,EAAE,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,GAAG,IAAI;IAS5I;;OAEG;IACH,cAAc,IAAI,MAAM;CAIzB;AAED,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Priority-based Request Queue
|
|
3
|
+
* Processes high-priority requests first
|
|
4
|
+
*/
|
|
5
|
+
export declare enum Priority {
|
|
6
|
+
LOW = 0,
|
|
7
|
+
NORMAL = 1,
|
|
8
|
+
HIGH = 2,
|
|
9
|
+
CRITICAL = 3
|
|
10
|
+
}
|
|
11
|
+
export declare class PriorityRequestQueue {
|
|
12
|
+
private queues;
|
|
13
|
+
private processing;
|
|
14
|
+
private maxConcurrent;
|
|
15
|
+
private activeRequests;
|
|
16
|
+
constructor(maxConcurrent?: number);
|
|
17
|
+
/**
|
|
18
|
+
* Add request with priority
|
|
19
|
+
*/
|
|
20
|
+
add<T>(requestFn: () => Promise<T>, priority?: Priority): Promise<T>;
|
|
21
|
+
/**
|
|
22
|
+
* Process queue by priority
|
|
23
|
+
*/
|
|
24
|
+
private processQueue;
|
|
25
|
+
/**
|
|
26
|
+
* Get next request by priority
|
|
27
|
+
*/
|
|
28
|
+
private getNextRequest;
|
|
29
|
+
/**
|
|
30
|
+
* Check if there are pending requests
|
|
31
|
+
*/
|
|
32
|
+
private hasPendingRequests;
|
|
33
|
+
/**
|
|
34
|
+
* Get queue statistics
|
|
35
|
+
*/
|
|
36
|
+
getStats(): {
|
|
37
|
+
totalPending: number;
|
|
38
|
+
byPriority: {
|
|
39
|
+
critical: number;
|
|
40
|
+
high: number;
|
|
41
|
+
normal: number;
|
|
42
|
+
low: number;
|
|
43
|
+
};
|
|
44
|
+
activeRequests: number;
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* Clear all queues
|
|
48
|
+
*/
|
|
49
|
+
clear(): void;
|
|
50
|
+
/**
|
|
51
|
+
* Clear specific priority queue
|
|
52
|
+
*/
|
|
53
|
+
clearPriority(priority: Priority): void;
|
|
54
|
+
}
|
|
55
|
+
export default PriorityRequestQueue;
|
|
56
|
+
//# sourceMappingURL=PriorityRequestQueue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PriorityRequestQueue.d.ts","sourceRoot":"","sources":["../../src/core/PriorityRequestQueue.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,oBAAY,QAAQ;IAClB,GAAG,IAAI;IACP,MAAM,IAAI;IACV,IAAI,IAAI;IACR,QAAQ,IAAI;CACb;AAUD,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,MAAM,CAA6C;IAC3D,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,cAAc,CAAa;gBAEvB,aAAa,GAAE,MAAU;IAWrC;;OAEG;IACH,GAAG,CAAC,CAAC,EACH,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC3B,QAAQ,GAAE,QAA0B,GACnC,OAAO,CAAC,CAAC,CAAC;IAsBb;;OAEG;YACW,YAAY;IA0B1B;;OAEG;IACH,OAAO,CAAC,cAAc;IAWtB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAO1B;;OAEG;IACH,QAAQ,IAAI;QACV,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE;YACV,QAAQ,EAAE,MAAM,CAAC;YACjB,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,MAAM,CAAC;YACf,GAAG,EAAE,MAAM,CAAC;SACb,CAAC;QACF,cAAc,EAAE,MAAM,CAAC;KACxB;IAeD;;OAEG;IACH,KAAK,IAAI,IAAI;IAMb;;OAEG;IACH,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;CAMxC;AAED,eAAe,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Request Deduplication
|
|
3
|
+
* Prevents duplicate requests from being sent
|
|
4
|
+
*/
|
|
5
|
+
export declare class RequestDeduplicator {
|
|
6
|
+
private pendingRequests;
|
|
7
|
+
private requestCount;
|
|
8
|
+
/**
|
|
9
|
+
* Execute request with deduplication
|
|
10
|
+
* If same request is already pending, return existing promise
|
|
11
|
+
*/
|
|
12
|
+
request<T>(key: string, requestFn: () => Promise<T>, ttl?: number): Promise<T>;
|
|
13
|
+
/**
|
|
14
|
+
* Clear specific request
|
|
15
|
+
*/
|
|
16
|
+
clear(key: string): void;
|
|
17
|
+
/**
|
|
18
|
+
* Clear all requests
|
|
19
|
+
*/
|
|
20
|
+
clearAll(): void;
|
|
21
|
+
/**
|
|
22
|
+
* Get pending request count
|
|
23
|
+
*/
|
|
24
|
+
getPendingCount(): number;
|
|
25
|
+
/**
|
|
26
|
+
* Get request statistics
|
|
27
|
+
*/
|
|
28
|
+
getStats(): {
|
|
29
|
+
pending: number;
|
|
30
|
+
totalRequests: number;
|
|
31
|
+
deduplicationRate: number;
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
export default RequestDeduplicator;
|
|
35
|
+
//# sourceMappingURL=RequestDeduplicator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RequestDeduplicator.d.ts","sourceRoot":"","sources":["../../src/core/RequestDeduplicator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,eAAe,CAAwC;IAC/D,OAAO,CAAC,YAAY,CAAkC;IAEtD;;;OAGG;IACG,OAAO,CAAC,CAAC,EACb,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC3B,GAAG,GAAE,MAAa,GACjB,OAAO,CAAC,CAAC,CAAC;IAqCb;;OAEG;IACH,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAKxB;;OAEG;IACH,QAAQ,IAAI,IAAI;IAKhB;;OAEG;IACH,eAAe,IAAI,MAAM;IAIzB;;OAEG;IACH,QAAQ,IAAI;QACV,OAAO,EAAE,MAAM,CAAC;QAChB,aAAa,EAAE,MAAM,CAAC;QACtB,iBAAiB,EAAE,MAAM,CAAC;KAC3B;CAUF;AAED,eAAe,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Smart Prefetch Algorithm
|
|
3
|
+
* Recognizes scroll patterns and predicts data loading needs
|
|
4
|
+
*/
|
|
5
|
+
export interface ScrollPattern {
|
|
6
|
+
type: 'fast-scroll' | 'slow-scroll' | 'paused' | 'oscillating' | 'steady';
|
|
7
|
+
velocity: number;
|
|
8
|
+
acceleration: number;
|
|
9
|
+
direction: 'up' | 'down' | 'stationary';
|
|
10
|
+
confidence: number;
|
|
11
|
+
}
|
|
12
|
+
export interface PrefetchPrediction {
|
|
13
|
+
shouldPrefetch: boolean;
|
|
14
|
+
prefetchDistance: number;
|
|
15
|
+
batchSize: number;
|
|
16
|
+
priority: 'low' | 'normal' | 'high' | 'critical';
|
|
17
|
+
confidence: number;
|
|
18
|
+
}
|
|
19
|
+
export declare class SmartPrefetchAlgorithm {
|
|
20
|
+
private velocityHistory;
|
|
21
|
+
private directionHistory;
|
|
22
|
+
private readonly HISTORY_SIZE;
|
|
23
|
+
private lastPrefetchTime;
|
|
24
|
+
private prefetchCooldown;
|
|
25
|
+
/**
|
|
26
|
+
* Analyze scroll pattern
|
|
27
|
+
*/
|
|
28
|
+
analyzeScrollPattern(velocity: number, acceleration: number, direction: 'up' | 'down' | 'stationary'): ScrollPattern;
|
|
29
|
+
/**
|
|
30
|
+
* Predict prefetch needs based on scroll pattern
|
|
31
|
+
*/
|
|
32
|
+
predictPrefetchNeeds(pattern: ScrollPattern, visibleEnd: number, totalLoaded: number): PrefetchPrediction;
|
|
33
|
+
/**
|
|
34
|
+
* Track velocity history
|
|
35
|
+
*/
|
|
36
|
+
private trackVelocity;
|
|
37
|
+
/**
|
|
38
|
+
* Track direction history
|
|
39
|
+
*/
|
|
40
|
+
private trackDirection;
|
|
41
|
+
/**
|
|
42
|
+
* Get average velocity
|
|
43
|
+
*/
|
|
44
|
+
private getAverageVelocity;
|
|
45
|
+
/**
|
|
46
|
+
* Get velocity variance
|
|
47
|
+
*/
|
|
48
|
+
private getVelocityVariance;
|
|
49
|
+
/**
|
|
50
|
+
* Count direction changes
|
|
51
|
+
*/
|
|
52
|
+
private countDirectionChanges;
|
|
53
|
+
/**
|
|
54
|
+
* Reset history
|
|
55
|
+
*/
|
|
56
|
+
reset(): void;
|
|
57
|
+
/**
|
|
58
|
+
* Get prediction confidence
|
|
59
|
+
*/
|
|
60
|
+
getConfidence(): number;
|
|
61
|
+
}
|
|
62
|
+
export default SmartPrefetchAlgorithm;
|
|
63
|
+
//# sourceMappingURL=SmartPrefetchAlgorithm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SmartPrefetchAlgorithm.d.ts","sourceRoot":"","sources":["../../src/core/SmartPrefetchAlgorithm.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,aAAa,GAAG,aAAa,GAAG,QAAQ,GAAG,aAAa,GAAG,QAAQ,CAAC;IAC1E,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,IAAI,GAAG,MAAM,GAAG,YAAY,CAAC;IACxC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IACjD,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,sBAAsB;IACjC,OAAO,CAAC,eAAe,CAAgB;IACvC,OAAO,CAAC,gBAAgB,CAAwC;IAChE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAM;IACnC,OAAO,CAAC,gBAAgB,CAAa;IACrC,OAAO,CAAC,gBAAgB,CAAe;IAEvC;;OAEG;IACH,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,GAAG,MAAM,GAAG,YAAY,GAAG,aAAa;IAwDpH;;OAEG;IACH,oBAAoB,CAAC,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,kBAAkB;IAqFzG;;OAEG;IACH,OAAO,CAAC,aAAa;IAOrB;;OAEG;IACH,OAAO,CAAC,cAAc;IAOtB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAM1B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAQ3B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAa7B;;OAEG;IACH,KAAK,IAAI,IAAI;IAMb;;OAEG;IACH,aAAa,IAAI,MAAM;CAIxB;AAED,eAAe,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Variable Height Manager
|
|
3
|
+
* Manages variable height items with efficient position calculations
|
|
4
|
+
*/
|
|
5
|
+
import { VisibleRange } from './types';
|
|
6
|
+
export interface VariableHeightConfig {
|
|
7
|
+
estimatedHeight: number;
|
|
8
|
+
minHeight: number;
|
|
9
|
+
maxHeight: number;
|
|
10
|
+
bufferSize: number;
|
|
11
|
+
}
|
|
12
|
+
export interface ItemPosition {
|
|
13
|
+
index: number;
|
|
14
|
+
offset: number;
|
|
15
|
+
height: number;
|
|
16
|
+
}
|
|
17
|
+
export declare class VariableHeightManager {
|
|
18
|
+
private heightCache;
|
|
19
|
+
private config;
|
|
20
|
+
private totalItems;
|
|
21
|
+
private lastMeasuredIndex;
|
|
22
|
+
constructor(config?: Partial<VariableHeightConfig>);
|
|
23
|
+
/**
|
|
24
|
+
* Set total number of items
|
|
25
|
+
*/
|
|
26
|
+
setTotalItems(total: number): void;
|
|
27
|
+
/**
|
|
28
|
+
* Measure item height from DOM element
|
|
29
|
+
*/
|
|
30
|
+
measureElement(index: number, element: HTMLElement | null): number;
|
|
31
|
+
/**
|
|
32
|
+
* Get item position (offset and height)
|
|
33
|
+
*/
|
|
34
|
+
getItemPosition(index: number): ItemPosition;
|
|
35
|
+
/**
|
|
36
|
+
* Calculate visible range for variable heights
|
|
37
|
+
*/
|
|
38
|
+
calculateVisibleRange(scrollTop: number, viewportHeight: number): VisibleRange;
|
|
39
|
+
/**
|
|
40
|
+
* Get total height of all items
|
|
41
|
+
*/
|
|
42
|
+
getTotalHeight(): number;
|
|
43
|
+
/**
|
|
44
|
+
* Scroll to specific item index
|
|
45
|
+
*/
|
|
46
|
+
scrollToIndex(index: number): number;
|
|
47
|
+
/**
|
|
48
|
+
* Get items to render for current viewport
|
|
49
|
+
*/
|
|
50
|
+
getItemsToRender(scrollTop: number, viewportHeight: number): {
|
|
51
|
+
items: ItemPosition[];
|
|
52
|
+
totalHeight: number;
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* Handle height change (when item height changes dynamically)
|
|
56
|
+
*/
|
|
57
|
+
onHeightChange(index: number, newHeight: number): void;
|
|
58
|
+
/**
|
|
59
|
+
* Get cache statistics
|
|
60
|
+
*/
|
|
61
|
+
getCacheStats(): import("./HeightMeasurementCache").HeightCacheStats;
|
|
62
|
+
/**
|
|
63
|
+
* Clear cache for specific range
|
|
64
|
+
*/
|
|
65
|
+
clearRange(startIndex: number, endIndex: number): void;
|
|
66
|
+
/**
|
|
67
|
+
* Clear entire cache
|
|
68
|
+
*/
|
|
69
|
+
clearCache(): void;
|
|
70
|
+
/**
|
|
71
|
+
* Get last measured index
|
|
72
|
+
*/
|
|
73
|
+
getLastMeasuredIndex(): number;
|
|
74
|
+
/**
|
|
75
|
+
* Check if item is measured
|
|
76
|
+
*/
|
|
77
|
+
isItemMeasured(index: number): boolean;
|
|
78
|
+
/**
|
|
79
|
+
* Get measured items count
|
|
80
|
+
*/
|
|
81
|
+
getMeasuredCount(): number;
|
|
82
|
+
}
|
|
83
|
+
export default VariableHeightManager;
|
|
84
|
+
//# sourceMappingURL=VariableHeightManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VariableHeightManager.d.ts","sourceRoot":"","sources":["../../src/core/VariableHeightManager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,MAAM,WAAW,oBAAoB;IACnC,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,qBAAqB;IAChC,OAAO,CAAC,WAAW,CAAyB;IAC5C,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,iBAAiB,CAAc;gBAE3B,MAAM,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC;IAWlD;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIlC;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,GAAG,MAAM;IAmBlE;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY;IAW5C;;OAEG;IACH,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,YAAY;IAwB9E;;OAEG;IACH,cAAc,IAAI,MAAM;IAIxB;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAKpC;;OAEG;IACH,gBAAgB,CACd,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,GACrB;QAAE,KAAK,EAAE,YAAY,EAAE,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE;IAcjD;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IActD;;OAEG;IACH,aAAa;IAIb;;OAEG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAMtD;;OAEG;IACH,UAAU,IAAI,IAAI;IAKlB;;OAEG;IACH,oBAAoB,IAAI,MAAM;IAI9B;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAItC;;OAEG;IACH,gBAAgB,IAAI,MAAM;CAG3B;AAED,eAAe,qBAAqB,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"}
|
|
@@ -12,6 +12,15 @@ export { ContentComplexityAnalyzer } from './core/ContentComplexityAnalyzer';
|
|
|
12
12
|
export { PerformanceOptimizer } from './core/PerformanceOptimizer';
|
|
13
13
|
export { MemoryManager } from './core/MemoryManager';
|
|
14
14
|
export { GPUAccelerator } from './core/GPUAccelerator';
|
|
15
|
+
export { BatchSizeOptimizer } from './core/BatchSizeOptimizer';
|
|
16
|
+
export { RequestDeduplicator } from './core/RequestDeduplicator';
|
|
17
|
+
export { PriorityRequestQueue, Priority } from './core/PriorityRequestQueue';
|
|
18
|
+
export { HeightMeasurementCache } from './core/HeightMeasurementCache';
|
|
19
|
+
export { VariableHeightManager } from './core/VariableHeightManager';
|
|
20
|
+
export { DynamicHeightEngine } from './core/DynamicHeightEngine';
|
|
21
|
+
export { SmartPrefetchAlgorithm } from './core/SmartPrefetchAlgorithm';
|
|
22
|
+
export { PreemptiveCache } from './core/PreemptiveCache';
|
|
23
|
+
export { IntelligentPagination } from './core/IntelligentPagination';
|
|
15
24
|
export type { EngineConfig, VisibleRange, FetchMoreCallback, EngineState, ScrollAnalysis } from './core/types';
|
|
16
25
|
export { ScrollObserver } from './platform/browser/ScrollObserver';
|
|
17
26
|
export { useLazyList } from './adapters/react/useLazyList';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AACjF,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG/G,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAGnE,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAGrD,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAK7E,cAAM,sBAAsB;;IAE1B,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE;IACrB,OAAO;IACP,eAAe;;;;IACf,MAAM,CAAC,eAAe;CACvB;AAGD,QAAA,MAAM,iBAAiB,+BAEG,CAAC;AAE3B,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAG7B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AACjF,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG/G,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAGnE,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAGrD,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAK7E,cAAM,sBAAsB;;IAE1B,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE;IACrB,OAAO;IACP,eAAe;;;;IACf,MAAM,CAAC,eAAe;CACvB;AAGD,QAAA,MAAM,iBAAiB,+BAEG,CAAC;AAE3B,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAG7B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC"}
|