react-native-reanimated-carousel 5.0.0-beta.6 → 5.0.0-beta.7

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.
Files changed (44) hide show
  1. package/lib/commonjs/components/CarouselLayout.js +1 -1
  2. package/lib/commonjs/components/CarouselLayout.js.map +1 -1
  3. package/lib/commonjs/components/ItemRenderer.js +1 -1
  4. package/lib/commonjs/components/ItemRenderer.js.map +1 -1
  5. package/lib/commonjs/components/ScrollViewGesture.js +1 -1
  6. package/lib/commonjs/components/ScrollViewGesture.js.map +1 -1
  7. package/lib/commonjs/hooks/useOnProgressChange.js +1 -1
  8. package/lib/commonjs/hooks/useOnProgressChange.js.map +1 -1
  9. package/lib/commonjs/hooks/usePropsErrorBoundary.js +1 -1
  10. package/lib/commonjs/hooks/usePropsErrorBoundary.js.map +1 -1
  11. package/lib/commonjs/hooks/useVisibleRanges.js +1 -1
  12. package/lib/commonjs/hooks/useVisibleRanges.js.map +1 -1
  13. package/lib/module/components/CarouselLayout.js +1 -1
  14. package/lib/module/components/CarouselLayout.js.map +1 -1
  15. package/lib/module/components/ItemRenderer.js +1 -1
  16. package/lib/module/components/ItemRenderer.js.map +1 -1
  17. package/lib/module/components/ScrollViewGesture.js +1 -1
  18. package/lib/module/components/ScrollViewGesture.js.map +1 -1
  19. package/lib/module/hooks/useOnProgressChange.js +1 -1
  20. package/lib/module/hooks/useOnProgressChange.js.map +1 -1
  21. package/lib/module/hooks/usePropsErrorBoundary.js +1 -1
  22. package/lib/module/hooks/usePropsErrorBoundary.js.map +1 -1
  23. package/lib/module/hooks/useVisibleRanges.js +1 -1
  24. package/lib/module/hooks/useVisibleRanges.js.map +1 -1
  25. package/lib/typescript/components/CarouselLayout.d.ts.map +1 -1
  26. package/lib/typescript/components/ItemRenderer.d.ts +1 -0
  27. package/lib/typescript/components/ItemRenderer.d.ts.map +1 -1
  28. package/lib/typescript/components/ScrollViewGesture.d.ts.map +1 -1
  29. package/lib/typescript/hooks/usePropsErrorBoundary.d.ts.map +1 -1
  30. package/lib/typescript/hooks/useVisibleRanges.d.ts +6 -0
  31. package/lib/typescript/hooks/useVisibleRanges.d.ts.map +1 -1
  32. package/lib/typescript/types.d.ts +1 -1
  33. package/package.json +1 -1
  34. package/src/components/CarouselLayout.tsx +1 -0
  35. package/src/components/ItemRenderer.tsx +11 -6
  36. package/src/components/ScrollViewGesture.test.tsx +155 -0
  37. package/src/components/ScrollViewGesture.tsx +8 -11
  38. package/src/components/issue-899-parallax-reverse-loop.test.tsx +131 -0
  39. package/src/hooks/useOnProgressChange.test.tsx +71 -8
  40. package/src/hooks/useOnProgressChange.ts +1 -1
  41. package/src/hooks/usePropsErrorBoundary.test.tsx +57 -0
  42. package/src/hooks/usePropsErrorBoundary.ts +4 -3
  43. package/src/hooks/useVisibleRanges.tsx +80 -54
  44. package/src/types.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNativeReanimated","require","_reactNativeWorklets","_computedWithAutoFillData","_worklet_3954775798048_init_data","code","location","sourceMap","_worklet_14977781633444_init_data","useOnProgressChange","opts","autoFillData","loop","offsetX","size","rawDataLength","onProgressChange","sizeReady","isFunc","useAnimatedReaction","useOnProgressChangeTs1Factory","_ref","_e","global","Error","useOnProgressChangeTs1","offset","value","ready","__closure","__workletHash","__pluginVersion","__initData","__stackDetails","useOnProgressChangeTs2Factory","_ref2","computedOffsetXValueWithAutoFillData","scheduleOnRN","useOnProgressChangeTs2","_ref3","safeSize","Math","max","min","absoluteProgress","abs"],"sourceRoot":"../../../src","sources":["hooks/useOnProgressChange.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNativeReanimated","require","_reactNativeWorklets","_computedWithAutoFillData","_worklet_3954775798048_init_data","code","location","sourceMap","_worklet_14977781633444_init_data","useOnProgressChange","opts","autoFillData","loop","offsetX","size","rawDataLength","onProgressChange","sizeReady","isFunc","useAnimatedReaction","useOnProgressChangeTs1Factory","_ref","_e","global","Error","useOnProgressChangeTs1","offset","value","ready","__closure","__workletHash","__pluginVersion","__initData","__stackDetails","useOnProgressChangeTs2Factory","_ref2","computedOffsetXValueWithAutoFillData","scheduleOnRN","useOnProgressChangeTs2","_ref3","safeSize","Math","max","min","absoluteProgress","abs"],"sourceRoot":"../../../src","sources":["hooks/useOnProgressChange.ts"],"mappings":"yGACA,IAAAA,sBAAA,CAAAC,OAAA,4BACA,IAAAC,oBAAA,CAAAD,OAAA,0BAGA,IAAAE,yBAAA,CAAAF,OAAA,0CAA6F,IAAAG,gCAAA,EAAAC,IAAA,kIAAAC,QAAA,wHAAAC,SAAA,+aAAAC,iCAAA,EAAAH,IAAA,ysBAAAC,QAAA,wHAAAC,SAAA,63CAEtF,QAAS,CAAAE,mBAAmBA,CACjCC,IAO4C,CAC5C,CACA,GAAQ,CAAAC,YAAY,CAAsED,IAAI,CAAtFC,YAAY,CAAEC,IAAI,CAAgEF,IAAI,CAAxEE,IAAI,CAAEC,OAAO,CAAuDH,IAAI,CAAlEG,OAAO,CAAEC,IAAI,CAAiDJ,IAAI,CAAzDI,IAAI,CAAEC,aAAa,CAAkCL,IAAI,CAAnDK,aAAa,CAAEC,gBAAgB,CAAgBN,IAAI,CAApCM,gBAAgB,CAAEC,SAAS,CAAKP,IAAI,CAAlBO,SAAS,CAMrF,GAAM,CAAAC,MAAM,CAAG,MAAO,CAAAF,gBAAgB,GAAK,UAAU,CAErD,GAAAG,0CAAmB,EACjB,SAAAC,8BAAAC,IAAA,MAAAjB,gCAAA,CAAAiB,IAAA,CAAAjB,gCAAA,CAAiBS,OAAO,CAAAQ,IAAA,CAAPR,OAAO,CAAeI,SAAS,CAAAI,IAAA,CAATJ,SAAS,KAAAK,EAAA,MAAAC,MAAA,CAAAC,KAAA,eAAAC,sBAAA,CAAhD,SAAAA,uBAAA,QAAO,CAAEC,MAAM,CAAEb,OAAO,CAACc,KAAK,CAAEC,KAAK,CAAEX,SAAS,CAACU,KAAM,CAAC,EAAC,CAAAF,sBAAA,CAAAI,SAAA,EAAxChB,OAAO,CAAPA,OAAO,CAAeI,SAAS,CAATA,SAAS,EAAAQ,sBAAA,CAAAK,aAAA,eAAAL,sBAAA,CAAAM,eAAA,SAAAN,sBAAA,CAAAO,UAAA,CAAA5B,gCAAA,CAAAqB,sBAAA,CAAAQ,cAAA,CAAAX,EAAA,QAAAG,sBAAA,EAAhD,EAAArB,gCAAA,CAAAA,gCAAA,CAAiBS,OAAO,CAAPA,OAAO,CAAeI,SAAS,CAATA,SAAS,GAChD,SAAAiB,8BAAAC,KAAA,MAAA3B,iCAAA,CAAA2B,KAAA,CAAA3B,iCAAA,CACmBM,IAAI,CAAAqB,KAAA,CAAJrB,IAAI,CAGTsB,oCAAoC,CAAAD,KAAA,CAApCC,oCAAoC,CAE9CrB,aAAa,CAAAoB,KAAA,CAAbpB,aAAa,CAEbJ,YAAY,CAAAwB,KAAA,CAAZxB,YAAY,CACZC,IAAI,CAAAuB,KAAA,CAAJvB,IAAI,CAWFI,gBAAgB,CAAAmB,KAAA,CAAhBnB,gBAAgB,CACdE,MAAM,CAAAiB,KAAA,CAANjB,MAAM,CACRmB,YAAY,CAAAF,KAAA,CAAZE,YAAY,KAAAf,EAAA,MAAAC,MAAA,CAAAC,KAAA,eAAAc,sBAAA,UAAAA,uBAAAC,KAAA,CAtBK,IAApB,CAAAb,MAAM,CAAAa,KAAA,CAANb,MAAM,CAAEE,KAAK,CAAAW,KAAA,CAALX,KAAK,CACd,GAAM,CAAAY,QAAQ,CAAG1B,IAAI,CAAG,CAAC,CAAGA,IAAI,CAAG,CAAC,CACpC,GAAI,CAACc,KAAK,EAAIY,QAAQ,EAAI,CAAC,CAAE,OAE7B,GAAI,CAAAb,KAAK,CAAGS,oCAAoC,CAAC,CAC/CT,KAAK,CAAED,MAAM,CACbX,aAAa,CAAbA,aAAa,CACbD,IAAI,CAAE0B,QAAQ,CACd7B,YAAY,CAAZA,YAAY,CACZC,IAAI,CAAJA,IACF,CAAC,CAAC,CAEF,GAAI,CAACA,IAAI,CAAE,CACTe,KAAK,CAAGc,IAAI,CAACC,GAAG,CAAC,EAAE,CAAC3B,aAAa,CAAG,CAAC,EAAIyB,QAAQ,CAAC,CAAEC,IAAI,CAACE,GAAG,CAAChB,KAAK,CAAE,CAAC,CAAC,CAAC,CACzE,CAEA,GAAI,CAAAiB,gBAAgB,CAAGH,IAAI,CAACI,GAAG,CAAClB,KAAK,CAAGa,QAAQ,CAAC,CAEjD,GAAIb,KAAK,CAAG,CAAC,CAAEiB,gBAAgB,CAAG7B,aAAa,CAAG6B,gBAAgB,CAElE,GAAI5B,gBAAgB,CAAE,CACpB,GAAIE,MAAM,CAAE,CACVmB,YAAY,CAACrB,gBAAgB,CAAEW,KAAK,CAAEiB,gBAAgB,CAAC,CACzD,CAAC,IAAM,CACJ5B,gBAAgB,CAAyBW,KAAK,CAAGiB,gBAAgB,CACpE,CACF,CACF,CAAC,CAAAN,sBAAA,CAAAT,SAAA,EA1BkBf,IAAI,CAAJA,IAAI,CAGTsB,oCAAoC,CAApCA,oCAAoC,CAE9CrB,aAAa,CAAbA,aAAa,CAEbJ,YAAY,CAAZA,YAAY,CACZC,IAAI,CAAJA,IAAI,CAWFI,gBAAgB,CAAhBA,gBAAgB,CACdE,MAAM,CAANA,MAAM,CACRmB,YAAY,CAAZA,YAAY,EAAAC,sBAAA,CAAAR,aAAA,gBAAAQ,sBAAA,CAAAP,eAAA,SAAAO,sBAAA,CAAAN,UAAA,CAAAxB,iCAAA,CAAA8B,sBAAA,CAAAL,cAAA,CAAAX,EAAA,QAAAgB,sBAAA,EAtBlB,EAAA9B,iCAAA,CAAAA,iCAAA,CACmBM,IAAI,CAAJA,IAAI,CAGTsB,oCAAoC,CAApCA,8DAAoC,CAE9CrB,aAAa,CAAbA,aAAa,CAEbJ,YAAY,CAAZA,YAAY,CACZC,IAAI,CAAJA,IAAI,CAWFI,gBAAgB,CAAhBA,gBAAgB,CACdE,MAAM,CAANA,MAAM,CACRmB,YAAY,CAAZA,iCAAY,GAMlB,CAACzB,IAAI,CAAED,YAAY,CAAEI,aAAa,CAAEC,gBAAgB,CAAEF,IAAI,CAAED,OAAO,CAAEI,SAAS,CAChF,CAAC,CACH","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.usePropsErrorBoundary=usePropsErrorBoundary;var _react=_interopRequireDefault(require("react"));var _reactNative=require("react-native");function usePropsErrorBoundary(props){_react.default.useEffect(function(){var defaultIndex=props.defaultIndex,viewCount=props.dataLength;if(typeof defaultIndex==="number"&&viewCount>0){if(defaultIndex<0||defaultIndex>=viewCount){throw new Error("DefaultIndex must be in the range of data length.");}}if(__DEV__){var style=props.style,vertical=props.vertical,width=props.width,height=props.height,itemWidth=props.itemWidth,itemHeight=props.itemHeight,contentContainerStyle=props.contentContainerStyle;var _ref=_reactNative.StyleSheet.flatten(style)||{},styleWidth=_ref.width,styleHeight=_ref.height;if(typeof width==="number"&&!warnedRefs.width){console.warn("[react-native-reanimated-carousel] The `width` prop is deprecated. Please use `style={{ width: ... }}` instead.");warnedRefs.width=true;}if(typeof height==="number"&&!warnedRefs.height){console.warn("[react-native-reanimated-carousel] The `height` prop is deprecated. Please use `style={{ height: ... }}` instead.");warnedRefs.height=true;}var _ref2=_reactNative.StyleSheet.flatten(contentContainerStyle)||{},opacity=_ref2.opacity,transform=_ref2.transform;if((opacity!==undefined||transform!==undefined)&&!warnedRefs.conflict){console.warn("[react-native-reanimated-carousel] Do not set 'opacity' or 'transform' on 'contentContainerStyle' as it may conflict with animations.");warnedRefs.conflict=true;}var hasHorizontalContainerSize=typeof styleWidth==="number"||typeof width==="number";var hasVerticalContainerSize=typeof styleHeight==="number"||typeof height==="number";if(!vertical&&!hasHorizontalContainerSize&&!warnedRefs.horizontal){console.warn("[react-native-reanimated-carousel] Horizontal mode did not specify `width` in `style`, will fall back to automatic measurement mode.");warnedRefs.horizontal=true;}if(vertical&&!hasVerticalContainerSize&&!warnedRefs.vertical){console.warn("[react-native-reanimated-carousel] Vertical mode did not specify `height` in `style`, will fall back to automatic measurement mode.");warnedRefs.vertical=true;}if(!vertical&&typeof itemWidth==="number"&&!hasHorizontalContainerSize&&!warnedRefs.itemWidth){console.warn("[react-native-reanimated-carousel] `itemWidth` sets the snapping page size, not the container width. Consider setting container width via `style` (e.g. `style={{ width: '100%' }}` or `flex: 1`).");warnedRefs.itemWidth=true;}if(vertical&&typeof itemHeight==="number"&&!hasVerticalContainerSize&&!warnedRefs.itemHeight){console.warn("[react-native-reanimated-carousel] `itemHeight` sets the snapping page size, not the container height. Consider setting container height via `style` (e.g. `style={{ height: '100%' }}` or `flex: 1`).");warnedRefs.itemHeight=true;}}},[props]);}var warnedRefs={horizontal:false,vertical:false,width:false,height:false,conflict:false,itemWidth:false,itemHeight:false};
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.usePropsErrorBoundary=usePropsErrorBoundary;var _react=_interopRequireDefault(require("react"));var _reactNative=require("react-native");function usePropsErrorBoundary(props){_react.default.useEffect(function(){var defaultIndex=props.defaultIndex,viewCount=props.dataLength;if(typeof defaultIndex==="number"&&viewCount>0){if(defaultIndex<0||defaultIndex>=viewCount){throw new Error("DefaultIndex must be in the range of data length.");}}if(__DEV__){var style=props.style,vertical=props.vertical,width=props.width,height=props.height,itemWidth=props.itemWidth,itemHeight=props.itemHeight,contentContainerStyle=props.contentContainerStyle;var _ref=_reactNative.StyleSheet.flatten(style)||{},styleWidth=_ref.width,styleHeight=_ref.height,flex=_ref.flex;if(typeof width==="number"&&!warnedRefs.width){console.warn("[react-native-reanimated-carousel] The `width` prop is deprecated. Please use `style={{ width: ... }}` instead.");warnedRefs.width=true;}if(typeof height==="number"&&!warnedRefs.height){console.warn("[react-native-reanimated-carousel] The `height` prop is deprecated. Please use `style={{ height: ... }}` instead.");warnedRefs.height=true;}var _ref2=_reactNative.StyleSheet.flatten(contentContainerStyle)||{},opacity=_ref2.opacity,transform=_ref2.transform;if((opacity!==undefined||transform!==undefined)&&!warnedRefs.conflict){console.warn("[react-native-reanimated-carousel] Do not set 'opacity' or 'transform' on 'contentContainerStyle' as it may conflict with animations.");warnedRefs.conflict=true;}var hasFlexibleContainerSize=typeof flex==="number"&&flex>0;var hasHorizontalContainerSize=styleWidth!=null||typeof width==="number"||hasFlexibleContainerSize;var hasVerticalContainerSize=styleHeight!=null||typeof height==="number"||hasFlexibleContainerSize;if(!vertical&&!hasHorizontalContainerSize&&!warnedRefs.horizontal){console.warn("[react-native-reanimated-carousel] Horizontal mode did not specify `width` in `style`, will fall back to automatic measurement mode.");warnedRefs.horizontal=true;}if(vertical&&!hasVerticalContainerSize&&!warnedRefs.vertical){console.warn("[react-native-reanimated-carousel] Vertical mode did not specify `height` in `style`, will fall back to automatic measurement mode.");warnedRefs.vertical=true;}if(!vertical&&typeof itemWidth==="number"&&!hasHorizontalContainerSize&&!warnedRefs.itemWidth){console.warn("[react-native-reanimated-carousel] `itemWidth` sets the snapping page size, not the container width. Consider setting container width via `style` (e.g. `style={{ width: '100%' }}` or `flex: 1`).");warnedRefs.itemWidth=true;}if(vertical&&typeof itemHeight==="number"&&!hasVerticalContainerSize&&!warnedRefs.itemHeight){console.warn("[react-native-reanimated-carousel] `itemHeight` sets the snapping page size, not the container height. Consider setting container height via `style` (e.g. `style={{ height: '100%' }}` or `flex: 1`).");warnedRefs.itemHeight=true;}}},[props]);}var warnedRefs={horizontal:false,vertical:false,width:false,height:false,conflict:false,itemWidth:false,itemHeight:false};
2
2
  //# sourceMappingURL=usePropsErrorBoundary.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","usePropsErrorBoundary","props","React","useEffect","defaultIndex","viewCount","dataLength","Error","__DEV__","style","vertical","width","height","itemWidth","itemHeight","contentContainerStyle","_ref","StyleSheet","flatten","styleWidth","styleHeight","warnedRefs","console","warn","_ref2","opacity","transform","undefined","conflict","hasHorizontalContainerSize","hasVerticalContainerSize","horizontal"],"sourceRoot":"../../../src","sources":["hooks/usePropsErrorBoundary.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","usePropsErrorBoundary","props","React","useEffect","defaultIndex","viewCount","dataLength","Error","__DEV__","style","vertical","width","height","itemWidth","itemHeight","contentContainerStyle","_ref","StyleSheet","flatten","styleWidth","styleHeight","flex","warnedRefs","console","warn","_ref2","opacity","transform","undefined","conflict","hasFlexibleContainerSize","hasHorizontalContainerSize","hasVerticalContainerSize","horizontal"],"sourceRoot":"../../../src","sources":["hooks/usePropsErrorBoundary.ts"],"mappings":"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","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- Object.defineProperty(exports,"__esModule",{value:true});exports.useVisibleRanges=useVisibleRanges;var _react=require("react");var _reactNativeReanimated=require("react-native-reanimated");var _worklet_11788449878648_init_data={code:"function useVisibleRangesTsx1(){const{total,viewSize,windowSize,translation,loop,cachedRanges,isArraysEqual}=this.__closure;if(total<=0){return{negativeRange:[0,0],positiveRange:[0,-1]};}if(!Number.isFinite(viewSize)||viewSize<=0){return{negativeRange:[0,0],positiveRange:[0,Math.min(total-1,windowSize-1)]};}const positiveCount=Math.round(windowSize/2);const negativeCount=windowSize-positiveCount;let currentIndex=Math.round(-translation.value/viewSize);if(!Number.isFinite(currentIndex))currentIndex=0;let newRanges;if(loop&&windowSize>=total){newRanges={negativeRange:[0,0],positiveRange:[0,total-1]};}else if(!loop){currentIndex=Math.max(0,Math.min(total-1,currentIndex));newRanges={negativeRange:[Math.max(0,currentIndex-(windowSize-1)),currentIndex],positiveRange:[currentIndex,Math.min(total-1,currentIndex+(windowSize-1))]};}else{currentIndex=currentIndex<0?currentIndex%total+total:currentIndex;const negativeRange=[(currentIndex-negativeCount+total)%total,(currentIndex-1+total)%total];const positiveRange=[(currentIndex+total)%total,(currentIndex+positiveCount+total)%total];if(negativeRange[0]<total&&negativeRange[0]>negativeRange[1]){negativeRange[1]=total-1;positiveRange[0]=0;}if(positiveRange[0]>positiveRange[1]){negativeRange[1]=total-1;positiveRange[0]=0;}newRanges={negativeRange:negativeRange,positiveRange:positiveRange};}if(cachedRanges.current&&isArraysEqual(cachedRanges.current.negativeRange,newRanges.negativeRange)&&isArraysEqual(cachedRanges.current.positiveRange,newRanges.positiveRange)){return cachedRanges.current;}cachedRanges.current=newRanges;return newRanges;}",location:"/home/runner/work/react-native-reanimated-carousel/react-native-reanimated-carousel/src/hooks/useVisibleRanges.tsx",sourceMap:"{\"version\":3,\"names\":[\"useVisibleRangesTsx1\",\"total\",\"viewSize\",\"windowSize\",\"translation\",\"loop\",\"cachedRanges\",\"isArraysEqual\",\"__closure\",\"negativeRange\",\"positiveRange\",\"Number\",\"isFinite\",\"Math\",\"min\",\"positiveCount\",\"round\",\"negativeCount\",\"currentIndex\",\"value\",\"newRanges\",\"max\",\"current\"],\"sources\":[\"/home/runner/work/react-native-reanimated-carousel/react-native-reanimated-carousel/src/hooks/useVisibleRanges.tsx\"],\"mappings\":\"AA4BiC,SAAAA,oBAAMA,CAAA,QAAAC,KAAA,CAAAC,QAAA,CAAAC,UAAA,CAAAC,WAAA,CAAAC,IAAA,CAAAC,YAAA,CAAAC,aAAA,OAAAC,SAAA,CACnC,GAAIP,KAAK,EAAI,CAAC,CAAE,CACd,MAAO,CACLQ,aAAa,CAAE,CAAC,CAAC,CAAE,CAAC,CAAU,CAC9BC,aAAa,CAAE,CAAC,CAAC,CAAE,CAAC,CAAC,CACvB,CAAC,CACH,CAGA,GAAI,CAACC,MAAM,CAACC,QAAQ,CAACV,QAAQ,CAAC,EAAIA,QAAQ,EAAI,CAAC,CAAE,CAC/C,MAAO,CACLO,aAAa,CAAE,CAAC,CAAC,CAAE,CAAC,CAAU,CAC9BC,aAAa,CAAE,CAAC,CAAC,CAAEG,IAAI,CAACC,GAAG,CAACb,KAAK,CAAG,CAAC,CAAEE,UAAU,CAAG,CAAC,CAAC,CACxD,CAAC,CACH,CAEA,KAAM,CAAAY,aAAa,CAAGF,IAAI,CAACG,KAAK,CAACb,UAAU,CAAG,CAAC,CAAC,CAChD,KAAM,CAAAc,aAAa,CAAGd,UAAU,CAAGY,aAAa,CAEhD,GAAI,CAAAG,YAAY,CAAGL,IAAI,CAACG,KAAK,CAAC,CAACZ,WAAW,CAACe,KAAK,CAAGjB,QAAQ,CAAC,CAC5D,GAAI,CAACS,MAAM,CAACC,QAAQ,CAACM,YAAY,CAAC,CAAEA,YAAY,CAAG,CAAC,CAEpD,GAAI,CAAAE,SAAwB,CAE5B,GAAIf,IAAI,EAAIF,UAAU,EAAIF,KAAK,CAAE,CAC/BmB,SAAS,CAAG,CACVX,aAAa,CAAE,CAAC,CAAC,CAAE,CAAC,CAAC,CACrBC,aAAa,CAAE,CAAC,CAAC,CAAET,KAAK,CAAG,CAAC,CAC9B,CAAC,CACH,CAAC,IAAM,IAAI,CAACI,IAAI,CAAE,CAGhBa,YAAY,CAAGL,IAAI,CAACQ,GAAG,CAAC,CAAC,CAAER,IAAI,CAACC,GAAG,CAACb,KAAK,CAAG,CAAC,CAAEiB,YAAY,CAAC,CAAC,CAI7DE,SAAS,CAAG,CACVX,aAAa,CAAE,CAACI,IAAI,CAACQ,GAAG,CAAC,CAAC,CAAEH,YAAY,EAAIf,UAAU,CAAG,CAAC,CAAC,CAAC,CAAEe,YAAY,CAAC,CAC3ER,aAAa,CAAE,CAACQ,YAAY,CAAEL,IAAI,CAACC,GAAG,CAACb,KAAK,CAAG,CAAC,CAAEiB,YAAY,EAAIf,UAAU,CAAG,CAAC,CAAC,CAAC,CACpF,CAAC,CACH,CAAC,IAAM,CACLe,YAAY,CAAGA,YAAY,CAAG,CAAC,CAAIA,YAAY,CAAGjB,KAAK,CAAIA,KAAK,CAAGiB,YAAY,CAE/E,KAAM,CAAAT,aAAoB,CAAG,CAC3B,CAACS,YAAY,CAAGD,aAAa,CAAGhB,KAAK,EAAIA,KAAK,CAC9C,CAACiB,YAAY,CAAG,CAAC,CAAGjB,KAAK,EAAIA,KAAK,CACnC,CAED,KAAM,CAAAS,aAAoB,CAAG,CAC3B,CAACQ,YAAY,CAAGjB,KAAK,EAAIA,KAAK,CAC9B,CAACiB,YAAY,CAAGH,aAAa,CAAGd,KAAK,EAAIA,KAAK,CAC/C,CAED,GAAIQ,aAAa,CAAC,CAAC,CAAC,CAAGR,KAAK,EAAIQ,aAAa,CAAC,CAAC,CAAC,CAAGA,aAAa,CAAC,CAAC,CAAC,CAAE,CACnEA,aAAa,CAAC,CAAC,CAAC,CAAGR,KAAK,CAAG,CAAC,CAC5BS,aAAa,CAAC,CAAC,CAAC,CAAG,CAAC,CACtB,CACA,GAAIA,aAAa,CAAC,CAAC,CAAC,CAAGA,aAAa,CAAC,CAAC,CAAC,CAAE,CACvCD,aAAa,CAAC,CAAC,CAAC,CAAGR,KAAK,CAAG,CAAC,CAC5BS,aAAa,CAAC,CAAC,CAAC,CAAG,CAAC,CACtB,CAGAU,SAAS,CAAG,CAAEX,aAAa,CAAbA,aAAa,CAAEC,aAAA,CAAAA,aAAc,CAAC,CAC9C,CAEA,GACEJ,YAAY,CAACgB,OAAO,EACpBf,aAAa,CAACD,YAAY,CAACgB,OAAO,CAACb,aAAa,CAAEW,SAAS,CAACX,aAAa,CAAC,EAC1EF,aAAa,CAACD,YAAY,CAACgB,OAAO,CAACZ,aAAa,CAAEU,SAAS,CAACV,aAAa,CAAC,CAC1E,CACA,MAAO,CAAAJ,YAAY,CAACgB,OAAO,CAC7B,CAEAhB,YAAY,CAACgB,OAAO,CAAGF,SAAS,CAChC,MAAO,CAAAA,SAAS,CAClB\",\"ignoreList\":[]}"};function useVisibleRanges(options){var _options$total=options.total,total=_options$total===void 0?0:_options$total,viewSize=options.viewSize,translation=options.translation,_windowSize=options.windowSize,loop=options.loop;var windowSize=typeof _windowSize==="number"&&Number.isFinite(_windowSize)&&_windowSize>0?_windowSize:total;var cachedRanges=(0,_react.useRef)(null);var ranges=(0,_reactNativeReanimated.useDerivedValue)(function useVisibleRangesTsx1Factory(_ref){var _worklet_11788449878648_init_data=_ref._worklet_11788449878648_init_data,total=_ref.total,viewSize=_ref.viewSize,windowSize=_ref.windowSize,translation=_ref.translation,loop=_ref.loop,cachedRanges=_ref.cachedRanges,isArraysEqual=_ref.isArraysEqual;var _e=[new global.Error(),-8,-27];var useVisibleRangesTsx1=function useVisibleRangesTsx1(){if(total<=0){return{negativeRange:[0,0],positiveRange:[0,-1]};}if(!Number.isFinite(viewSize)||viewSize<=0){return{negativeRange:[0,0],positiveRange:[0,Math.min(total-1,windowSize-1)]};}var positiveCount=Math.round(windowSize/2);var negativeCount=windowSize-positiveCount;var currentIndex=Math.round(-translation.value/viewSize);if(!Number.isFinite(currentIndex))currentIndex=0;var newRanges;if(loop&&windowSize>=total){newRanges={negativeRange:[0,0],positiveRange:[0,total-1]};}else if(!loop){currentIndex=Math.max(0,Math.min(total-1,currentIndex));newRanges={negativeRange:[Math.max(0,currentIndex-(windowSize-1)),currentIndex],positiveRange:[currentIndex,Math.min(total-1,currentIndex+(windowSize-1))]};}else{currentIndex=currentIndex<0?currentIndex%total+total:currentIndex;var negativeRange=[(currentIndex-negativeCount+total)%total,(currentIndex-1+total)%total];var positiveRange=[(currentIndex+total)%total,(currentIndex+positiveCount+total)%total];if(negativeRange[0]<total&&negativeRange[0]>negativeRange[1]){negativeRange[1]=total-1;positiveRange[0]=0;}if(positiveRange[0]>positiveRange[1]){negativeRange[1]=total-1;positiveRange[0]=0;}newRanges={negativeRange:negativeRange,positiveRange:positiveRange};}if(cachedRanges.current&&isArraysEqual(cachedRanges.current.negativeRange,newRanges.negativeRange)&&isArraysEqual(cachedRanges.current.positiveRange,newRanges.positiveRange)){return cachedRanges.current;}cachedRanges.current=newRanges;return newRanges;};useVisibleRangesTsx1.__closure={total:total,viewSize:viewSize,windowSize:windowSize,translation:translation,loop:loop,cachedRanges:cachedRanges,isArraysEqual:isArraysEqual};useVisibleRangesTsx1.__workletHash=11788449878648;useVisibleRangesTsx1.__pluginVersion="0.5.2";useVisibleRangesTsx1.__initData=_worklet_11788449878648_init_data;useVisibleRangesTsx1.__stackDetails=_e;return useVisibleRangesTsx1;}({_worklet_11788449878648_init_data:_worklet_11788449878648_init_data,total:total,viewSize:viewSize,windowSize:windowSize,translation:translation,loop:loop,cachedRanges:cachedRanges,isArraysEqual:isArraysEqual}),[loop,total,windowSize,translation,viewSize]);return ranges;}var _worklet_14683962274529_init_data={code:"function isArraysEqual_useVisibleRangesTsx2(a,b){if(a.length!==b.length)return false;return a.every(function(value,index){return value===b[index];});}",location:"/home/runner/work/react-native-reanimated-carousel/react-native-reanimated-carousel/src/hooks/useVisibleRanges.tsx",sourceMap:"{\"version\":3,\"names\":[\"isArraysEqual_useVisibleRangesTsx2\",\"a\",\"b\",\"length\",\"every\",\"value\",\"index\"],\"sources\":[\"/home/runner/work/react-native-reanimated-carousel/react-native-reanimated-carousel/src/hooks/useVisibleRanges.tsx\"],\"mappings\":\"AA6GA,SAAAA,kCAA0DA,CAAAC,CAAA,CAAAC,CAAA,EAExD,GAAID,CAAC,CAACE,MAAM,GAAKD,CAAC,CAACC,MAAM,CAAE,MAAO,MAAK,CAEvC,MAAO,CAAAF,CAAC,CAACG,KAAK,CAAC,SAACC,KAAK,CAAEC,KAAK,QAAK,CAAAD,KAAK,GAAKH,CAAC,CAACI,KAAK,CAAC,GAAC,CACtD\",\"ignoreList\":[]}"};var isArraysEqual=function isArraysEqual_useVisibleRangesTsx2Factory(_ref2){var _worklet_14683962274529_init_data=_ref2._worklet_14683962274529_init_data;var _e=[new global.Error(),1,-27];var isArraysEqual=function isArraysEqual(a,b){if(a.length!==b.length)return false;return a.every(function(value,index){return value===b[index];});};isArraysEqual.__closure={};isArraysEqual.__workletHash=14683962274529;isArraysEqual.__pluginVersion="0.5.2";isArraysEqual.__initData=_worklet_14683962274529_init_data;isArraysEqual.__stackDetails=_e;return isArraysEqual;}({_worklet_14683962274529_init_data:_worklet_14683962274529_init_data});
