react-native-gesture-image-viewer 2.5.0 → 2.5.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.
@@ -611,20 +611,38 @@ export const useGestureViewer = ({
611
611
  }).onEnd(() => {
612
612
  const currentScale = scale.get();
613
613
  if (currentScale > maxZoomScale) {
614
- scale.set(withTiming(maxZoomScale, {
615
- duration: 300,
616
- easing: Easing.bezier(0.25, 0.1, 0.25, 1)
617
- }));
614
+ const focalX = hasActiveFocal.get() ? lastFocalX.get() : width / 2;
615
+ const focalY = hasActiveFocal.get() ? lastFocalY.get() : height / 2;
616
+ const {
617
+ translateX: targetTranslateX,
618
+ translateY: targetTranslateY
619
+ } = calculateFocalPointTranslation({
620
+ currentFocalX: focalX,
621
+ currentFocalY: focalY,
622
+ height,
623
+ initialScale: currentScale,
624
+ initialTranslateX: translateX.get(),
625
+ initialTranslateY: translateY.get(),
626
+ nextScale: maxZoomScale,
627
+ startFocalX: focalX,
628
+ startFocalY: focalY,
629
+ width
630
+ });
618
631
  const {
619
632
  translateX: constrainedTranslateX,
620
633
  translateY: constrainedTranslateY
621
634
  } = constrainTranslation({
622
635
  scale: maxZoomScale,
623
- translateX: translateX.get(),
624
- translateY: translateY.get()
636
+ translateX: maxZoomScale <= 1 ? 0 : targetTranslateX,
637
+ translateY: maxZoomScale <= 1 ? 0 : targetTranslateY
625
638
  });
626
- translateX.set(withTiming(constrainedTranslateX));
627
- translateY.set(withTiming(constrainedTranslateY));
639
+ const settleConfig = {
640
+ duration: 300,
641
+ easing: Easing.bezier(0.25, 0.1, 0.25, 1)
642
+ };
643
+ scale.set(withTiming(maxZoomScale, settleConfig));
644
+ translateX.set(withTiming(constrainedTranslateX, settleConfig));
645
+ translateY.set(withTiming(constrainedTranslateY, settleConfig));
628
646
  return;
629
647
  }
630
648
  if (currentScale < 1) {
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useEffect","useLayoutEffect","useMemo","useRef","useState","Platform","useWindowDimensions","Gesture","Easing","interpolate","useAnimatedReaction","useAnimatedStyle","useSharedValue","withSpring","withTiming","scheduleOnRN","registry","pruneItemDimensionsRegistry","registerItemDimensions","resolveItemDimensions","scheduleInitialScroll","useGestureViewerPaging","clampIndex","clampTranslationToBounds","createScrollAction","getLoopAdjustedIndex","getLoopPhysicalIndex","resolveGeometrySyncTranslationMode","getDismissDistance","shouldDismissByDirection","applyTapZoomAtPoint","calculateFocalPointTranslation","shouldAcceptFocalPoint","getViewerPositionChanges","previous","current","isInitial","didDataLengthChange","dataLength","didInitialIndexChange","initialIndex","didLoopLayoutChange","usesLoopSentinels","didPageStrideChange","pageStride","fitItemDimensions","dimensions","viewport","fitScale","Math","min","width","height","useGestureViewer","data","onDismiss","onSingleTap","customWidth","dismiss","enableDoubleTapZoom","enablePinchZoom","enableHorizontalSwipe","enablePanWhenZoomed","enableLoop","maxZoomScale","itemSpacing","customHeight","id","onDismissStart","triggerAnimation","autoPlay","autoPlayInterval","getItemDimensions","getItemKey","screenWidth","screenHeight","dismissGestureRef","undefined","isZoomed","setIsZoomed","isRotated","setIsRotated","isPinching","setIsPinching","shouldStartTriggerAnimation","setShouldStartTriggerAnimation","manager","setManager","currentIndex","setCurrentIndex","activeTriggerNode","setActiveTriggerNode","listRef","triggerRectRef","pendingIndexRef","onAnimationCompleteRef","onAnimationComplete","onSingleTapRef","dataRef","getItemDimensionsRef","getItemKeyRef","managerRef","configuredManagerRef","itemDimensionsRef","Map","isValidTriggerRect","rect","initialTranslateY","initialTranslateX","startScale","translateY","translateX","scale","backdropOpacity","rotation","contentWidth","contentHeight","triggerScale","triggerTranslateX","triggerTranslateY","triggerOpacity","lastFocalX","lastFocalY","startFocalX","startFocalY","hasActiveFocal","length","adjustedInitialIndex","managerPositionSnapshotRef","listPositionSnapshotRef","viewportRef","loopConfigRef","activeGeometryRef","activeGeometryIndexRef","syncActiveContentDimensions","logicalIndex","fitted","index","nextGeometry","previousGeometry","previousGeometryIndex","currentScale","get","translationMode","set","constrainedTranslateX","constrainedTranslateY","setItemDimensions","listIndex","item","currentDataLength","currentEnableLoop","realIndex","didUpdateDimensions","animationConfig","duration","easing","bezier","reduceMotion","dismissOptions","direction","enabled","fadeBackdrop","resistance","threshold","constrainTranslation","targetScale","targetTranslateX","targetTranslateY","scrollTo","animated","scrollAction","resetTransformState","syncPendingIndex","nextIndex","syncCurrentIndex","managerCurrentIndex","getState","notifyStateChange","emitZoomChange","prevScale","emitRotationChange","currentRotation","prevRotation","previousScale","previousRotation","unsubscribe","unsubscribeFromRegistry","subscribeToManager","managerInstance","subscribe","state","subscribeToActiveTrigger","currentPositionSnapshot","isNewManager","shouldApplyInitialIndex","shouldSyncInitialIndex","setDataLength","setEnableHorizontalSwipe","setPagingStride","setViewportWidth","setHeight","setZoomSharedValues","setResetTransformCallback","setRotation","setEnableLoop","setListRef","isInitialPositionRender","commitPositionSnapshot","shouldResetToInitialIndex","shouldRealignCurrentIndex","physicalIndex","startX","x","startY","y","initialScaleFromTrigger","finished","measure","_x","_y","measuredWidth","measuredHeight","pageX","pageY","nextTriggerRect","clearActiveTriggerNode","animateDismissToRect","endX","endY","endScale","dismissWithoutTrigger","handleDismiss","dismissTargetIndex","indexedTriggerNode","getIndexedTriggerNode","currentTriggerRect","dismissGesture","canDismiss","Pan","minDistance","averageTouches","activeCursor","activeOffsetY","failOffsetX","withRef","onUpdate","event","translationY","onEnd","damping","energyThreshold","mass","overshootClamping","stiffness","zoomPinchGesture","Pinch","onTouchesDown","numberOfTouches","onStart","focalX","focalY","initialScale","newScale","nextLastFocalX","nextLastFocalY","newTranslateX","newTranslateY","currentFocalX","currentFocalY","nextScale","onTouchesUp","onFinalize","zoomPanGesture","onBegin","translationX","emitSingleTap","currentData","emitTap","kind","singleTapGesture","Tap","OS","numberOfTaps","success","doubleTapGesture","tapGesture","Exclusive","zoomGesture","Race","animatedStyle","opacity","transform","rotate","backdropStyle","baseOpacity","dismissDistance","dismissOpacity","nativeScrollGesture","Native","requireExternalGestureToFail","activeListIndex","onMomentumScrollEnd","onScroll","onScrollBeginDrag","onWebClick"],"sourceRoot":"../../src","sources":["useGestureViewer.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useEffect","useLayoutEffect","useMemo","useRef","useState","Platform","useWindowDimensions","Gesture","Easing","interpolate","useAnimatedReaction","useAnimatedStyle","useSharedValue","withSpring","withTiming","scheduleOnRN","registry","pruneItemDimensionsRegistry","registerItemDimensions","resolveItemDimensions","scheduleInitialScroll","useGestureViewerPaging","clampIndex","clampTranslationToBounds","createScrollAction","getLoopAdjustedIndex","getLoopPhysicalIndex","resolveGeometrySyncTranslationMode","getDismissDistance","shouldDismissByDirection","applyTapZoomAtPoint","calculateFocalPointTranslation","shouldAcceptFocalPoint","getViewerPositionChanges","previous","current","isInitial","didDataLengthChange","dataLength","didInitialIndexChange","initialIndex","didLoopLayoutChange","usesLoopSentinels","didPageStrideChange","pageStride","fitItemDimensions","dimensions","viewport","fitScale","Math","min","width","height","useGestureViewer","data","onDismiss","onSingleTap","customWidth","dismiss","enableDoubleTapZoom","enablePinchZoom","enableHorizontalSwipe","enablePanWhenZoomed","enableLoop","maxZoomScale","itemSpacing","customHeight","id","onDismissStart","triggerAnimation","autoPlay","autoPlayInterval","getItemDimensions","getItemKey","screenWidth","screenHeight","dismissGestureRef","undefined","isZoomed","setIsZoomed","isRotated","setIsRotated","isPinching","setIsPinching","shouldStartTriggerAnimation","setShouldStartTriggerAnimation","manager","setManager","currentIndex","setCurrentIndex","activeTriggerNode","setActiveTriggerNode","listRef","triggerRectRef","pendingIndexRef","onAnimationCompleteRef","onAnimationComplete","onSingleTapRef","dataRef","getItemDimensionsRef","getItemKeyRef","managerRef","configuredManagerRef","itemDimensionsRef","Map","isValidTriggerRect","rect","initialTranslateY","initialTranslateX","startScale","translateY","translateX","scale","backdropOpacity","rotation","contentWidth","contentHeight","triggerScale","triggerTranslateX","triggerTranslateY","triggerOpacity","lastFocalX","lastFocalY","startFocalX","startFocalY","hasActiveFocal","length","adjustedInitialIndex","managerPositionSnapshotRef","listPositionSnapshotRef","viewportRef","loopConfigRef","activeGeometryRef","activeGeometryIndexRef","syncActiveContentDimensions","logicalIndex","fitted","index","nextGeometry","previousGeometry","previousGeometryIndex","currentScale","get","translationMode","set","constrainedTranslateX","constrainedTranslateY","setItemDimensions","listIndex","item","currentDataLength","currentEnableLoop","realIndex","didUpdateDimensions","animationConfig","duration","easing","bezier","reduceMotion","dismissOptions","direction","enabled","fadeBackdrop","resistance","threshold","constrainTranslation","targetScale","targetTranslateX","targetTranslateY","scrollTo","animated","scrollAction","resetTransformState","syncPendingIndex","nextIndex","syncCurrentIndex","managerCurrentIndex","getState","notifyStateChange","emitZoomChange","prevScale","emitRotationChange","currentRotation","prevRotation","previousScale","previousRotation","unsubscribe","unsubscribeFromRegistry","subscribeToManager","managerInstance","subscribe","state","subscribeToActiveTrigger","currentPositionSnapshot","isNewManager","shouldApplyInitialIndex","shouldSyncInitialIndex","setDataLength","setEnableHorizontalSwipe","setPagingStride","setViewportWidth","setHeight","setZoomSharedValues","setResetTransformCallback","setRotation","setEnableLoop","setListRef","isInitialPositionRender","commitPositionSnapshot","shouldResetToInitialIndex","shouldRealignCurrentIndex","physicalIndex","startX","x","startY","y","initialScaleFromTrigger","finished","measure","_x","_y","measuredWidth","measuredHeight","pageX","pageY","nextTriggerRect","clearActiveTriggerNode","animateDismissToRect","endX","endY","endScale","dismissWithoutTrigger","handleDismiss","dismissTargetIndex","indexedTriggerNode","getIndexedTriggerNode","currentTriggerRect","dismissGesture","canDismiss","Pan","minDistance","averageTouches","activeCursor","activeOffsetY","failOffsetX","withRef","onUpdate","event","translationY","onEnd","damping","energyThreshold","mass","overshootClamping","stiffness","zoomPinchGesture","Pinch","onTouchesDown","numberOfTouches","onStart","focalX","focalY","initialScale","newScale","nextLastFocalX","nextLastFocalY","newTranslateX","newTranslateY","currentFocalX","currentFocalY","nextScale","settleConfig","onTouchesUp","onFinalize","zoomPanGesture","onBegin","translationX","emitSingleTap","currentData","emitTap","kind","singleTapGesture","Tap","OS","numberOfTaps","success","doubleTapGesture","tapGesture","Exclusive","zoomGesture","Race","animatedStyle","opacity","transform","rotate","backdropStyle","baseOpacity","dismissDistance","dismissOpacity","nativeScrollGesture","Native","requireExternalGestureToFail","activeListIndex","onMomentumScrollEnd","onScroll","onScrollBeginDrag","onWebClick"],"sourceRoot":"../../src","sources":["useGestureViewer.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"useGestureViewer.d.ts","sourceRoot":"","sources":["../../../src/useGestureViewer.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,2BAA2B,EAAE,kBAAkB,EAAe,MAAM,SAAS,CAAC;AAc5F,KAAK,qBAAqB,CAAC,KAAK,EAAE,EAAE,IAAI,IAAI,CAC1C,kBAAkB,CAAC,KAAK,EAAE,EAAE,CAAC,EAC3B,YAAY,GACZ,iBAAiB,GACjB,eAAe,GACf,WAAW,GACX,gBAAgB,GAChB,eAAe,GACf,gBAAgB,CACnB,CAAC;AAuCF,eAAO,MAAM,gBAAgB,GAAI,KAAK,EAAE,EAAE,EAAE,8TAsBzC,qBAAqB,CAAC,KAAK,EAAE,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mCAqJnB,MAAM,QAAQ,KAAK,cAAc,2BAA2B;;CAk6B3E,CAAC"}
1
+ {"version":3,"file":"useGestureViewer.d.ts","sourceRoot":"","sources":["../../../src/useGestureViewer.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,2BAA2B,EAAE,kBAAkB,EAAe,MAAM,SAAS,CAAC;AAc5F,KAAK,qBAAqB,CAAC,KAAK,EAAE,EAAE,IAAI,IAAI,CAC1C,kBAAkB,CAAC,KAAK,EAAE,EAAE,CAAC,EAC3B,YAAY,GACZ,iBAAiB,GACjB,eAAe,GACf,WAAW,GACX,gBAAgB,GAChB,eAAe,GACf,gBAAgB,CACnB,CAAC;AAuCF,eAAO,MAAM,gBAAgB,GAAI,KAAK,EAAE,EAAE,EAAE,8TAsBzC,qBAAqB,CAAC,KAAK,EAAE,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mCAqJnB,MAAM,QAAQ,KAAK,cAAc,2BAA2B;;CA+6B3E,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-gesture-image-viewer",
3
- "version": "2.5.0",
3
+ "version": "2.5.1",
4
4
  "description": "🖼️ React Native Image Viewer - Reanimated-powered image gestures with full control",
5
5
  "keywords": [
6
6
  "android",
@@ -916,22 +916,35 @@ export const useGestureViewer = <ItemT, LC>({
916
916
  const currentScale = scale.get();
917
917
 
918
918
  if (currentScale > maxZoomScale) {
919
- scale.set(
920
- withTiming(maxZoomScale, {
921
- duration: 300,
922
- easing: Easing.bezier(0.25, 0.1, 0.25, 1),
923
- }),
924
- );
925
-
919
+ const focalX = hasActiveFocal.get() ? lastFocalX.get() : width / 2;
920
+ const focalY = hasActiveFocal.get() ? lastFocalY.get() : height / 2;
921
+ const { translateX: targetTranslateX, translateY: targetTranslateY } =
922
+ calculateFocalPointTranslation({
923
+ currentFocalX: focalX,
924
+ currentFocalY: focalY,
925
+ height,
926
+ initialScale: currentScale,
927
+ initialTranslateX: translateX.get(),
928
+ initialTranslateY: translateY.get(),
929
+ nextScale: maxZoomScale,
930
+ startFocalX: focalX,
931
+ startFocalY: focalY,
932
+ width,
933
+ });
926
934
  const { translateX: constrainedTranslateX, translateY: constrainedTranslateY } =
927
935
  constrainTranslation({
928
936
  scale: maxZoomScale,
929
- translateX: translateX.get(),
930
- translateY: translateY.get(),
937
+ translateX: maxZoomScale <= 1 ? 0 : targetTranslateX,
938
+ translateY: maxZoomScale <= 1 ? 0 : targetTranslateY,
931
939
  });
932
-
933
- translateX.set(withTiming(constrainedTranslateX));
934
- translateY.set(withTiming(constrainedTranslateY));
940
+ const settleConfig = {
941
+ duration: 300,
942
+ easing: Easing.bezier(0.25, 0.1, 0.25, 1),
943
+ };
944
+
945
+ scale.set(withTiming(maxZoomScale, settleConfig));
946
+ translateX.set(withTiming(constrainedTranslateX, settleConfig));
947
+ translateY.set(withTiming(constrainedTranslateY, settleConfig));
935
948
 
936
949
  return;
937
950
  }