@react-native-ohos/flash-list 1.8.3-rc.5 → 2.1.1-rc.1
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/LICENSE +1 -1
- package/README.OpenSource +1 -1
- package/dist/AnimatedFlashList.d.ts +4 -28
- package/dist/AnimatedFlashList.d.ts.map +1 -1
- package/dist/AnimatedFlashList.js +5 -30
- package/dist/AnimatedFlashList.js.map +1 -1
- package/dist/FlashList.d.ts +1 -179
- package/dist/FlashList.d.ts.map +1 -1
- package/dist/FlashList.js +1 -599
- package/dist/FlashList.js.map +1 -1
- package/dist/FlashListProps.d.ts +285 -278
- package/dist/FlashListProps.d.ts.map +1 -1
- package/dist/FlashListProps.js +5 -31
- package/dist/FlashListProps.js.map +1 -1
- package/dist/FlashListRef.d.ts +305 -0
- package/dist/FlashListRef.d.ts.map +1 -0
- package/dist/FlashListRef.js +2 -0
- package/dist/FlashListRef.js.map +1 -0
- package/dist/benchmark/AutoScrollHelper.d.ts +17 -40
- package/dist/benchmark/AutoScrollHelper.d.ts.map +1 -1
- package/dist/benchmark/AutoScrollHelper.js +59 -90
- package/dist/benchmark/AutoScrollHelper.js.map +1 -1
- package/dist/benchmark/JSFPSMonitor.d.ts +22 -45
- package/dist/benchmark/JSFPSMonitor.d.ts.map +1 -1
- package/dist/benchmark/JSFPSMonitor.js +59 -87
- package/dist/benchmark/JSFPSMonitor.js.map +1 -1
- package/dist/benchmark/roundToDecimalPlaces.d.ts +1 -24
- package/dist/benchmark/roundToDecimalPlaces.d.ts.map +1 -1
- package/dist/benchmark/roundToDecimalPlaces.js +4 -31
- package/dist/benchmark/roundToDecimalPlaces.js.map +1 -1
- package/dist/benchmark/useBenchmark.d.ts +40 -57
- package/dist/benchmark/useBenchmark.d.ts.map +1 -1
- package/dist/benchmark/useBenchmark.js +119 -189
- package/dist/benchmark/useBenchmark.js.map +1 -1
- package/dist/benchmark/useDataMultiplier.d.ts +8 -31
- package/dist/benchmark/useDataMultiplier.d.ts.map +1 -1
- package/dist/benchmark/useDataMultiplier.js +19 -47
- package/dist/benchmark/useDataMultiplier.js.map +1 -1
- package/dist/benchmark/useFlatListBenchmark.d.ts +14 -35
- package/dist/benchmark/useFlatListBenchmark.d.ts.map +1 -1
- package/dist/benchmark/useFlatListBenchmark.js +92 -122
- package/dist/benchmark/useFlatListBenchmark.js.map +1 -1
- package/dist/errors/ErrorMessages.d.ts +16 -0
- package/dist/errors/ErrorMessages.d.ts.map +1 -0
- package/dist/errors/ErrorMessages.js +16 -0
- package/dist/errors/ErrorMessages.js.map +1 -0
- package/dist/errors/WarningMessages.d.ts +6 -0
- package/dist/errors/WarningMessages.d.ts.map +1 -0
- package/dist/errors/WarningMessages.js +7 -0
- package/dist/errors/WarningMessages.js.map +1 -0
- package/dist/index.d.ts +15 -36
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19 -54
- package/dist/index.js.map +1 -1
- package/dist/isNewArch.d.ts +2 -0
- package/dist/isNewArch.d.ts.map +1 -0
- package/dist/isNewArch.js +22 -0
- package/dist/isNewArch.js.map +1 -0
- package/dist/native/config/PlatformHelper.android.d.ts +6 -48
- package/dist/native/config/PlatformHelper.android.d.ts.map +1 -1
- package/dist/native/config/PlatformHelper.android.js +6 -45
- package/dist/native/config/PlatformHelper.android.js.map +1 -1
- package/dist/native/config/PlatformHelper.d.ts +6 -48
- package/dist/native/config/PlatformHelper.d.ts.map +1 -1
- package/dist/native/config/PlatformHelper.harmony.d.ts +29 -48
- package/dist/native/config/PlatformHelper.harmony.d.ts.map +1 -1
- package/dist/native/config/PlatformHelper.harmony.js +29 -44
- package/dist/native/config/PlatformHelper.harmony.js.map +1 -1
- package/dist/native/config/PlatformHelper.ios.d.ts +6 -48
- package/dist/native/config/PlatformHelper.ios.d.ts.map +1 -1
- package/dist/native/config/PlatformHelper.ios.js +6 -44
- package/dist/native/config/PlatformHelper.ios.js.map +1 -1
- package/dist/native/config/PlatformHelper.js +6 -45
- package/dist/native/config/PlatformHelper.js.map +1 -1
- package/dist/native/config/PlatformHelper.web.d.ts +6 -49
- package/dist/native/config/PlatformHelper.web.d.ts.map +1 -1
- package/dist/native/config/PlatformHelper.web.js +6 -47
- package/dist/native/config/PlatformHelper.web.js.map +1 -1
- package/dist/recyclerview/LayoutCommitObserver.d.ts +12 -0
- package/dist/recyclerview/LayoutCommitObserver.d.ts.map +1 -0
- package/dist/recyclerview/LayoutCommitObserver.js +58 -0
- package/dist/recyclerview/LayoutCommitObserver.js.map +1 -0
- package/dist/recyclerview/RecyclerView.d.ts +13 -0
- package/dist/recyclerview/RecyclerView.d.ts.map +1 -0
- package/dist/recyclerview/RecyclerView.js +368 -0
- package/dist/recyclerview/RecyclerView.js.map +1 -0
- package/dist/recyclerview/RecyclerViewContextProvider.d.ts +46 -0
- package/dist/recyclerview/RecyclerViewContextProvider.d.ts.map +1 -0
- package/dist/recyclerview/RecyclerViewContextProvider.js +10 -0
- package/dist/recyclerview/RecyclerViewContextProvider.js.map +1 -0
- package/dist/recyclerview/RecyclerViewManager.d.ts +78 -0
- package/dist/recyclerview/RecyclerViewManager.d.ts.map +1 -0
- package/dist/recyclerview/RecyclerViewManager.js +343 -0
- package/dist/recyclerview/RecyclerViewManager.js.map +1 -0
- package/dist/recyclerview/RecyclerViewProps.d.ts +2 -0
- package/dist/recyclerview/RecyclerViewProps.d.ts.map +1 -0
- package/dist/recyclerview/RecyclerViewProps.js +2 -0
- package/dist/recyclerview/RecyclerViewProps.js.map +1 -0
- package/dist/recyclerview/RenderStackManager.d.ts +86 -0
- package/dist/recyclerview/RenderStackManager.d.ts.map +1 -0
- package/dist/recyclerview/RenderStackManager.js +252 -0
- package/dist/recyclerview/RenderStackManager.js.map +1 -0
- package/dist/recyclerview/ViewHolder.d.ts +45 -0
- package/dist/recyclerview/ViewHolder.d.ts.map +1 -0
- package/dist/recyclerview/ViewHolder.js +94 -0
- package/dist/recyclerview/ViewHolder.js.map +1 -0
- package/dist/recyclerview/ViewHolderCollection.d.ts +63 -0
- package/dist/recyclerview/ViewHolderCollection.d.ts.map +1 -0
- package/dist/recyclerview/ViewHolderCollection.js +87 -0
- package/dist/recyclerview/ViewHolderCollection.js.map +1 -0
- package/dist/recyclerview/components/CompatScroller.d.ts +7 -0
- package/dist/recyclerview/components/CompatScroller.d.ts.map +1 -0
- package/dist/recyclerview/components/CompatScroller.js +7 -0
- package/dist/recyclerview/components/CompatScroller.js.map +1 -0
- package/dist/recyclerview/components/CompatView.d.ts +7 -0
- package/dist/recyclerview/components/CompatView.d.ts.map +1 -0
- package/dist/recyclerview/components/CompatView.js +7 -0
- package/dist/recyclerview/components/CompatView.js.map +1 -0
- package/dist/recyclerview/components/ScrollAnchor.d.ts +29 -0
- package/dist/recyclerview/components/ScrollAnchor.d.ts.map +1 -0
- package/dist/recyclerview/components/ScrollAnchor.js +33 -0
- package/dist/recyclerview/components/ScrollAnchor.js.map +1 -0
- package/dist/recyclerview/components/StickyHeaders.d.ts +38 -0
- package/dist/recyclerview/components/StickyHeaders.d.ts.map +1 -0
- package/dist/recyclerview/components/StickyHeaders.js +112 -0
- package/dist/recyclerview/components/StickyHeaders.js.map +1 -0
- package/dist/recyclerview/helpers/ConsecutiveNumbers.d.ts +51 -0
- package/dist/recyclerview/helpers/ConsecutiveNumbers.d.ts.map +1 -0
- package/dist/recyclerview/helpers/ConsecutiveNumbers.js +95 -0
- package/dist/recyclerview/helpers/ConsecutiveNumbers.js.map +1 -0
- package/dist/recyclerview/helpers/EngagedIndicesTracker.d.ts +105 -0
- package/dist/recyclerview/helpers/EngagedIndicesTracker.d.ts.map +1 -0
- package/dist/recyclerview/helpers/EngagedIndicesTracker.js +202 -0
- package/dist/recyclerview/helpers/EngagedIndicesTracker.js.map +1 -0
- package/dist/recyclerview/helpers/RenderTimeTracker.d.ts +14 -0
- package/dist/recyclerview/helpers/RenderTimeTracker.d.ts.map +1 -0
- package/dist/recyclerview/helpers/RenderTimeTracker.js +44 -0
- package/dist/recyclerview/helpers/RenderTimeTracker.js.map +1 -0
- package/dist/recyclerview/helpers/VelocityTracker.d.ts +29 -0
- package/dist/recyclerview/helpers/VelocityTracker.d.ts.map +1 -0
- package/dist/recyclerview/helpers/VelocityTracker.js +64 -0
- package/dist/recyclerview/helpers/VelocityTracker.js.map +1 -0
- package/dist/recyclerview/hooks/useBoundDetection.d.ts +17 -0
- package/dist/recyclerview/hooks/useBoundDetection.d.ts.map +1 -0
- package/dist/recyclerview/hooks/useBoundDetection.js +132 -0
- package/dist/recyclerview/hooks/useBoundDetection.js.map +1 -0
- package/dist/recyclerview/hooks/useLayoutState.d.ts +14 -0
- package/dist/recyclerview/hooks/useLayoutState.d.ts.map +1 -0
- package/dist/recyclerview/hooks/useLayoutState.js +38 -0
- package/dist/recyclerview/hooks/useLayoutState.js.map +1 -0
- package/dist/recyclerview/hooks/useMappingHelper.d.ts +9 -0
- package/dist/recyclerview/hooks/useMappingHelper.d.ts.map +1 -0
- package/dist/recyclerview/hooks/useMappingHelper.js +15 -0
- package/dist/recyclerview/hooks/useMappingHelper.js.map +1 -0
- package/dist/recyclerview/hooks/useOnLoad.d.ts +25 -0
- package/dist/recyclerview/hooks/useOnLoad.d.ts.map +1 -0
- package/dist/recyclerview/hooks/useOnLoad.js +67 -0
- package/dist/recyclerview/hooks/useOnLoad.js.map +1 -0
- package/dist/recyclerview/hooks/useRecyclerViewController.d.ts +28 -0
- package/dist/recyclerview/hooks/useRecyclerViewController.d.ts.map +1 -0
- package/dist/recyclerview/hooks/useRecyclerViewController.js +507 -0
- package/dist/recyclerview/hooks/useRecyclerViewController.js.map +1 -0
- package/dist/recyclerview/hooks/useRecyclerViewManager.d.ts +8 -0
- package/dist/recyclerview/hooks/useRecyclerViewManager.d.ts.map +1 -0
- package/dist/recyclerview/hooks/useRecyclerViewManager.js +32 -0
- package/dist/recyclerview/hooks/useRecyclerViewManager.js.map +1 -0
- package/dist/recyclerview/hooks/useRecyclingState.d.ts +18 -0
- package/dist/recyclerview/hooks/useRecyclingState.d.ts.map +1 -0
- package/dist/recyclerview/hooks/useRecyclingState.js +49 -0
- package/dist/recyclerview/hooks/useRecyclingState.js.map +1 -0
- package/dist/recyclerview/hooks/useSecondaryProps.d.ts +27 -0
- package/dist/recyclerview/hooks/useSecondaryProps.d.ts.map +1 -0
- package/dist/recyclerview/hooks/useSecondaryProps.js +90 -0
- package/dist/recyclerview/hooks/useSecondaryProps.js.map +1 -0
- package/dist/recyclerview/hooks/useUnmountAwareCallbacks.d.ts +15 -0
- package/dist/recyclerview/hooks/useUnmountAwareCallbacks.d.ts.map +1 -0
- package/dist/recyclerview/hooks/useUnmountAwareCallbacks.js +58 -0
- package/dist/recyclerview/hooks/useUnmountAwareCallbacks.js.map +1 -0
- package/dist/recyclerview/hooks/useUnmountFlag.d.ts +10 -0
- package/dist/recyclerview/hooks/useUnmountFlag.d.ts.map +1 -0
- package/dist/recyclerview/hooks/useUnmountFlag.js +25 -0
- package/dist/recyclerview/hooks/useUnmountFlag.js.map +1 -0
- package/dist/recyclerview/layout-managers/GridLayoutManager.d.ts +79 -0
- package/dist/recyclerview/layout-managers/GridLayoutManager.d.ts.map +1 -0
- package/dist/recyclerview/layout-managers/GridLayoutManager.js +221 -0
- package/dist/recyclerview/layout-managers/GridLayoutManager.js.map +1 -0
- package/dist/recyclerview/layout-managers/LayoutManager.d.ts +296 -0
- package/dist/recyclerview/layout-managers/LayoutManager.d.ts.map +1 -0
- package/dist/recyclerview/layout-managers/LayoutManager.js +279 -0
- package/dist/recyclerview/layout-managers/LayoutManager.js.map +1 -0
- package/dist/recyclerview/layout-managers/LinearLayoutManager.d.ts +51 -0
- package/dist/recyclerview/layout-managers/LinearLayoutManager.d.ts.map +1 -0
- package/dist/recyclerview/layout-managers/LinearLayoutManager.js +151 -0
- package/dist/recyclerview/layout-managers/LinearLayoutManager.js.map +1 -0
- package/dist/recyclerview/layout-managers/MasonryLayoutManager.d.ts +81 -0
- package/dist/recyclerview/layout-managers/MasonryLayoutManager.d.ts.map +1 -0
- package/dist/recyclerview/layout-managers/MasonryLayoutManager.js +269 -0
- package/dist/recyclerview/layout-managers/MasonryLayoutManager.js.map +1 -0
- package/dist/recyclerview/utils/adjustOffsetForRTL.d.ts +12 -0
- package/dist/recyclerview/utils/adjustOffsetForRTL.d.ts.map +1 -0
- package/dist/recyclerview/utils/adjustOffsetForRTL.js +14 -0
- package/dist/recyclerview/utils/adjustOffsetForRTL.js.map +1 -0
- package/dist/recyclerview/utils/componentUtils.d.ts +19 -0
- package/dist/recyclerview/utils/componentUtils.d.ts.map +1 -0
- package/dist/recyclerview/utils/componentUtils.js +27 -0
- package/dist/recyclerview/utils/componentUtils.js.map +1 -0
- package/dist/recyclerview/utils/findVisibleIndex.d.ts +24 -0
- package/dist/recyclerview/utils/findVisibleIndex.d.ts.map +1 -0
- package/dist/recyclerview/utils/findVisibleIndex.js +76 -0
- package/dist/recyclerview/utils/findVisibleIndex.js.map +1 -0
- package/dist/recyclerview/utils/measureLayout.d.ts +52 -0
- package/dist/recyclerview/utils/measureLayout.d.ts.map +1 -0
- package/dist/recyclerview/utils/measureLayout.js +99 -0
- package/dist/recyclerview/utils/measureLayout.js.map +1 -0
- package/dist/recyclerview/utils/measureLayout.web.d.ts +29 -0
- package/dist/recyclerview/utils/measureLayout.web.d.ts.map +1 -0
- package/dist/recyclerview/utils/measureLayout.web.js +79 -0
- package/dist/recyclerview/utils/measureLayout.web.js.map +1 -0
- package/dist/recyclerview/viewability/ViewToken.d.ts +8 -0
- package/dist/recyclerview/viewability/ViewToken.d.ts.map +1 -0
- package/dist/recyclerview/viewability/ViewToken.js +2 -0
- package/dist/recyclerview/viewability/ViewToken.js.map +1 -0
- package/dist/recyclerview/viewability/ViewabilityHelper.d.ts +26 -0
- package/dist/recyclerview/viewability/ViewabilityHelper.d.ts.map +1 -0
- package/dist/recyclerview/viewability/ViewabilityHelper.js +98 -0
- package/dist/recyclerview/viewability/ViewabilityHelper.js.map +1 -0
- package/dist/recyclerview/viewability/ViewabilityManager.d.ts +25 -0
- package/dist/recyclerview/viewability/ViewabilityManager.d.ts.map +1 -0
- package/dist/recyclerview/viewability/ViewabilityManager.js +94 -0
- package/dist/recyclerview/viewability/ViewabilityManager.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils/AverageWindow.d.ts +33 -43
- package/dist/utils/AverageWindow.d.ts.map +1 -1
- package/dist/utils/AverageWindow.js +66 -71
- package/dist/utils/AverageWindow.js.map +1 -1
- package/jestSetup.js +23 -37
- package/package.json +15 -24
- package/src/AnimatedFlashList.ts +2 -25
- package/src/FlashList.ts +1 -0
- package/src/FlashListProps.ts +109 -100
- package/src/FlashListRef.ts +320 -0
- package/src/benchmark/AutoScrollHelper.ts +0 -24
- package/src/benchmark/JSFPSMonitor.ts +2 -26
- package/src/benchmark/roundToDecimalPlaces.ts +0 -24
- package/src/benchmark/useBenchmark.ts +59 -105
- package/src/benchmark/useDataMultiplier.ts +0 -24
- package/src/benchmark/useFlatListBenchmark.ts +43 -32
- package/src/errors/ErrorMessages.ts +26 -0
- package/src/errors/WarningMessages.ts +9 -0
- package/src/index.ts +18 -46
- package/src/isNewArch.ts +25 -0
- package/src/native/config/PlatformHelper.android.ts +3 -49
- package/src/native/config/PlatformHelper.harmony.ts +3 -24
- package/src/native/config/PlatformHelper.ios.ts +3 -48
- package/src/native/config/PlatformHelper.ts +3 -49
- package/src/native/config/PlatformHelper.web.ts +4 -55
- package/src/recyclerview/LayoutCommitObserver.tsx +74 -0
- package/src/recyclerview/RecyclerView.tsx +616 -0
- package/src/recyclerview/RecyclerViewContextProvider.ts +65 -0
- package/src/recyclerview/RecyclerViewManager.ts +461 -0
- package/src/recyclerview/RecyclerViewProps.ts +1 -0
- package/src/recyclerview/RenderStackManager.ts +317 -0
- package/src/recyclerview/ViewHolder.tsx +180 -0
- package/src/recyclerview/ViewHolderCollection.tsx +193 -0
- package/src/recyclerview/components/CompatScroller.ts +9 -0
- package/src/recyclerview/components/CompatView.ts +9 -0
- package/src/recyclerview/components/ScrollAnchor.tsx +66 -0
- package/src/recyclerview/components/StickyHeaders.tsx +222 -0
- package/src/recyclerview/helpers/ConsecutiveNumbers.ts +120 -0
- package/src/recyclerview/helpers/EngagedIndicesTracker.ts +301 -0
- package/src/recyclerview/helpers/RenderTimeTracker.ts +50 -0
- package/src/recyclerview/helpers/VelocityTracker.ts +77 -0
- package/src/recyclerview/hooks/useBoundDetection.ts +176 -0
- package/src/recyclerview/hooks/useLayoutState.ts +55 -0
- package/src/recyclerview/hooks/useMappingHelper.ts +20 -0
- package/src/recyclerview/hooks/useOnLoad.ts +80 -0
- package/src/recyclerview/hooks/useRecyclerViewController.tsx +633 -0
- package/src/recyclerview/hooks/useRecyclerViewManager.ts +42 -0
- package/src/recyclerview/hooks/useRecyclingState.ts +67 -0
- package/src/recyclerview/hooks/useSecondaryProps.tsx +124 -0
- package/src/recyclerview/hooks/useUnmountAwareCallbacks.ts +73 -0
- package/src/recyclerview/hooks/useUnmountFlag.ts +27 -0
- package/src/recyclerview/layout-managers/GridLayoutManager.ts +256 -0
- package/src/recyclerview/layout-managers/LayoutManager.ts +568 -0
- package/src/recyclerview/layout-managers/LinearLayoutManager.ts +171 -0
- package/src/recyclerview/layout-managers/MasonryLayoutManager.ts +323 -0
- package/src/recyclerview/utils/adjustOffsetForRTL.ts +17 -0
- package/src/recyclerview/utils/componentUtils.ts +28 -0
- package/src/recyclerview/utils/findVisibleIndex.ts +93 -0
- package/src/recyclerview/utils/measureLayout.ts +128 -0
- package/src/recyclerview/utils/measureLayout.web.ts +102 -0
- package/src/recyclerview/viewability/ViewToken.ts +7 -0
- package/src/{viewability → recyclerview/viewability}/ViewabilityHelper.ts +8 -33
- package/src/{viewability → recyclerview/viewability}/ViewabilityManager.ts +23 -46
- package/src/utils/AverageWindow.ts +33 -24
- package/dist/GridLayoutProviderWithProps.d.ts +0 -65
- package/dist/GridLayoutProviderWithProps.d.ts.map +0 -1
- package/dist/GridLayoutProviderWithProps.js +0 -138
- package/dist/GridLayoutProviderWithProps.js.map +0 -1
- package/dist/MasonryFlashList.d.ts +0 -74
- package/dist/MasonryFlashList.d.ts.map +0 -1
- package/dist/MasonryFlashList.js +0 -275
- package/dist/MasonryFlashList.js.map +0 -1
- package/dist/PureComponentWrapper.d.ts +0 -45
- package/dist/PureComponentWrapper.d.ts.map +0 -1
- package/dist/PureComponentWrapper.js +0 -60
- package/dist/PureComponentWrapper.js.map +0 -1
- package/dist/__tests__/AverageWindow.test.d.ts +0 -2
- package/dist/__tests__/AverageWindow.test.d.ts.map +0 -1
- package/dist/__tests__/AverageWindow.test.js +0 -69
- package/dist/__tests__/AverageWindow.test.js.map +0 -1
- package/dist/__tests__/ContentContainerUtils.test.d.ts +0 -2
- package/dist/__tests__/ContentContainerUtils.test.d.ts.map +0 -1
- package/dist/__tests__/ContentContainerUtils.test.js +0 -85
- package/dist/__tests__/ContentContainerUtils.test.js.map +0 -1
- package/dist/__tests__/FlashList.test.d.ts +0 -2
- package/dist/__tests__/FlashList.test.d.ts.map +0 -1
- package/dist/__tests__/FlashList.test.js +0 -792
- package/dist/__tests__/FlashList.test.js.map +0 -1
- package/dist/__tests__/GridLayoutProviderWithProps.test.d.ts +0 -2
- package/dist/__tests__/GridLayoutProviderWithProps.test.d.ts.map +0 -1
- package/dist/__tests__/GridLayoutProviderWithProps.test.js +0 -143
- package/dist/__tests__/GridLayoutProviderWithProps.test.js.map +0 -1
- package/dist/__tests__/MasonryFlashList.test.d.ts +0 -2
- package/dist/__tests__/MasonryFlashList.test.d.ts.map +0 -1
- package/dist/__tests__/MasonryFlashList.test.js +0 -254
- package/dist/__tests__/MasonryFlashList.test.js.map +0 -1
- package/dist/__tests__/PlatformHelper.web.test.d.ts +0 -2
- package/dist/__tests__/PlatformHelper.web.test.d.ts.map +0 -1
- package/dist/__tests__/PlatformHelper.web.test.js +0 -33
- package/dist/__tests__/PlatformHelper.web.test.js.map +0 -1
- package/dist/__tests__/ViewabilityHelper.test.d.ts +0 -2
- package/dist/__tests__/ViewabilityHelper.test.d.ts.map +0 -1
- package/dist/__tests__/ViewabilityHelper.test.js +0 -187
- package/dist/__tests__/ViewabilityHelper.test.js.map +0 -1
- package/dist/__tests__/helpers/mountFlashList.d.ts +0 -19
- package/dist/__tests__/helpers/mountFlashList.d.ts.map +0 -1
- package/dist/__tests__/helpers/mountFlashList.js +0 -44
- package/dist/__tests__/helpers/mountFlashList.js.map +0 -1
- package/dist/__tests__/helpers/mountMasonryFlashList.d.ts +0 -18
- package/dist/__tests__/helpers/mountMasonryFlashList.d.ts.map +0 -1
- package/dist/__tests__/helpers/mountMasonryFlashList.js +0 -49
- package/dist/__tests__/helpers/mountMasonryFlashList.js.map +0 -1
- package/dist/__tests__/useBlankAreaTracker.test.d.ts +0 -2
- package/dist/__tests__/useBlankAreaTracker.test.d.ts.map +0 -1
- package/dist/__tests__/useBlankAreaTracker.test.js +0 -177
- package/dist/__tests__/useBlankAreaTracker.test.js.map +0 -1
- package/dist/benchmark/useBlankAreaTracker.d.ts +0 -57
- package/dist/benchmark/useBlankAreaTracker.d.ts.map +0 -1
- package/dist/benchmark/useBlankAreaTracker.js +0 -90
- package/dist/benchmark/useBlankAreaTracker.js.map +0 -1
- package/dist/errors/CustomError.d.ts +0 -31
- package/dist/errors/CustomError.d.ts.map +0 -1
- package/dist/errors/CustomError.js +0 -37
- package/dist/errors/CustomError.js.map +0 -1
- package/dist/errors/ExceptionList.d.ts +0 -47
- package/dist/errors/ExceptionList.d.ts.map +0 -1
- package/dist/errors/ExceptionList.js +0 -49
- package/dist/errors/ExceptionList.js.map +0 -1
- package/dist/errors/Warnings.d.ts +0 -32
- package/dist/errors/Warnings.d.ts.map +0 -1
- package/dist/errors/Warnings.js +0 -36
- package/dist/errors/Warnings.js.map +0 -1
- package/dist/fabric/AutoLayoutNativeComponent.d.ts +0 -42
- package/dist/fabric/AutoLayoutNativeComponent.d.ts.map +0 -1
- package/dist/fabric/AutoLayoutNativeComponent.js +0 -29
- package/dist/fabric/AutoLayoutNativeComponent.js.map +0 -1
- package/dist/fabric/CellContainerNativeComponent.d.ts +0 -31
- package/dist/fabric/CellContainerNativeComponent.d.ts.map +0 -1
- package/dist/fabric/CellContainerNativeComponent.js +0 -29
- package/dist/fabric/CellContainerNativeComponent.js.map +0 -1
- package/dist/native/auto-layout/AutoLayoutView.d.ts +0 -45
- package/dist/native/auto-layout/AutoLayoutView.d.ts.map +0 -1
- package/dist/native/auto-layout/AutoLayoutView.js +0 -71
- package/dist/native/auto-layout/AutoLayoutView.js.map +0 -1
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.android.d.ts +0 -27
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.android.d.ts.map +0 -1
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.android.js +0 -29
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.android.js.map +0 -1
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.d.ts +0 -28
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.d.ts.map +0 -1
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.harmony.d.ts +0 -27
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.harmony.d.ts.map +0 -1
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.harmony.js +0 -29
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.harmony.js.map +0 -1
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.ios.d.ts +0 -27
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.ios.d.ts.map +0 -1
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.ios.js +0 -29
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.ios.js.map +0 -1
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.js +0 -29
- package/dist/native/auto-layout/AutoLayoutViewNativeComponent.js.map +0 -1
- package/dist/native/auto-layout/AutoLayoutViewNativeComponentProps.d.ts +0 -39
- package/dist/native/auto-layout/AutoLayoutViewNativeComponentProps.d.ts.map +0 -1
- package/dist/native/auto-layout/AutoLayoutViewNativeComponentProps.js +0 -26
- package/dist/native/auto-layout/AutoLayoutViewNativeComponentProps.js.map +0 -1
- package/dist/native/cell-container/CellContainer.android.d.ts +0 -29
- package/dist/native/cell-container/CellContainer.android.d.ts.map +0 -1
- package/dist/native/cell-container/CellContainer.android.js +0 -32
- package/dist/native/cell-container/CellContainer.android.js.map +0 -1
- package/dist/native/cell-container/CellContainer.d.ts +0 -31
- package/dist/native/cell-container/CellContainer.d.ts.map +0 -1
- package/dist/native/cell-container/CellContainer.harmony.d.ts +0 -29
- package/dist/native/cell-container/CellContainer.harmony.d.ts.map +0 -1
- package/dist/native/cell-container/CellContainer.harmony.js +0 -32
- package/dist/native/cell-container/CellContainer.harmony.js.map +0 -1
- package/dist/native/cell-container/CellContainer.ios.d.ts +0 -29
- package/dist/native/cell-container/CellContainer.ios.d.ts.map +0 -1
- package/dist/native/cell-container/CellContainer.ios.js +0 -32
- package/dist/native/cell-container/CellContainer.ios.js.map +0 -1
- package/dist/native/cell-container/CellContainer.js +0 -34
- package/dist/native/cell-container/CellContainer.js.map +0 -1
- package/dist/native/cell-container/CellContainer.web.d.ts +0 -30
- package/dist/native/cell-container/CellContainer.web.d.ts.map +0 -1
- package/dist/native/cell-container/CellContainer.web.js +0 -36
- package/dist/native/cell-container/CellContainer.web.js.map +0 -1
- package/dist/utils/ContentContainerUtils.d.ts +0 -50
- package/dist/utils/ContentContainerUtils.d.ts.map +0 -1
- package/dist/utils/ContentContainerUtils.js +0 -71
- package/dist/utils/ContentContainerUtils.js.map +0 -1
- package/dist/viewability/ViewToken.d.ts +0 -31
- package/dist/viewability/ViewToken.d.ts.map +0 -1
- package/dist/viewability/ViewToken.js +0 -26
- package/dist/viewability/ViewToken.js.map +0 -1
- package/dist/viewability/ViewabilityHelper.d.ts +0 -49
- package/dist/viewability/ViewabilityHelper.d.ts.map +0 -1
- package/dist/viewability/ViewabilityHelper.js +0 -130
- package/dist/viewability/ViewabilityHelper.js.map +0 -1
- package/dist/viewability/ViewabilityManager.d.ts +0 -48
- package/dist/viewability/ViewabilityManager.d.ts.map +0 -1
- package/dist/viewability/ViewabilityManager.js +0 -131
- package/dist/viewability/ViewabilityManager.js.map +0 -1
- package/harmony/flash_list/BuildProfile.ets +0 -17
- package/harmony/flash_list/LICENSE +0 -7
- package/harmony/flash_list/build-profile.json5 +0 -8
- package/harmony/flash_list/hvigorfile.ts +0 -1
- package/harmony/flash_list/index.ets +0 -27
- package/harmony/flash_list/obfuscation-rules.txt +0 -18
- package/harmony/flash_list/oh-package.json5 +0 -24
- package/harmony/flash_list/src/main/cpp/AutoLayoutNode.cpp +0 -63
- package/harmony/flash_list/src/main/cpp/AutoLayoutNode.h +0 -54
- package/harmony/flash_list/src/main/cpp/AutoLayoutShadow.cpp +0 -140
- package/harmony/flash_list/src/main/cpp/AutoLayoutShadow.h +0 -66
- package/harmony/flash_list/src/main/cpp/AutoLayoutViewComponentInstance.cpp +0 -208
- package/harmony/flash_list/src/main/cpp/AutoLayoutViewComponentInstance.h +0 -78
- package/harmony/flash_list/src/main/cpp/AutoLayoutViewEventEmitRequestHandler.h +0 -53
- package/harmony/flash_list/src/main/cpp/AutoLayoutViewJSIBinder.h +0 -50
- package/harmony/flash_list/src/main/cpp/CMakeLists.txt +0 -12
- package/harmony/flash_list/src/main/cpp/CellContainerComponentInstance.cpp +0 -80
- package/harmony/flash_list/src/main/cpp/CellContainerComponentInstance.h +0 -64
- package/harmony/flash_list/src/main/cpp/CellContainerJSIBinder.h +0 -39
- package/harmony/flash_list/src/main/cpp/ComponentDescriptors.h +0 -40
- package/harmony/flash_list/src/main/cpp/EventEmitters.cpp +0 -40
- package/harmony/flash_list/src/main/cpp/EventEmitters.h +0 -48
- package/harmony/flash_list/src/main/cpp/FlashListPackage.h +0 -85
- package/harmony/flash_list/src/main/cpp/FlashListStackNode.cpp +0 -87
- package/harmony/flash_list/src/main/cpp/FlashListStackNode.h +0 -57
- package/harmony/flash_list/src/main/cpp/Props.cpp +0 -52
- package/harmony/flash_list/src/main/cpp/Props.h +0 -64
- package/harmony/flash_list/src/main/cpp/ShadowNodes.cpp +0 -34
- package/harmony/flash_list/src/main/cpp/ShadowNodes.h +0 -48
- package/harmony/flash_list/src/main/ets/Logger.ets +0 -64
- package/harmony/flash_list/src/main/ets/RNAutoLayoutShadow.ets +0 -154
- package/harmony/flash_list/src/main/ets/RNAutoLayoutView.ets +0 -277
- package/harmony/flash_list/src/main/ets/RNCellContainer.ets +0 -113
- package/harmony/flash_list/src/main/module.json5 +0 -9
- package/harmony/flash_list/src/main/resources/base/element/color.json +0 -8
- package/harmony/flash_list/src/main/resources/base/element/string.json +0 -16
- package/harmony/flash_list/src/main/resources/base/media/icon.png +0 -0
- package/harmony/flash_list/src/main/resources/base/profile/main_pages.json +0 -5
- package/harmony/flash_list/src/main/resources/en_US/element/string.json +0 -16
- package/harmony/flash_list/src/main/resources/zh_CN/element/string.json +0 -16
- package/harmony/flash_list.har +0 -0
- package/src/FlashList.tsx +0 -949
- package/src/GridLayoutProviderWithProps.ts +0 -204
- package/src/MasonryFlashList.tsx +0 -499
- package/src/PureComponentWrapper.tsx +0 -65
- package/src/benchmark/useBlankAreaTracker.ts +0 -141
- package/src/errors/CustomError.ts +0 -34
- package/src/errors/ExceptionList.ts +0 -52
- package/src/errors/Warnings.ts +0 -39
- package/src/fabric/AutoLayoutNativeComponent.ts +0 -52
- package/src/fabric/CellContainerNativeComponent.ts +0 -35
- package/src/native/auto-layout/AutoLayoutView.tsx +0 -97
- package/src/native/auto-layout/AutoLayoutViewNativeComponent.android.ts +0 -31
- package/src/native/auto-layout/AutoLayoutViewNativeComponent.harmony.ts +0 -31
- package/src/native/auto-layout/AutoLayoutViewNativeComponent.ios.ts +0 -31
- package/src/native/auto-layout/AutoLayoutViewNativeComponent.ts +0 -31
- package/src/native/auto-layout/AutoLayoutViewNativeComponentProps.ts +0 -41
- package/src/native/cell-container/CellContainer.android.ts +0 -31
- package/src/native/cell-container/CellContainer.harmony.ts +0 -31
- package/src/native/cell-container/CellContainer.ios.ts +0 -31
- package/src/native/cell-container/CellContainer.tsx +0 -38
- package/src/native/cell-container/CellContainer.web.tsx +0 -33
- package/src/utils/ContentContainerUtils.ts +0 -116
- package/src/viewability/ViewToken.ts +0 -31
package/dist/FlashListProps.js
CHANGED
|
@@ -1,32 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*
|
|
7
|
-
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
8
|
-
* of this software and associated documentation files (the "Software"), to deal
|
|
9
|
-
* in the Software without restriction, including without limitation the rights
|
|
10
|
-
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
11
|
-
* copies of the Software, and to permit persons to whom the Software is
|
|
12
|
-
* furnished to do so, subject to the following conditions:
|
|
13
|
-
*
|
|
14
|
-
* The above copyright notice and this permission notice shall be included in all
|
|
15
|
-
* copies or substantial portions of the Software.
|
|
16
|
-
*
|
|
17
|
-
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
18
|
-
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
19
|
-
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
20
|
-
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
21
|
-
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
22
|
-
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
23
|
-
* SOFTWARE.
|
|
24
|
-
*/
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.RenderTargetOptions = void 0;
|
|
27
|
-
exports.RenderTargetOptions = {
|
|
28
|
-
Cell: "Cell",
|
|
29
|
-
StickyHeader: "StickyHeader",
|
|
30
|
-
Measurement: "Measurement",
|
|
31
|
-
};
|
|
1
|
+
export const RenderTargetOptions = {
|
|
2
|
+
Cell: "Cell",
|
|
3
|
+
StickyHeader: "StickyHeader",
|
|
4
|
+
Measurement: "Measurement",
|
|
5
|
+
};
|
|
32
6
|
//# sourceMappingURL=FlashListProps.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlashListProps.js","sourceRoot":"","sources":["../src/FlashListProps.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FlashListProps.js","sourceRoot":"","sources":["../src/FlashListProps.ts"],"names":[],"mappings":"AA+BA,MAAM,CAAC,MAAM,mBAAmB,GAAiC;IAC/D,IAAI,EAAE,MAAM;IACZ,YAAY,EAAE,cAAc;IAC5B,WAAW,EAAE,aAAa;CAC3B,CAAC"}
|
|
@@ -0,0 +1,305 @@
|
|
|
1
|
+
import type { RVLayout } from "./recyclerview/layout-managers/LayoutManager";
|
|
2
|
+
import { RecyclerViewProps } from "./recyclerview/RecyclerViewProps";
|
|
3
|
+
import { CompatScroller } from "./recyclerview/components/CompatScroller";
|
|
4
|
+
/**
|
|
5
|
+
* Base parameters for scrolling to the edges of the list.
|
|
6
|
+
*/
|
|
7
|
+
export interface ScrollToEdgeParams {
|
|
8
|
+
/** Whether the scroll should be animated */
|
|
9
|
+
animated?: boolean;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Parameters for scrolling to a specific position in the list.
|
|
13
|
+
* Extends ScrollToEdgeParams to include view positioning options.
|
|
14
|
+
*/
|
|
15
|
+
export interface ScrollToParams extends ScrollToEdgeParams {
|
|
16
|
+
/** Position of the target item relative to the viewport (0 = top, 0.5 = center, 1 = bottom) */
|
|
17
|
+
viewPosition?: number;
|
|
18
|
+
/** Additional offset to apply after viewPosition calculation */
|
|
19
|
+
viewOffset?: number;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Parameters for scrolling to a specific offset in the list.
|
|
23
|
+
* Used when you want to scroll to an exact pixel position.
|
|
24
|
+
*/
|
|
25
|
+
export interface ScrollToOffsetParams extends ScrollToParams {
|
|
26
|
+
/** The pixel offset to scroll to */
|
|
27
|
+
offset: number;
|
|
28
|
+
/**
|
|
29
|
+
* If true, the first item offset will not be added to the offset calculation.
|
|
30
|
+
* First offset represents header size or top padding.
|
|
31
|
+
*/
|
|
32
|
+
skipFirstItemOffset?: boolean;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Parameters for scrolling to a specific index in the list.
|
|
36
|
+
* Used when you want to scroll to a specific item by its position in the data array.
|
|
37
|
+
*/
|
|
38
|
+
export interface ScrollToIndexParams extends ScrollToParams {
|
|
39
|
+
/** The index of the item to scroll to */
|
|
40
|
+
index: number;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Parameters for scrolling to a specific item in the list.
|
|
44
|
+
* Used when you want to scroll to a specific item by its data value.
|
|
45
|
+
*/
|
|
46
|
+
export interface ScrollToItemParams<T> extends ScrollToParams {
|
|
47
|
+
/** The item to scroll to */
|
|
48
|
+
item: T;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Interface for FlashList's ref object that provides imperative methods
|
|
52
|
+
* for controlling list behavior.
|
|
53
|
+
*
|
|
54
|
+
* Usage example:
|
|
55
|
+
* ```tsx
|
|
56
|
+
* const listRef = useRef<FlashListRef<ItemType>>(null);
|
|
57
|
+
*
|
|
58
|
+
* // Later in your component
|
|
59
|
+
* <FlashList
|
|
60
|
+
* ref={listRef}
|
|
61
|
+
* data={data}
|
|
62
|
+
* renderItem={renderItem}
|
|
63
|
+
* />
|
|
64
|
+
*
|
|
65
|
+
* // Somewhere else in your component
|
|
66
|
+
* listRef.current?.scrollToIndex({ index: 5, animated: true });
|
|
67
|
+
* ```
|
|
68
|
+
*/
|
|
69
|
+
export interface FlashListRef<T> {
|
|
70
|
+
/**
|
|
71
|
+
* Get access to current props
|
|
72
|
+
*/
|
|
73
|
+
props: RecyclerViewProps<T>;
|
|
74
|
+
/**
|
|
75
|
+
* Scrolls the list to a specific offset position.
|
|
76
|
+
*
|
|
77
|
+
* Use this method when you want precise control over the scroll position in pixels
|
|
78
|
+
* rather than by item index.
|
|
79
|
+
*
|
|
80
|
+
* @param params - Parameters for scrolling to offset
|
|
81
|
+
* @param params.offset - The pixel offset to scroll to
|
|
82
|
+
* @param params.animated - Whether the scroll should be animated (default: false)
|
|
83
|
+
* @param params.skipFirstItemOffset - If true, the first item offset (headers/padding)
|
|
84
|
+
* will not be included in calculation (default: true)
|
|
85
|
+
*
|
|
86
|
+
* @example
|
|
87
|
+
* // Scroll to 200px from the top/left
|
|
88
|
+
* listRef.current?.scrollToOffset({ offset: 200, animated: true });
|
|
89
|
+
*/
|
|
90
|
+
scrollToOffset: (params: ScrollToOffsetParams) => void;
|
|
91
|
+
/**
|
|
92
|
+
* Makes the scroll indicators flash momentarily.
|
|
93
|
+
*
|
|
94
|
+
* Useful to indicate to users that there is more content to scroll.
|
|
95
|
+
*
|
|
96
|
+
* @example
|
|
97
|
+
* listRef.current?.flashScrollIndicators();
|
|
98
|
+
*/
|
|
99
|
+
flashScrollIndicators: () => void;
|
|
100
|
+
/**
|
|
101
|
+
* Returns the underlying native scroll view reference.
|
|
102
|
+
*
|
|
103
|
+
* Use this when you need direct access to the native scroll component.
|
|
104
|
+
* This is generally not recommended for regular use.
|
|
105
|
+
*
|
|
106
|
+
* @returns The native scroll view reference
|
|
107
|
+
*/
|
|
108
|
+
getNativeScrollRef: () => CompatScroller | null;
|
|
109
|
+
/**
|
|
110
|
+
* Returns a reference to the scroll responder.
|
|
111
|
+
*
|
|
112
|
+
* Useful for more advanced scroll handling and integrations.
|
|
113
|
+
*
|
|
114
|
+
* @returns The scroll responder
|
|
115
|
+
*/
|
|
116
|
+
getScrollResponder: CompatScroller["getScrollResponder"];
|
|
117
|
+
/**
|
|
118
|
+
* Returns the underlying scrollable node.
|
|
119
|
+
*
|
|
120
|
+
* Primarily used for platform-specific integrations.
|
|
121
|
+
*
|
|
122
|
+
* @returns The scrollable node
|
|
123
|
+
*/
|
|
124
|
+
getScrollableNode: () => any;
|
|
125
|
+
/**
|
|
126
|
+
* Scrolls to the end of the list.
|
|
127
|
+
*
|
|
128
|
+
* @param params - Optional parameters for scrolling
|
|
129
|
+
* @param params.animated - Whether the scroll should be animated (default: false)
|
|
130
|
+
*
|
|
131
|
+
* @example
|
|
132
|
+
* // Animate scroll to the end of the list
|
|
133
|
+
* listRef.current?.scrollToEnd({ animated: true });
|
|
134
|
+
*/
|
|
135
|
+
scrollToEnd: (params?: ScrollToEdgeParams) => void;
|
|
136
|
+
/**
|
|
137
|
+
* Scrolls to the top (or start) of the list.
|
|
138
|
+
*
|
|
139
|
+
* @param params - Optional parameters for scrolling
|
|
140
|
+
* @param params.animated - Whether the scroll should be animated (default: false)
|
|
141
|
+
*
|
|
142
|
+
* @example
|
|
143
|
+
* // Smoothly scroll to the top
|
|
144
|
+
* listRef.current?.scrollToTop({ animated: true });
|
|
145
|
+
*/
|
|
146
|
+
scrollToTop: (params?: ScrollToEdgeParams) => void;
|
|
147
|
+
/**
|
|
148
|
+
* Scrolls to a specific index in the list.
|
|
149
|
+
*
|
|
150
|
+
* This is the most common method to scroll to a particular item.
|
|
151
|
+
*
|
|
152
|
+
* @param params - Parameters for scrolling to index
|
|
153
|
+
* @param params.index - The index of the item to scroll to
|
|
154
|
+
* @param params.animated - Whether the scroll should be animated (default: false)
|
|
155
|
+
* @param params.viewPosition - Position of the item within the visible area:
|
|
156
|
+
* 0 = top/left, 0.5 = center, 1 = bottom/right (default: 0)
|
|
157
|
+
* @param params.viewOffset - Additional offset to apply after viewPosition calculation
|
|
158
|
+
*
|
|
159
|
+
* @returns A Promise that resolves when the scroll operation is complete
|
|
160
|
+
*
|
|
161
|
+
* @example
|
|
162
|
+
* // Scroll to the 5th item (index 4) and center it
|
|
163
|
+
* listRef.current?.scrollToIndex({
|
|
164
|
+
* index: 4,
|
|
165
|
+
* animated: true,
|
|
166
|
+
* viewPosition: 0.5
|
|
167
|
+
* });
|
|
168
|
+
*/
|
|
169
|
+
scrollToIndex: (params: ScrollToIndexParams) => Promise<void>;
|
|
170
|
+
/**
|
|
171
|
+
* Scrolls to a specific item in the list.
|
|
172
|
+
*
|
|
173
|
+
* Similar to scrollToIndex, but works with the item reference instead of its index.
|
|
174
|
+
* Useful when you have a reference to an item but don't know its index.
|
|
175
|
+
*
|
|
176
|
+
* @param params - Parameters for scrolling to item
|
|
177
|
+
* @param params.item - The item object to scroll to
|
|
178
|
+
* @param params.animated - Whether the scroll should be animated (default: false)
|
|
179
|
+
* @param params.viewPosition - Position of the item within the visible area:
|
|
180
|
+
* 0 = top/left, 0.5 = center, 1 = bottom/right (default: 0)
|
|
181
|
+
* @param params.viewOffset - Additional offset to apply after viewPosition calculation
|
|
182
|
+
*
|
|
183
|
+
* @example
|
|
184
|
+
* // Scroll to a specific item
|
|
185
|
+
* const targetItem = data[10];
|
|
186
|
+
* listRef.current?.scrollToItem({
|
|
187
|
+
* item: targetItem,
|
|
188
|
+
* animated: true
|
|
189
|
+
* });
|
|
190
|
+
*/
|
|
191
|
+
scrollToItem: (params: ScrollToItemParams<T>) => void;
|
|
192
|
+
/**
|
|
193
|
+
* Returns the offset of the first item (accounts for header/padding).
|
|
194
|
+
*
|
|
195
|
+
* Useful when implementing custom scroll behavior or calculating positions.
|
|
196
|
+
*
|
|
197
|
+
* @returns The pixel offset of the first item
|
|
198
|
+
*/
|
|
199
|
+
getFirstItemOffset: () => number;
|
|
200
|
+
/**
|
|
201
|
+
* Returns the current viewport dimensions.
|
|
202
|
+
*
|
|
203
|
+
* @returns An object with width and height properties representing viewport size
|
|
204
|
+
*/
|
|
205
|
+
getWindowSize: () => {
|
|
206
|
+
width: number;
|
|
207
|
+
height: number;
|
|
208
|
+
};
|
|
209
|
+
/**
|
|
210
|
+
* Returns the layout information for a specific item.
|
|
211
|
+
*
|
|
212
|
+
* Use this to get position and size information for an item at a given index.
|
|
213
|
+
*
|
|
214
|
+
* @param index - The index of the item to get layout information for
|
|
215
|
+
* @returns Layout information including x, y, width, and height
|
|
216
|
+
*
|
|
217
|
+
* @example
|
|
218
|
+
* const itemLayout = listRef.current?.getLayout(5);
|
|
219
|
+
* console.log(`Item 5 position: (${itemLayout.x}, ${itemLayout.y})`);
|
|
220
|
+
*/
|
|
221
|
+
getLayout: (index: number) => RVLayout | undefined;
|
|
222
|
+
/**
|
|
223
|
+
* Returns the absolute last scroll offset.
|
|
224
|
+
*
|
|
225
|
+
* Useful for implementing custom scroll tracking functionality.
|
|
226
|
+
*
|
|
227
|
+
* @returns The last scroll offset in pixels
|
|
228
|
+
*/
|
|
229
|
+
getAbsoluteLastScrollOffset: () => number;
|
|
230
|
+
/**
|
|
231
|
+
* Returns the dimensions of the child container.
|
|
232
|
+
*
|
|
233
|
+
* @returns An object with width and height properties
|
|
234
|
+
*/
|
|
235
|
+
getChildContainerDimensions: () => {
|
|
236
|
+
width: number;
|
|
237
|
+
height: number;
|
|
238
|
+
};
|
|
239
|
+
/**
|
|
240
|
+
* Marks the list as having been interacted with.
|
|
241
|
+
*
|
|
242
|
+
* Call this method when you want to manually trigger the onViewableItemsChanged
|
|
243
|
+
* callback without an actual scroll event.
|
|
244
|
+
*/
|
|
245
|
+
recordInteraction: () => void;
|
|
246
|
+
/**
|
|
247
|
+
* Returns the currently visible item indices.
|
|
248
|
+
*
|
|
249
|
+
* Use this to determine which items are currently visible to the user.
|
|
250
|
+
*
|
|
251
|
+
* @returns An object with startIndex and endIndex properties
|
|
252
|
+
*
|
|
253
|
+
* @example
|
|
254
|
+
* const { startIndex, endIndex } = listRef.current?.getVisibleIndices();
|
|
255
|
+
* console.log(`Visible items: ${startIndex} to ${endIndex}`);
|
|
256
|
+
*/
|
|
257
|
+
computeVisibleIndices: () => {
|
|
258
|
+
startIndex: number;
|
|
259
|
+
endIndex: number;
|
|
260
|
+
};
|
|
261
|
+
/**
|
|
262
|
+
* Returns the index of the first visible item.
|
|
263
|
+
*
|
|
264
|
+
* Convenience method when you only need the first visible item.
|
|
265
|
+
*
|
|
266
|
+
* @returns The index of the first visible item
|
|
267
|
+
*
|
|
268
|
+
* @example
|
|
269
|
+
* const firstVisibleIndex = listRef.current?.getFirstVisibleIndex();
|
|
270
|
+
*/
|
|
271
|
+
getFirstVisibleIndex: () => number;
|
|
272
|
+
/**
|
|
273
|
+
* Forces recalculation of viewable items (vieability callbacks).
|
|
274
|
+
*
|
|
275
|
+
* Call this after any operation that might affect item visibility but
|
|
276
|
+
* doesn't trigger a scroll event.
|
|
277
|
+
*
|
|
278
|
+
* @example
|
|
279
|
+
* // After manually changing item sizes
|
|
280
|
+
* listRef.current?.recomputeViewableItems();
|
|
281
|
+
*/
|
|
282
|
+
recomputeViewableItems: () => void;
|
|
283
|
+
/**
|
|
284
|
+
* Disables item recycling in preparation for layout animations.
|
|
285
|
+
*
|
|
286
|
+
* Call this before performing layout animations to prevent visual glitches.
|
|
287
|
+
* Remember to reset disableRecycling after animations complete.
|
|
288
|
+
*
|
|
289
|
+
* @example
|
|
290
|
+
* // Before starting layout animations
|
|
291
|
+
* listRef.current?.prepareForLayoutAnimationRender();
|
|
292
|
+
*/
|
|
293
|
+
prepareForLayoutAnimationRender: () => void;
|
|
294
|
+
/**
|
|
295
|
+
* Clears the layout cache on update.
|
|
296
|
+
* Call this when you want to clear the layout cache on update.
|
|
297
|
+
* Can be useful for carousals when orientation changes.
|
|
298
|
+
* This should be called before the render and not in an effect.
|
|
299
|
+
*
|
|
300
|
+
* @example
|
|
301
|
+
* listRef.current?.clearLayoutCacheOnUpdate();
|
|
302
|
+
*/
|
|
303
|
+
clearLayoutCacheOnUpdate: () => void;
|
|
304
|
+
}
|
|
305
|
+
//# sourceMappingURL=FlashListRef.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FlashListRef.d.ts","sourceRoot":"","sources":["../src/FlashListRef.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8CAA8C,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAE1E;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,cAAe,SAAQ,kBAAkB;IACxD,+FAA+F;IAC/F,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gEAAgE;IAChE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IAC1D,oCAAoC;IACpC,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAoB,SAAQ,cAAc;IACzD,yCAAyC;IACzC,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC,CAAE,SAAQ,cAAc;IAC3D,4BAA4B;IAC5B,IAAI,EAAE,CAAC,CAAC;CACT;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B;;OAEG;IACH,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAC5B;;;;;;;;;;;;;;;OAeG;IACH,cAAc,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAEvD;;;;;;;OAOG;IACH,qBAAqB,EAAE,MAAM,IAAI,CAAC;IAElC;;;;;;;OAOG;IACH,kBAAkB,EAAE,MAAM,cAAc,GAAG,IAAI,CAAC;IAEhD;;;;;;OAMG;IACH,kBAAkB,EAAE,cAAc,CAAC,oBAAoB,CAAC,CAAC;IAEzD;;;;;;OAMG;IACH,iBAAiB,EAAE,MAAM,GAAG,CAAC;IAE7B;;;;;;;;;OASG;IACH,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAEnD;;;;;;;;;OASG;IACH,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAEnD;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,aAAa,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9D;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,YAAY,EAAE,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAEtD;;;;;;OAMG;IACH,kBAAkB,EAAE,MAAM,MAAM,CAAC;IAEjC;;;;OAIG;IACH,aAAa,EAAE,MAAM;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAEvD;;;;;;;;;;;OAWG;IACH,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,QAAQ,GAAG,SAAS,CAAC;IAEnD;;;;;;OAMG;IACH,2BAA2B,EAAE,MAAM,MAAM,CAAC;IAE1C;;;;OAIG;IACH,2BAA2B,EAAE,MAAM;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAErE;;;;;OAKG;IACH,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAE9B;;;;;;;;;;OAUG;IACH,qBAAqB,EAAE,MAAM;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAEtE;;;;;;;;;OASG;IACH,oBAAoB,EAAE,MAAM,MAAM,CAAC;IAEnC;;;;;;;;;OASG;IACH,sBAAsB,EAAE,MAAM,IAAI,CAAC;IAEnC;;;;;;;;;OASG;IACH,+BAA+B,EAAE,MAAM,IAAI,CAAC;IAE5C;;;;;;;;OAQG;IACH,wBAAwB,EAAE,MAAM,IAAI,CAAC;CACtC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FlashListRef.js","sourceRoot":"","sources":["../src/FlashListRef.ts"],"names":[],"mappings":""}
|
|
@@ -1,41 +1,18 @@
|
|
|
1
|
-
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
19
|
-
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
20
|
-
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
21
|
-
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
22
|
-
* SOFTWARE.
|
|
23
|
-
*/
|
|
24
|
-
/**
|
|
25
|
-
* This method can be used to trigger scroll events that can be forwarded to an element. Anything that implements scrollable can leverage this.
|
|
26
|
-
* @param scroll The scrollable element
|
|
27
|
-
* @param fromX The x offset to start from
|
|
28
|
-
* @param fromY The y offset to start from
|
|
29
|
-
* @param toX the x offset to end scroll at
|
|
30
|
-
* @param toY the y offset to end scroll at
|
|
31
|
-
* @param speedMultiplier the speed multiplier to use
|
|
32
|
-
* @param cancellable can be used to cancel the scroll
|
|
33
|
-
* @returns Promise that resolves when the scroll is complete
|
|
34
|
-
*/
|
|
35
|
-
export declare function autoScroll(scroll: (x: number, y: number, animated: boolean) => void, fromX: number, fromY: number, toX: number, toY: number, speedMultiplier?: number, cancellable?: Cancellable): Promise<boolean>;
|
|
36
|
-
export declare class Cancellable {
|
|
37
|
-
cancel(): void;
|
|
38
|
-
isCancelled(): boolean;
|
|
39
|
-
_isCancelled: boolean;
|
|
40
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* This method can be used to trigger scroll events that can be forwarded to an element. Anything that implements scrollable can leverage this.
|
|
3
|
+
* @param scroll The scrollable element
|
|
4
|
+
* @param fromX The x offset to start from
|
|
5
|
+
* @param fromY The y offset to start from
|
|
6
|
+
* @param toX the x offset to end scroll at
|
|
7
|
+
* @param toY the y offset to end scroll at
|
|
8
|
+
* @param speedMultiplier the speed multiplier to use
|
|
9
|
+
* @param cancellable can be used to cancel the scroll
|
|
10
|
+
* @returns Promise that resolves when the scroll is complete
|
|
11
|
+
*/
|
|
12
|
+
export declare function autoScroll(scroll: (x: number, y: number, animated: boolean) => void, fromX: number, fromY: number, toX: number, toY: number, speedMultiplier?: number, cancellable?: Cancellable): Promise<boolean>;
|
|
13
|
+
export declare class Cancellable {
|
|
14
|
+
cancel(): void;
|
|
15
|
+
isCancelled(): boolean;
|
|
16
|
+
_isCancelled: boolean;
|
|
17
|
+
}
|
|
41
18
|
//# sourceMappingURL=AutoScrollHelper.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutoScrollHelper.d.ts","sourceRoot":"","sources":["../../src/benchmark/AutoScrollHelper.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"AutoScrollHelper.d.ts","sourceRoot":"","sources":["../../src/benchmark/AutoScrollHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CACxB,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,EACzD,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,eAAe,SAAI,EACnB,WAAW,GAAE,WAA+B,GAC3C,OAAO,CAAC,OAAO,CAAC,CAsClB;AAED,qBAAa,WAAW;IACf,MAAM;IAIN,WAAW,IAAI,OAAO;IAItB,YAAY,UAAS;CAC7B"}
|
|
@@ -1,91 +1,60 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
*
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
var currentTime = Date.now();
|
|
61
|
-
var timeElapsed = currentTime - startTime;
|
|
62
|
-
var distanceToCover = incrementPerMs * timeElapsed;
|
|
63
|
-
startX += distanceToCover * directionMultiplierX;
|
|
64
|
-
startY += distanceToCover * directionMultiplierY;
|
|
65
|
-
scroll(comparatorX(toX, startX), comparatorY(toY, startY), false);
|
|
66
|
-
startTime = currentTime;
|
|
67
|
-
if (comparatorX(toX, startX) !== toX ||
|
|
68
|
-
comparatorY(toY, startY) !== toY) {
|
|
69
|
-
return animationLoop();
|
|
70
|
-
}
|
|
71
|
-
resolve(true);
|
|
72
|
-
});
|
|
73
|
-
};
|
|
74
|
-
animationLoop();
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
exports.autoScroll = autoScroll;
|
|
78
|
-
var Cancellable = /** @class */ (function () {
|
|
79
|
-
function Cancellable() {
|
|
80
|
-
this._isCancelled = false;
|
|
81
|
-
}
|
|
82
|
-
Cancellable.prototype.cancel = function () {
|
|
83
|
-
this._isCancelled = true;
|
|
84
|
-
};
|
|
85
|
-
Cancellable.prototype.isCancelled = function () {
|
|
86
|
-
return this._isCancelled;
|
|
87
|
-
};
|
|
88
|
-
return Cancellable;
|
|
89
|
-
}());
|
|
90
|
-
exports.Cancellable = Cancellable;
|
|
1
|
+
/**
|
|
2
|
+
* This method can be used to trigger scroll events that can be forwarded to an element. Anything that implements scrollable can leverage this.
|
|
3
|
+
* @param scroll The scrollable element
|
|
4
|
+
* @param fromX The x offset to start from
|
|
5
|
+
* @param fromY The y offset to start from
|
|
6
|
+
* @param toX the x offset to end scroll at
|
|
7
|
+
* @param toY the y offset to end scroll at
|
|
8
|
+
* @param speedMultiplier the speed multiplier to use
|
|
9
|
+
* @param cancellable can be used to cancel the scroll
|
|
10
|
+
* @returns Promise that resolves when the scroll is complete
|
|
11
|
+
*/
|
|
12
|
+
export function autoScroll(scroll, fromX, fromY, toX, toY, speedMultiplier = 1, cancellable = new Cancellable()) {
|
|
13
|
+
return new Promise((resolve) => {
|
|
14
|
+
scroll(fromX, fromY, false);
|
|
15
|
+
// Very fast scrolls on Android/iOS typically move content 7px every millisecond.
|
|
16
|
+
const incrementPerMs = 7 * speedMultiplier;
|
|
17
|
+
const directionMultiplierX = toX > fromX ? 1 : -1;
|
|
18
|
+
const directionMultiplierY = toY > fromY ? 1 : -1;
|
|
19
|
+
const comparatorX = toX > fromX ? Math.min : Math.max;
|
|
20
|
+
const comparatorY = toY > fromY ? Math.min : Math.max;
|
|
21
|
+
let startTime = Date.now();
|
|
22
|
+
let startX = fromX;
|
|
23
|
+
let startY = fromY;
|
|
24
|
+
// Computes the number of pixels to scroll in the given time
|
|
25
|
+
// Also invokes the scrollable to update the scroll position
|
|
26
|
+
const animationLoop = () => {
|
|
27
|
+
requestAnimationFrame(() => {
|
|
28
|
+
if (cancellable.isCancelled()) {
|
|
29
|
+
resolve(false);
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
const currentTime = Date.now();
|
|
33
|
+
const timeElapsed = currentTime - startTime;
|
|
34
|
+
const distanceToCover = incrementPerMs * timeElapsed;
|
|
35
|
+
startX += distanceToCover * directionMultiplierX;
|
|
36
|
+
startY += distanceToCover * directionMultiplierY;
|
|
37
|
+
scroll(comparatorX(toX, startX), comparatorY(toY, startY), false);
|
|
38
|
+
startTime = currentTime;
|
|
39
|
+
if (comparatorX(toX, startX) !== toX ||
|
|
40
|
+
comparatorY(toY, startY) !== toY) {
|
|
41
|
+
return animationLoop();
|
|
42
|
+
}
|
|
43
|
+
resolve(true);
|
|
44
|
+
});
|
|
45
|
+
};
|
|
46
|
+
animationLoop();
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
export class Cancellable {
|
|
50
|
+
constructor() {
|
|
51
|
+
this._isCancelled = false;
|
|
52
|
+
}
|
|
53
|
+
cancel() {
|
|
54
|
+
this._isCancelled = true;
|
|
55
|
+
}
|
|
56
|
+
isCancelled() {
|
|
57
|
+
return this._isCancelled;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
91
60
|
//# sourceMappingURL=AutoScrollHelper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutoScrollHelper.js","sourceRoot":"","sources":["../../src/benchmark/AutoScrollHelper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AutoScrollHelper.js","sourceRoot":"","sources":["../../src/benchmark/AutoScrollHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CACxB,MAAyD,EACzD,KAAa,EACb,KAAa,EACb,GAAW,EACX,GAAW,EACX,eAAe,GAAG,CAAC,EACnB,cAA2B,IAAI,WAAW,EAAE;IAE5C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAC5B,iFAAiF;QACjF,MAAM,cAAc,GAAG,CAAC,GAAG,eAAe,CAAC;QAC3C,MAAM,oBAAoB,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClD,MAAM,oBAAoB,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClD,MAAM,WAAW,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QACtD,MAAM,WAAW,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QACtD,IAAI,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC3B,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,4DAA4D;QAC5D,4DAA4D;QAC5D,MAAM,aAAa,GAAG,GAAG,EAAE;YACzB,qBAAqB,CAAC,GAAG,EAAE;gBACzB,IAAI,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC;oBAC9B,OAAO,CAAC,KAAK,CAAC,CAAC;oBACf,OAAO;gBACT,CAAC;gBACD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC/B,MAAM,WAAW,GAAG,WAAW,GAAG,SAAS,CAAC;gBAC5C,MAAM,eAAe,GAAG,cAAc,GAAG,WAAW,CAAC;gBACrD,MAAM,IAAI,eAAe,GAAG,oBAAoB,CAAC;gBACjD,MAAM,IAAI,eAAe,GAAG,oBAAoB,CAAC;gBACjD,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;gBAClE,SAAS,GAAG,WAAW,CAAC;gBACxB,IACE,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,GAAG;oBAChC,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,GAAG,EAChC,CAAC;oBACD,OAAO,aAAa,EAAE,CAAC;gBACzB,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QACF,aAAa,EAAE,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,OAAO,WAAW;IAAxB;QASS,iBAAY,GAAG,KAAK,CAAC;IAC9B,CAAC;IATQ,MAAM;QACX,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC3B,CAAC;IAEM,WAAW;QAChB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;CAGF"}
|