1
+ Object.defineProperty(exports,"__esModule",{value:true});exports.computeVisibleRanges=void 0;exports.useVisibleRanges=useVisibleRanges;var _react=require("react");var _reactNativeReanimated=require("react-native-reanimated");var _worklet_857738204961_init_data={code:"function normalizeWindowSize_useVisibleRangesTsx1(total,windowSize){return typeof windowSize===\"number\"&&Number.isFinite(windowSize)&&windowSize>0?windowSize:total;}",location:"/home/runner/work/react-native-reanimated-carousel/react-native-reanimated-carousel/src/hooks/useVisibleRanges.tsx",sourceMap:"{\"version\":3,\"names\":[\"normalizeWindowSize_useVisibleRangesTsx1\",\"total\",\"windowSize\",\"Number\",\"isFinite\"],\"sources\":[\"/home/runner/work/react-native-reanimated-carousel/react-native-reanimated-carousel/src/hooks/useVisibleRanges.tsx\"],\"mappings\":\"AAaA,SAAAA,wCAAiEA,CAAAC,KAAA,CAAAC,UAAA,EAG/D,MAAO,OAAO,CAAAA,UAAU,GAAK,QAAQ,EAAIC,MAAM,CAACC,QAAQ,CAACF,UAAU,CAAC,EAAIA,UAAU,CAAG,CAAC,CAClFA,UAAU,CACVD,KAAK,CACX\",\"ignoreList\":[]}"};var normalizeWindowSize=function normalizeWindowSize_useVisibleRangesTsx1Factory(_ref){var _worklet_857738204961_init_data=_ref._worklet_857738204961_init_data;var _e=[new global.Error(),1,-27];var normalizeWindowSize=function normalizeWindowSize(total,windowSize){return typeof windowSize==="number"&&Number.isFinite(windowSize)&&windowSize>0?windowSize:total;};normalizeWindowSize.__closure={};normalizeWindowSize.__workletHash=857738204961;normalizeWindowSize.__pluginVersion="0.5.2";normalizeWindowSize.__initData=_worklet_857738204961_init_data;normalizeWindowSize.__stackDetails=_e;return normalizeWindowSize;}({_worklet_857738204961_init_data:_worklet_857738204961_init_data});var _worklet_10467342159726_init_data={code:"function normalizeLoopIndex_useVisibleRangesTsx2(currentIndex,total){return currentIndex<0?currentIndex%total+total:currentIndex;}",location:"/home/runner/work/react-native-reanimated-carousel/react-native-reanimated-carousel/src/hooks/useVisibleRanges.tsx",sourceMap:"{\"version\":3,\"names\":[\"normalizeLoopIndex_useVisibleRangesTsx2\",\"currentIndex\",\"total\"],\"sources\":[\"/home/runner/work/react-native-reanimated-carousel/react-native-reanimated-carousel/src/hooks/useVisibleRanges.tsx\"],\"mappings\":\"AAqBA,SAAAA,uCAA+DA,CAAAC,YAAE,CAAAC,KAAA,EAG/D,MAAO,CAAAD,YAAY,CAAG,CAAC,CAAIA,YAAY,CAAGC,KAAK,CAAIA,KAAK,CAAGD,YAAY,CACzE\",\"ignoreList\":[]}"};var normalizeLoopIndex=function normalizeLoopIndex_useVisibleRangesTsx2Factory(_ref2){var _worklet_10467342159726_init_data=_ref2._worklet_10467342159726_init_data;var _e=[new global.Error(),1,-27];var normalizeLoopIndex=function normalizeLoopIndex(currentIndex,total){return currentIndex<0?currentIndex%total+total:currentIndex;};normalizeLoopIndex.__closure={};normalizeLoopIndex.__workletHash=10467342159726;normalizeLoopIndex.__pluginVersion="0.5.2";normalizeLoopIndex.__initData=_worklet_10467342159726_init_data;normalizeLoopIndex.__stackDetails=_e;return normalizeLoopIndex;}({_worklet_10467342159726_init_data:_worklet_10467342159726_init_data});var _worklet_12590357434072_init_data={code:"function computeVisibleRanges_useVisibleRangesTsx3(params){const{normalizeWindowSize,normalizeLoopIndex}=this.__closure;const{total=0,loop:loop}=params;const windowSize=normalizeWindowSize(total,params.windowSize);if(total<=0){return{negativeRange:[0,0],positiveRange:[0,-1]};}if(loop&&windowSize>=total){return{negativeRange:[0,0],positiveRange:[0,total-1]};}const positiveCount=Math.round(windowSize/2);const negativeCount=windowSize-positiveCount;let currentIndex=params.currentIndex;if(!Number.isFinite(currentIndex))currentIndex=0;if(!loop){currentIndex=Math.max(0,Math.min(total-1,currentIndex));return{negativeRange:[Math.max(0,currentIndex-(windowSize-1)),currentIndex],positiveRange:[currentIndex,Math.min(total-1,currentIndex+(windowSize-1))]};}currentIndex=normalizeLoopIndex(currentIndex,total);const negativeRange=[(currentIndex-negativeCount+total)%total,(currentIndex-1+total)%total];const positiveRange=[(currentIndex+total)%total,(currentIndex+positiveCount+total)%total];if(negativeRange[0]<total&&negativeRange[0]>negativeRange[1]){negativeRange[1]=total-1;positiveRange[0]=0;}if(positiveRange[0]>positiveRange[1]){negativeRange[1]=total-1;positiveRange[0]=0;}return{negativeRange:negativeRange,positiveRange:positiveRange};}",location:"/home/runner/work/react-native-reanimated-carousel/react-native-reanimated-carousel/src/hooks/useVisibleRanges.tsx",sourceMap:"{\"version\":3,\"names\":[\"computeVisibleRanges_useVisibleRangesTsx3\",\"params\",\"normalizeWindowSize\",\"normalizeLoopIndex\",\"__closure\",\"total\",\"loop\",\"windowSize\",\"negativeRange\",\"positiveRange\",\"positiveCount\",\"Math\",\"round\",\"negativeCount\",\"currentIndex\",\"Number\",\"isFinite\",\"max\",\"min\"],\"sources\":[\"/home/runner/work/react-native-reanimated-carousel/react-native-reanimated-carousel/src/hooks/useVisibleRanges.tsx\"],\"mappings\":\"AA2BO,SAAAA,yCAKWA,CAAAC,MAAA,QAAAC,mBAAA,CAAAC,kBAAA,OAAAC,SAAA,CAGhB,KAAM,CAAEC,KAAK,CAAG,CAAC,CAAEC,IAAA,CAAAA,IAAK,CAAC,CAAGL,MAAM,CAClC,KAAM,CAAAM,UAAU,CAAGL,mBAAmB,CAACG,KAAK,CAAEJ,MAAM,CAACM,UAAU,CAAC,CAEhE,GAAIF,KAAK,EAAI,CAAC,CAAE,CACd,MAAO,CACLG,aAAa,CAAE,CAAC,CAAC,CAAE,CAAC,CAAC,CACrBC,aAAa,CAAE,CAAC,CAAC,CAAE,CAAC,CAAC,CACvB,CAAC,CACH,CAEA,GAAIH,IAAI,EAAIC,UAAU,EAAIF,KAAK,CAAE,CAC/B,MAAO,CACLG,aAAa,CAAE,CAAC,CAAC,CAAE,CAAC,CAAC,CACrBC,aAAa,CAAE,CAAC,CAAC,CAAEJ,KAAK,CAAG,CAAC,CAC9B,CAAC,CACH,CAEA,KAAM,CAAAK,aAAa,CAAGC,IAAI,CAACC,KAAK,CAACL,UAAU,CAAG,CAAC,CAAC,CAChD,KAAM,CAAAM,aAAa,CAAGN,UAAU,CAAGG,aAAa,CAEhD,GAAI,CAAAI,YAAY,CAAGb,MAAM,CAACa,YAAY,CACtC,GAAI,CAACC,MAAM,CAACC,QAAQ,CAACF,YAAY,CAAC,CAAEA,YAAY,CAAG,CAAC,CAEpD,GAAI,CAACR,IAAI,CAAE,CACTQ,YAAY,CAAGH,IAAI,CAACM,GAAG,CAAC,CAAC,CAAEN,IAAI,CAACO,GAAG,CAACb,KAAK,CAAG,CAAC,CAAES,YAAY,CAAC,CAAC,CAC7D,MAAO,CACLN,aAAa,CAAE,CAACG,IAAI,CAACM,GAAG,CAAC,CAAC,CAAEH,YAAY,EAAIP,UAAU,CAAG,CAAC,CAAC,CAAC,CAAEO,YAAY,CAAC,CAC3EL,aAAa,CAAE,CAACK,YAAY,CAAEH,IAAI,CAACO,GAAG,CAACb,KAAK,CAAG,CAAC,CAAES,YAAY,EAAIP,UAAU,CAAG,CAAC,CAAC,CAAC,CACpF,CAAC,CACH,CAEAO,YAAY,CAAGX,kBAAkB,CAACW,YAAY,CAAET,KAAK,CAAC,CAEtD,KAAM,CAAAG,aAAoB,CAAG,CAC3B,CAACM,YAAY,CAAGD,aAAa,CAAGR,KAAK,EAAIA,KAAK,CAC9C,CAACS,YAAY,CAAG,CAAC,CAAGT,KAAK,EAAIA,KAAK,CACnC,CAED,KAAM,CAAAI,aAAoB,CAAG,CAC3B,CAACK,YAAY,CAAGT,KAAK,EAAIA,KAAK,CAC9B,CAACS,YAAY,CAAGJ,aAAa,CAAGL,KAAK,EAAIA,KAAK,CAC/C,CAED,GAAIG,aAAa,CAAC,CAAC,CAAC,CAAGH,KAAK,EAAIG,aAAa,CAAC,CAAC,CAAC,CAAGA,aAAa,CAAC,CAAC,CAAC,CAAE,CACnEA,aAAa,CAAC,CAAC,CAAC,CAAGH,KAAK,CAAG,CAAC,CAC5BI,aAAa,CAAC,CAAC,CAAC,CAAG,CAAC,CACtB,CACA,GAAIA,aAAa,CAAC,CAAC,CAAC,CAAGA,aAAa,CAAC,CAAC,CAAC,CAAE,CACvCD,aAAa,CAAC,CAAC,CAAC,CAAGH,KAAK,CAAG,CAAC,CAC5BI,aAAa,CAAC,CAAC,CAAC,CAAG,CAAC,CACtB,CAEA,MAAO,CAAED,aAAa,CAAbA,aAAa,CAAEC,aAAA,CAAAA,aAAc,CAAC,CACzC\",\"ignoreList\":[]}"};var computeVisibleRanges=exports.computeVisibleRanges=function computeVisibleRanges_useVisibleRangesTsx3Factory(_ref3){var _worklet_12590357434072_init_data=_ref3._worklet_12590357434072_init_data,normalizeWindowSize=_ref3.normalizeWindowSize,normalizeLoopIndex=_ref3.normalizeLoopIndex;var _e=[new global.Error(),-3,-27];var computeVisibleRanges=function computeVisibleRanges(params){var _params$total=params.total,total=_params$total===void 0?0:_params$total,loop=params.loop;var windowSize=normalizeWindowSize(total,params.windowSize);if(total<=0){return{negativeRange:[0,0],positiveRange:[0,-1]};}if(loop&&windowSize>=total){return{negativeRange:[0,0],positiveRange:[0,total-1]};}var positiveCount=Math.round(windowSize/2);var negativeCount=windowSize-positiveCount;var currentIndex=params.currentIndex;if(!Number.isFinite(currentIndex))currentIndex=0;if(!loop){currentIndex=Math.max(0,Math.min(total-1,currentIndex));return{negativeRange:[Math.max(0,currentIndex-(windowSize-1)),currentIndex],positiveRange:[currentIndex,Math.min(total-1,currentIndex+(windowSize-1))]};}currentIndex=normalizeLoopIndex(currentIndex,total);var negativeRange=[(currentIndex-negativeCount+total)%total,(currentIndex-1+total)%total];var positiveRange=[(currentIndex+total)%total,(currentIndex+positiveCount+total)%total];if(negativeRange[0]<total&&negativeRange[0]>negativeRange[1]){negativeRange[1]=total-1;positiveRange[0]=0;}if(positiveRange[0]>positiveRange[1]){negativeRange[1]=total-1;positiveRange[0]=0;}return{negativeRange:negativeRange,positiveRange:positiveRange};};computeVisibleRanges.__closure={normalizeWindowSize:normalizeWindowSize,normalizeLoopIndex:normalizeLoopIndex};computeVisibleRanges.__workletHash=12590357434072;computeVisibleRanges.__pluginVersion="0.5.2";computeVisibleRanges.__initData=_worklet_12590357434072_init_data;computeVisibleRanges.__stackDetails=_e;return computeVisibleRanges;}({_worklet_12590357434072_init_data:_worklet_12590357434072_init_data,normalizeWindowSize:normalizeWindowSize,normalizeLoopIndex:normalizeLoopIndex});var _worklet_6485309998197_init_data={code:"function useVisibleRangesTsx4(){const{total,computeVisibleRanges,windowSize,loop,viewSize,translation,cachedRanges,isArraysEqual}=this.__closure;if(total<=0){return computeVisibleRanges({total:total,currentIndex:0,windowSize:windowSize,loop:loop});}if(!Number.isFinite(viewSize)||viewSize<=0){return{negativeRange:[0,0],positiveRange:[0,Math.min(total-1,windowSize-1)]};}let currentIndex=Math.round(-translation.value/viewSize);if(!Number.isFinite(currentIndex))currentIndex=0;const newRanges=computeVisibleRanges({total:total,windowSize:windowSize,currentIndex:currentIndex,loop:loop});if(cachedRanges.current&&isArraysEqual(cachedRanges.current.negativeRange,newRanges.negativeRange)&&isArraysEqual(cachedRanges.current.positiveRange,newRanges.positiveRange)){return cachedRanges.current;}cachedRanges.current=newRanges;return newRanges;}",location:"/home/runner/work/react-native-reanimated-carousel/react-native-reanimated-carousel/src/hooks/useVisibleRanges.tsx",sourceMap:"{\"version\":3,\"names\":[\"useVisibleRangesTsx4\",\"total\",\"computeVisibleRanges\",\"windowSize\",\"loop\",\"viewSize\",\"translation\",\"cachedRanges\",\"isArraysEqual\",\"__closure\",\"currentIndex\",\"Number\",\"isFinite\",\"negativeRange\",\"positiveRange\",\"Math\",\"min\",\"round\",\"value\",\"newRanges\",\"current\"],\"sources\":[\"/home/runner/work/react-native-reanimated-carousel/react-native-reanimated-carousel/src/hooks/useVisibleRanges.tsx\"],\"mappings\":\"AAsGiC,SAAAA,oBAAMA,CAAA,QAAAC,KAAA,CAAAC,oBAAA,CAAAC,UAAA,CAAAC,IAAA,CAAAC,QAAA,CAAAC,WAAA,CAAAC,YAAA,CAAAC,aAAA,OAAAC,SAAA,CACnC,GAAIR,KAAK,EAAI,CAAC,CAAE,CACd,MAAO,CAAAC,oBAAoB,CAAC,CAAED,KAAK,CAALA,KAAK,CAAES,YAAY,CAAE,CAAC,CAAEP,UAAU,CAAVA,UAAU,CAAEC,IAAA,CAAAA,IAAK,CAAC,CAAC,CAC3E,CAGA,GAAI,CAACO,MAAM,CAACC,QAAQ,CAACP,QAAQ,CAAC,EAAIA,QAAQ,EAAI,CAAC,CAAE,CAC/C,MAAO,CACLQ,aAAa,CAAE,CAAC,CAAC,CAAE,CAAC,CAAU,CAC9BC,aAAa,CAAE,CAAC,CAAC,CAAEC,IAAI,CAACC,GAAG,CAACf,KAAK,CAAG,CAAC,CAAEE,UAAU,CAAG,CAAC,CAAC,CACxD,CAAC,CACH,CAEA,GAAI,CAAAO,YAAY,CAAGK,IAAI,CAACE,KAAK,CAAC,CAACX,WAAW,CAACY,KAAK,CAAGb,QAAQ,CAAC,CAC5D,GAAI,CAACM,MAAM,CAACC,QAAQ,CAACF,YAAY,CAAC,CAAEA,YAAY,CAAG,CAAC,CAEpD,KAAM,CAAAS,SAAS,CAAGjB,oBAAoB,CAAC,CAAED,KAAK,CAALA,KAAK,CAAEE,UAAU,CAAVA,UAAU,CAAEO,YAAY,CAAZA,YAAY,CAAEN,IAAA,CAAAA,IAAK,CAAC,CAAC,CAEjF,GACEG,YAAY,CAACa,OAAO,EACpBZ,aAAa,CAACD,YAAY,CAACa,OAAO,CAACP,aAAa,CAAEM,SAAS,CAACN,aAAa,CAAC,EAC1EL,aAAa,CAACD,YAAY,CAACa,OAAO,CAACN,aAAa,CAAEK,SAAS,CAACL,aAAa,CAAC,CAC1E,CACA,MAAO,CAAAP,YAAY,CAACa,OAAO,CAC7B,CAEAb,YAAY,CAACa,OAAO,CAAGD,SAAS,CAChC,MAAO,CAAAA,SAAS,CAClB\",\"ignoreList\":[]}"};function useVisibleRanges(options){var _options$total=options.total,total=_options$total===void 0?0:_options$total,viewSize=options.viewSize,translation=options.translation,_windowSize=options.windowSize,loop=options.loop;var windowSize=normalizeWindowSize(total,_windowSize);var cachedRanges=(0,_react.useRef)(null);var ranges=(0,_reactNativeReanimated.useDerivedValue)(function useVisibleRangesTsx4Factory(_ref4){var _worklet_6485309998197_init_data=_ref4._worklet_6485309998197_init_data,total=_ref4.total,computeVisibleRanges=_ref4.computeVisibleRanges,windowSize=_ref4.windowSize,loop=_ref4.loop,viewSize=_ref4.viewSize,translation=_ref4.translation,cachedRanges=_ref4.cachedRanges,isArraysEqual=_ref4.isArraysEqual;var _e=[new global.Error(),-9,-27];var useVisibleRangesTsx4=function useVisibleRangesTsx4(){if(total<=0){return computeVisibleRanges({total:total,currentIndex:0,windowSize:windowSize,loop:loop});}if(!Number.isFinite(viewSize)||viewSize<=0){return{negativeRange:[0,0],positiveRange:[0,Math.min(total-1,windowSize-1)]};}var currentIndex=Math.round(-translation.value/viewSize);if(!Number.isFinite(currentIndex))currentIndex=0;var newRanges=computeVisibleRanges({total:total,windowSize:windowSize,currentIndex:currentIndex,loop:loop});if(cachedRanges.current&&isArraysEqual(cachedRanges.current.negativeRange,newRanges.negativeRange)&&isArraysEqual(cachedRanges.current.positiveRange,newRanges.positiveRange)){return cachedRanges.current;}cachedRanges.current=newRanges;return newRanges;};useVisibleRangesTsx4.__closure={total:total,computeVisibleRanges:computeVisibleRanges,windowSize:windowSize,loop:loop,viewSize:viewSize,translation:translation,cachedRanges:cachedRanges,isArraysEqual:isArraysEqual};useVisibleRangesTsx4.__workletHash=6485309998197;useVisibleRangesTsx4.__pluginVersion="0.5.2";useVisibleRangesTsx4.__initData=_worklet_6485309998197_init_data;useVisibleRangesTsx4.__stackDetails=_e;return useVisibleRangesTsx4;}({_worklet_6485309998197_init_data:_worklet_6485309998197_init_data,total:total,computeVisibleRanges:computeVisibleRanges,windowSize:windowSize,loop:loop,viewSize:viewSize,translation:translation,cachedRanges:cachedRanges,isArraysEqual:isArraysEqual}),[loop,total,windowSize,translation,viewSize]);return ranges;}var _worklet_1694653230246_init_data={code:"function isArraysEqual_useVisibleRangesTsx5(a,b){if(a.length!==b.length)return false;return a.every(function(value,index){return value===b[index];});}",location:"/home/runner/work/react-native-reanimated-carousel/react-native-reanimated-carousel/src/hooks/useVisibleRanges.tsx",sourceMap:"{\"version\":3,\"names\":[\"isArraysEqual_useVisibleRangesTsx5\",\"a\",\"b\",\"length\",\"every\",\"value\",\"index\"],\"sources\":[\"/home/runner/work/react-native-reanimated-carousel/react-native-reanimated-carousel/src/hooks/useVisibleRanges.tsx\"],\"mappings\":\"AAuIA,SAAAA,kCAA0DA,CAAAC,CAAA,CAAAC,CAAA,EAExD,GAAID,CAAC,CAACE,MAAM,GAAKD,CAAC,CAACC,MAAM,CAAE,MAAO,MAAK,CAEvC,MAAO,CAAAF,CAAC,CAACG,KAAK,CAAC,SAACC,KAAK,CAAEC,KAAK,QAAK,CAAAD,KAAK,GAAKH,CAAC,CAACI,KAAK,CAAC,GAAC,CACtD\",\"ignoreList\":[]}"};var isArraysEqual=function isArraysEqual_useVisibleRangesTsx5Factory(_ref5){var _worklet_1694653230246_init_data=_ref5._worklet_1694653230246_init_data;var _e=[new global.Error(),1,-27];var isArraysEqual=function isArraysEqual(a,b){if(a.length!==b.length)return false;return a.every(function(value,index){return value===b[index];});};isArraysEqual.__closure={};isArraysEqual.__workletHash=1694653230246;isArraysEqual.__pluginVersion="0.5.2";isArraysEqual.__initData=_worklet_1694653230246_init_data;isArraysEqual.__stackDetails=_e;return isArraysEqual;}({_worklet_1694653230246_init_data:_worklet_1694653230246_init_data});
2
2
  //# sourceMappingURL=useVisibleRanges.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNativeReanimated","_worklet_11788449878648_init_data","code","location","sourceMap","useVisibleRanges","options","_options$total","total","viewSize","translation","_windowSize","windowSize","loop","Number","isFinite","cachedRanges","useRef","ranges","useDerivedValue","useVisibleRangesTsx1Factory","_ref","isArraysEqual","_e","global","Error","useVisibleRangesTsx1","negativeRange","positiveRange","Math","min","positiveCount","round","negativeCount","currentIndex","value","newRanges","max","current","__closure","__workletHash","__pluginVersion","__initData","__stackDetails","_worklet_14683962274529_init_data","isArraysEqual_useVisibleRangesTsx2Factory","_ref2","a","b","length","every","index"],"sourceRoot":"../../../src","sources":["hooks/useVisibleRanges.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNativeReanimated","_worklet_857738204961_init_data","code","location","sourceMap","normalizeWindowSize","normalizeWindowSize_useVisibleRangesTsx1Factory","_ref","_e","global","Error","total","windowSize","Number","isFinite","__closure","__workletHash","__pluginVersion","__initData","__stackDetails","_worklet_10467342159726_init_data","normalizeLoopIndex","normalizeLoopIndex_useVisibleRangesTsx2Factory","_ref2","currentIndex","_worklet_12590357434072_init_data","computeVisibleRanges","exports","computeVisibleRanges_useVisibleRangesTsx3Factory","_ref3","params","_params$total","loop","negativeRange","positiveRange","positiveCount","Math","round","negativeCount","max","min","_worklet_6485309998197_init_data","useVisibleRanges","options","_options$total","viewSize","translation","_windowSize","cachedRanges","useRef","ranges","useDerivedValue","useVisibleRangesTsx4Factory","_ref4","isArraysEqual","useVisibleRangesTsx4","value","newRanges","current","_worklet_1694653230246_init_data","isArraysEqual_useVisibleRangesTsx5Factory","_ref5","a","b","length","every","index"],"sourceRoot":"../../../src","sources":["hooks/useVisibleRanges.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"CarouselLayout.d.ts","sourceRoot":"","sources":["../../../src/components/CarouselLayout.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAc,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAS1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAK7C,MAAM,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC;AAE3D,wBAAgB,0BAA0B,CAAC,MAAM,EAAE;IACjD,cAAc,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;;;EAmBA;AAED,eAAO,MAAM,cAAc,yEA8MzB,CAAC"}
1
+ {"version":3,"file":"CarouselLayout.d.ts","sourceRoot":"","sources":["../../../src/components/CarouselLayout.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAc,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAS1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAK7C,MAAM,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC;AAE3D,wBAAgB,0BAA0B,CAAC,MAAM,EAAE;IACjD,cAAc,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;;;EAmBA;AAED,eAAO,MAAM,cAAc,yEA+MzB,CAAC"}
@@ -10,6 +10,7 @@ interface Props {
10
10
  loop: boolean;
11
11
  size: number;
12
12
  windowSize?: number;
13
+ defaultIndex: number;
13
14
  autoFillData: boolean;
14
15
  offsetX: SharedValue<number>;
15
16
  handlerOffset: SharedValue<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"ItemRenderer.d.ts","sourceRoot":"","sources":["../../../src/components/ItemRenderer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAI3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAKpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAGnD,UAAU,KAAK;IACb,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7B,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACnC,YAAY,EAAE,eAAe,CAAC;IAC9B,UAAU,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACpC,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC;CAC/D;AAED,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,KAAK,CA+ElC,CAAC"}
1
+ {"version":3,"file":"ItemRenderer.d.ts","sourceRoot":"","sources":["../../../src/components/ItemRenderer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAI3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAKpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAGnD,UAAU,KAAK;IACb,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7B,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACnC,YAAY,EAAE,eAAe,CAAC;IAC9B,UAAU,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACpC,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC;CAC/D;AAED,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,KAAK,CAmFlC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ScrollViewGesture.d.ts","sourceRoot":"","sources":["../../../src/components/ScrollViewGesture.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,KAAsB,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAe5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAU3D,UAAU,KAAK;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC1C,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB;AA4eD,eAAO,MAAM,iBAAiB,oCAAqB,CAAC"}
1
+ {"version":3,"file":"ScrollViewGesture.d.ts","sourceRoot":"","sources":["../../../src/components/ScrollViewGesture.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,KAAsB,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAa5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAU3D,UAAU,KAAK;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC1C,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB;AA2eD,eAAO,MAAM,iBAAiB,oCAAqB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"usePropsErrorBoundary.d.ts","sourceRoot":"","sources":["../../../src/hooks/usePropsErrorBoundary.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,cAAc,GAAG;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,QAkFnF"}
1
+ {"version":3,"file":"usePropsErrorBoundary.d.ts","sourceRoot":"","sources":["../../../src/hooks/usePropsErrorBoundary.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,cAAc,GAAG;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,QAmFnF"}
@@ -5,6 +5,12 @@ export interface VisibleRanges {
5
5
  positiveRange: Range;
6
6
  }
7
7
  export type IVisibleRanges = SharedValue<VisibleRanges>;
8
+ export declare function computeVisibleRanges(params: {
9
+ total: number;
10
+ windowSize?: number;
11
+ currentIndex: number;
12
+ loop?: boolean;
13
+ }): VisibleRanges;
8
14
  export declare function useVisibleRanges(options: {
9
15
  total: number;
10
16
  viewSize: number;
@@ -1 +1 @@
1
- {"version":3,"file":"useVisibleRanges.d.ts","sourceRoot":"","sources":["../../../src/hooks/useVisibleRanges.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAG3D,KAAK,KAAK,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE9B,MAAM,WAAW,aAAa;IAC5B,aAAa,EAAE,KAAK,CAAC;IACrB,aAAa,EAAE,KAAK,CAAC;CACtB;AAED,MAAM,MAAM,cAAc,GAAG,WAAW,CAAC,aAAa,CAAC,CAAC;AAExD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,GAAG,cAAc,CAwFjB"}
1
+ {"version":3,"file":"useVisibleRanges.d.ts","sourceRoot":"","sources":["../../../src/hooks/useVisibleRanges.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAG3D,KAAK,KAAK,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE9B,MAAM,WAAW,aAAa;IAC5B,aAAa,EAAE,KAAK,CAAC;IACrB,aAAa,EAAE,KAAK,CAAC;CACtB;AAED,MAAM,MAAM,cAAc,GAAG,WAAW,CAAC,aAAa,CAAC,CAAC;AAgBxD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,GAAG,aAAa,CAwDhB;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,GAAG,cAAc,CAqCjB"}
@@ -225,7 +225,7 @@ export type TCarouselProps<T = any> = {
225
225
  customConfig?: CustomConfig | (() => CustomConfig);
226
226
  /**
227
227
  * Custom animations.
228
- * Must use `worklet`, Details: https://docs.swmansion.com/react-native-reanimated/docs/2.2.0/worklets/
228
+ * Must be worklet-compatible. See https://docs.swmansion.com/react-native-reanimated/docs/guides/worklets/
229
229
  * @test_coverage ✅ tested in Carousel.test.tsx > should apply the custom animation
230
230
  */
231
231
  customAnimation?: (value: number, index: number) => ViewStyle;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-reanimated-carousel",
3
- "version": "5.0.0-beta.6",
3
+ "version": "5.0.0-beta.7",
4
4
  "packageManager": "yarn@4.0.2",
5
5
  "description": "A performant, customizable carousel for React Native powered by Reanimated.",
6
6
  "author": "Doho <zhaodonghao586@outlook.com> (https://github.com/dohooo)",
@@ -239,6 +239,7 @@ export const CarouselLayout = React.forwardRef<ICarouselInstance>((_props, ref)
239
239
  loop={loop}
240
240
  size={size}
241
241
  windowSize={windowSize}
242
+ defaultIndex={defaultIndex}
242
243
  autoFillData={autoFillData}
243
244
  offsetX={offsetX}
244
245
  handlerOffset={handlerOffset}
@@ -9,7 +9,7 @@ import type { TAnimationStyle } from "./ItemLayout";
9
9
  import { ItemLayout } from "./ItemLayout";
10
10
 
11
11
  import type { VisibleRanges } from "../hooks/useVisibleRanges";
12
- import { useVisibleRanges } from "../hooks/useVisibleRanges";
12
+ import { computeVisibleRanges, useVisibleRanges } from "../hooks/useVisibleRanges";
13
13
  import type { CarouselRenderItem } from "../types";
14
14
  import { computedRealIndexWithAutoFillData } from "../utils/computed-with-auto-fill-data";
15
15
 
@@ -20,6 +20,7 @@ interface Props {
20
20
  loop: boolean;
21
21
  size: number;
22
22
  windowSize?: number;
23
+ defaultIndex: number;
23
24
  autoFillData: boolean;
24
25
  offsetX: SharedValue<number>;
25
26
  handlerOffset: SharedValue<number>;
@@ -33,6 +34,7 @@ export const ItemRenderer: FC<Props> = (props) => {
33
34
  data,
34
35
  size,
35
36
  windowSize,
37
+ defaultIndex,
36
38
  handlerOffset,
37
39
  offsetX,
38
40
  dataLength,
@@ -54,11 +56,14 @@ export const ItemRenderer: FC<Props> = (props) => {
54
56
 
55
57
  // Initialize with a sensible default to avoid blank render on first frame
56
58
  const initialRanges: VisibleRanges = React.useMemo(
57
- () => ({
58
- negativeRange: [0, 0],
59
- positiveRange: [0, Math.min(dataLength - 1, (windowSize ?? dataLength) - 1)],
60
- }),
61
- [dataLength, windowSize]
59
+ () =>
60
+ computeVisibleRanges({
61
+ total: dataLength,
62
+ windowSize,
63
+ currentIndex: defaultIndex,
64
+ loop,
65
+ }),
66
+ [dataLength, defaultIndex, loop, windowSize]
62
67
  );
63
68
 
64
69
  const [displayedItems, setDisplayedItems] = React.useState<VisibleRanges>(initialRanges);
@@ -0,0 +1,155 @@
1
+ import React from "react";
2
+ import { View } from "react-native";
3
+ import type {
4
+ GestureStateChangeEvent,
5
+ GestureUpdateEvent,
6
+ PanGestureHandlerEventPayload,
7
+ } from "react-native-gesture-handler";
8
+ import type { SharedValue } from "react-native-reanimated";
9
+
10
+ import { act, render } from "@testing-library/react-native";
11
+
12
+ import { ScrollViewGesture } from "./ScrollViewGesture";
13
+
14
+ import { usePanGestureProxy } from "../hooks/usePanGestureProxy";
15
+ import { GlobalStateContext, type IContext } from "../store";
16
+
17
+ jest.mock("../hooks/usePanGestureProxy", () => ({
18
+ usePanGestureProxy: jest.fn(() => ({})),
19
+ }));
20
+
21
+ const mockUsePanGestureProxy = jest.mocked(usePanGestureProxy);
22
+
23
+ jest.mock("react-native-gesture-handler", () => {
24
+ const React = require("react");
25
+ const actual = jest.requireActual("react-native-gesture-handler");
26
+
27
+ return {
28
+ ...actual,
29
+ GestureDetector: ({ children }: { children: React.ReactNode }) => {
30
+ const child = React.Children.only(children);
31
+
32
+ // Simulate the upstream web path that reads `element.ref`.
33
+ // React 19 warns only when the child element actually carries a ref.
34
+ // @ts-expect-error React 19 removed `element.ref` from the element type.
35
+ void child.ref;
36
+
37
+ return child;
38
+ },
39
+ };
40
+ });
41
+
42
+ type RenderGestureOptions = {
43
+ vertical?: boolean;
44
+ size?: number;
45
+ dataLength?: number;
46
+ containerSize?: { width: number; height: number };
47
+ };
48
+
49
+ function renderGesture({
50
+ vertical = false,
51
+ size = 300,
52
+ dataLength = 3,
53
+ containerSize = { width: 300, height: 200 },
54
+ }: RenderGestureOptions = {}) {
55
+ const translation = { value: 0 } as SharedValue<number>;
56
+ const contextValue = {
57
+ props: {
58
+ onConfigurePanGesture: undefined,
59
+ vertical,
60
+ pagingEnabled: true,
61
+ snapEnabled: true,
62
+ loop: false,
63
+ scrollAnimationDuration: 500,
64
+ withAnimation: undefined,
65
+ enabled: true,
66
+ dataLength,
67
+ overscrollEnabled: false,
68
+ maxScrollDistancePerSwipe: undefined,
69
+ minScrollDistancePerSwipe: undefined,
70
+ fixedDirection: undefined,
71
+ },
72
+ common: {
73
+ size,
74
+ validLength: dataLength,
75
+ handlerOffset: { value: 0 },
76
+ resolvedSize: { value: size },
77
+ sizePhase: { value: "ready" },
78
+ sizeExplicit: true,
79
+ },
80
+ layout: {
81
+ containerSize: { value: containerSize },
82
+ updateContainerSize: jest.fn(),
83
+ itemDimensions: { value: {} },
84
+ updateItemDimensions: jest.fn(),
85
+ },
86
+ } as unknown as IContext;
87
+
88
+ render(
89
+ <GlobalStateContext.Provider value={contextValue}>
90
+ <ScrollViewGesture size={size} translation={translation} style={containerSize}>
91
+ <View testID="content" />
92
+ </ScrollViewGesture>
93
+ </GlobalStateContext.Provider>
94
+ );
95
+
96
+ const gestureCallbacks =
97
+ mockUsePanGestureProxy.mock.calls[mockUsePanGestureProxy.mock.calls.length - 1]?.[0];
98
+
99
+ if (!gestureCallbacks) {
100
+ throw new Error("Expected ScrollViewGesture to configure the pan gesture");
101
+ }
102
+
103
+ return { gestureCallbacks, translation };
104
+ }
105
+
106
+ describe("issue #857 web regression", () => {
107
+ beforeEach(() => {
108
+ mockUsePanGestureProxy.mockClear();
109
+ });
110
+
111
+ it("does not emit the React 19 element.ref warning from the gesture path", () => {
112
+ const errorSpy = jest.spyOn(console, "error").mockImplementation(() => {});
113
+
114
+ try {
115
+ renderGesture();
116
+
117
+ const react19RefWarnings = errorSpy.mock.calls.filter(([message]) =>
118
+ String(message).includes("Accessing element.ref was removed in React 19")
119
+ );
120
+
121
+ expect(react19RefWarnings).toHaveLength(0);
122
+ } finally {
123
+ errorSpy.mockRestore();
124
+ }
125
+ });
126
+
127
+ it.each([
128
+ ["horizontal", false, 300, 3, { width: 300, height: 200 }, -600],
129
+ ["vertical", true, 300, 3, { width: 300, height: 200 }, -700],
130
+ ["unmeasured container", false, 300, 3, { width: 0, height: 0 }, 0],
131
+ ["content smaller than its container", false, 100, 2, { width: 300, height: 200 }, 0],
132
+ ] as const)(
133
+ "uses the %s main-axis container size for the non-loop boundary",
134
+ (_name, vertical, size, dataLength, containerSize, expectedTranslation) => {
135
+ const { gestureCallbacks, translation } = renderGesture({
136
+ vertical,
137
+ size,
138
+ dataLength,
139
+ containerSize,
140
+ });
141
+
142
+ act(() => {
143
+ gestureCallbacks.onGestureStart(
144
+ {} as GestureStateChangeEvent<PanGestureHandlerEventPayload>
145
+ );
146
+ gestureCallbacks.onGestureUpdate({
147
+ translationX: -1000,
148
+ translationY: -1000,
149
+ } as GestureUpdateEvent<PanGestureHandlerEventPayload>);
150
+ });
151
+
152
+ expect(translation.value).toBeCloseTo(expectedTranslation);
153
+ }
154
+ );
155
+ });
@@ -8,9 +8,7 @@ import type {
8
8
  import { GestureDetector } from "react-native-gesture-handler";
9
9
  import Animated, {
10
10
  cancelAnimation,
11
- measure,
12
11
  useAnimatedReaction,
13
- useAnimatedRef,
14
12
  useDerivedValue,
15
13
  useSharedValue,
16
14
  withDecay,
@@ -56,7 +54,7 @@ const IScrollViewGesture: React.FC<PropsWithChildren<Props>> = (props) => {
56
54
  fixedDirection,
57
55
  },
58
56
  common: { size, resolvedSize, sizePhase, sizeExplicit },
59
- layout: { updateContainerSize },
57
+ layout: { containerSize, updateContainerSize },
60
58
  } = useGlobalState();
61
59
 
62
60
  const {
@@ -77,7 +75,6 @@ const IScrollViewGesture: React.FC<PropsWithChildren<Props>> = (props) => {
77
75
  const validStart = useSharedValue(false);
78
76
  const scrollEndTranslation = useSharedValue(0);
79
77
  const scrollEndVelocity = useSharedValue(0);
80
- const containerRef = useAnimatedRef<Animated.View>();
81
78
  const maxScrollDistancePerSwipeIsSet = typeof maxScrollDistancePerSwipe === "number";
82
79
  const minScrollDistancePerSwipeIsSet = typeof minScrollDistancePerSwipe === "number";
83
80
  const sizeReady = useDerivedValue(() => {
@@ -92,18 +89,19 @@ const IScrollViewGesture: React.FC<PropsWithChildren<Props>> = (props) => {
92
89
  if (size <= 0) return 0;
93
90
 
94
91
  if (!loop && !overscrollEnabled) {
95
- const measurement = measure(containerRef);
96
- const containerWidth = measurement?.width || 0;
92
+ const containerMainAxisSize = vertical
93
+ ? containerSize.value.height
94
+ : containerSize.value.width;
97
95
 
98
- // If the item's total width is less than the container's width, then there is no need to scroll.
99
- if (dataLength * size < containerWidth) return 0;
96
+ // If the item's total size is less than the container's size, then there is no need to scroll.
97
+ if (containerMainAxisSize <= 0 || dataLength * size < containerMainAxisSize) return 0;
100
98
 
101
99
  // Disable the "overscroll" effect
102
- return dataLength * size - containerWidth;
100
+ return dataLength * size - containerMainAxisSize;
103
101
  }
104
102
 
105
103
  return dataLength * size;
106
- }, [loop, size, dataLength, overscrollEnabled]);
104
+ }, [loop, size, dataLength, overscrollEnabled, vertical, containerSize]);
107
105
 
108
106
  const withSpring = React.useCallback(
109
107
  (toValue: number, onFinished?: () => void) => {
@@ -515,7 +513,6 @@ const IScrollViewGesture: React.FC<PropsWithChildren<Props>> = (props) => {
515
513
  return (
516
514
  <GestureDetector gesture={gesture}>
517
515
  <Animated.View
518
- ref={containerRef}
519
516
  testID={testID}
520
517
  style={style}
521
518
  onTouchStart={onTouchBegin}