react-native-gesture-image-viewer 1.6.5 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -41,18 +41,29 @@ Full documentation is available at: <https://react-native-gesture-image-viewer.p
41
41
 
42
42
  ### Basic Usage
43
43
 
44
- `react-native-gesture-image-viewer` is a library focused purely on gesture interactions for complete customization.
44
+ `react-native-gesture-image-viewer` is a library focused purely on gesture interactions for complete customization.
45
45
 
46
46
  ```tsx
47
47
  import { useCallback, useState } from 'react';
48
- import { ScrollView, Image, Modal, View, Text, Button } from 'react-native';
49
- import { GestureViewer, useGestureViewerController, useGestureViewerEvent } from 'react-native-gesture-image-viewer';
48
+ import { ScrollView, Image, Modal, View, Text, Button, Pressable } from 'react-native';
49
+ import {
50
+ GestureViewer,
51
+ GestureTrigger,
52
+ useGestureViewerController,
53
+ useGestureViewerEvent,
54
+ } from 'react-native-gesture-image-viewer';
50
55
 
51
56
  function App() {
52
57
  const images = [...];
53
58
  const [visible, setVisible] = useState(false);
59
+ const [selectedIndex, setSelectedIndex] = useState(0);
54
60
 
55
- const { goToIndex, goToPrevious, goToNext, currentIndex, totalCount } = useGestureViewerController();
61
+ const { goToIndex, goToPrevious, goToNext, currentIndex, totalCount } = useGestureViewerController();
62
+
63
+ const openModal = (index: number) => {
64
+ setSelectedIndex(index);
65
+ setVisible(true);
66
+ };
56
67
 
57
68
  const renderImage = useCallback((imageUrl: string) => {
58
69
  return <Image source={{ uri: imageUrl }} style={{ width: '100%', height: '100%' }} resizeMode="contain" />;
@@ -63,20 +74,30 @@ function App() {
63
74
  });
64
75
 
65
76
  return (
66
- <Modal visible={visible} onRequestClose={() => setVisible(false)}>
67
- <GestureViewer
68
- data={images}
69
- renderItem={renderImage}
70
- ListComponent={ScrollView}
71
- onDismiss={() => setVisible(false)}
72
- />
73
- <View>
74
- <Button title="<" onPress={goToPrevious} />
75
- <Button title="Jump to index 2" onPress={() => goToIndex(2)} />
76
- <Button title=">" onPress={goToNext} />
77
- <Text>{`${currentIndex + 1} / ${totalCount}`}</Text>
78
- </View>
79
- </Modal>
77
+ <View>
78
+ {images.map((uri, index) => (
79
+ <GestureTrigger key={uri} onPress={() => openModal(index)}>
80
+ <Pressable>
81
+ <Image source={{ uri }} />
82
+ </Pressable>
83
+ </GestureTrigger>
84
+ ))}
85
+ <Modal transparent visible={visible}>
86
+ <GestureViewer
87
+ data={images}
88
+ initialIndex={selectedIndex}
89
+ renderItem={renderImage}
90
+ ListComponent={ScrollView}
91
+ onDismiss={() => setVisible(false)}
92
+ />
93
+ <View>
94
+ <Button title="Prev" onPress={goToPrevious} />
95
+ <Button title="Jump to index 2" onPress={() => goToIndex(2)} />
96
+ <Button title="Next" onPress={goToNext} />
97
+ <Text>{`${currentIndex + 1} / ${totalCount}`}</Text>
98
+ </View>
99
+ </Modal>
100
+ </View>
80
101
  );
81
102
  }
82
103
  ```
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+
3
+ import { Children, cloneElement, isValidElement, useMemo, useRef } from 'react';
4
+ import { View } from 'react-native';
5
+ import { registry } from "./GestureViewerRegistry.js";
6
+
7
+ /**
8
+ * Minimal contract for a pressable child's props.
9
+ * The child must optionally accept an `onPress` handler.
10
+ */
11
+
12
+ /**
13
+ * Props for `GestureTrigger`.
14
+ *
15
+ * @typeParam T - The child's props type. Must include an optional `onPress` handler.
16
+ *
17
+ * @property id - Optional identifier to associate this trigger with a `GestureViewer`.
18
+ * @property children - A single React element whose props include `onPress` (e.g., `Pressable`, `Touchable*`).
19
+ * @property onPress - Optional handler invoked after the child's own `onPress`.
20
+ */
21
+ import { jsx as _jsx } from "react/jsx-runtime";
22
+ /**
23
+ * Wraps a pressable child element and registers its native view as a trigger for `GestureViewer`.
24
+ *
25
+ * @remark
26
+ * Behavior on press:
27
+ * - Registers the child's native node to the internal registry under the given `id`.
28
+ * - Invokes the child's own `onPress` first (if provided).
29
+ * - Invokes the `onPress` passed to `GestureTrigger` next (if provided).
30
+ *
31
+ * Type parameters:
32
+ * - `T` — The child's props type. Must include an optional `onPress` handler, ensuring the child is pressable.
33
+ *
34
+ * Props:
35
+ * - `id` — Optional identifier to associate this trigger with a `GestureViewer`. Defaults to `"default"`.
36
+ * - `children` — A single React element whose props include `onPress` (e.g., `Pressable`, `Touchable*`, custom button).
37
+ * - `onPress` — Optional handler invoked after the child's `onPress`. Receives the same arguments as the child's handler.
38
+ *
39
+ * Notes:
40
+ * - If neither the child nor this component provides `onPress`, a dev warning is logged and nothing happens on press.
41
+ * - Only a single child is allowed; wrap lists using `React.Children.map` when needed.
42
+ *
43
+ * Example:
44
+ * ```tsx
45
+ * <GestureTrigger id="gallery" onPress={() => openModal(index)}>
46
+ * <Pressable style={styles.thumb}>
47
+ * <Image source={{ uri }} style={styles.thumbImage} />
48
+ * </Pressable>
49
+ * </GestureTrigger>
50
+ * ```
51
+ */
52
+ export function GestureTrigger({
53
+ id = 'default',
54
+ children,
55
+ onPress
56
+ }) {
57
+ const ref = useRef(null);
58
+ const wrapped = useMemo(() => {
59
+ const child = Children.only(children);
60
+ if (! /*#__PURE__*/isValidElement(child)) {
61
+ return children;
62
+ }
63
+ const originalOnPress = child.props?.onPress;
64
+ const handlePress = (...args) => {
65
+ registry.setTriggerNode(id, ref.current);
66
+ originalOnPress?.(...args);
67
+ onPress?.(...args);
68
+ if (__DEV__ && !originalOnPress && !onPress) {
69
+ console.warn('[GestureTrigger] No onPress found on child or props. Nothing will happen on press.');
70
+ }
71
+ };
72
+ return /*#__PURE__*/cloneElement(child, {
73
+ ...child.props,
74
+ onPress: handlePress
75
+ });
76
+ }, [id, onPress, children]);
77
+ return /*#__PURE__*/_jsx(View, {
78
+ ref: ref,
79
+ collapsable: false,
80
+ children: wrapped
81
+ });
82
+ }
83
+ //# sourceMappingURL=GestureTrigger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Children","cloneElement","isValidElement","useMemo","useRef","View","registry","jsx","_jsx","GestureTrigger","id","children","onPress","ref","wrapped","child","only","originalOnPress","props","handlePress","args","setTriggerNode","current","__DEV__","console","warn","collapsable"],"sourceRoot":"../../src","sources":["GestureTrigger.tsx"],"mappings":";;AACA,SAASA,QAAQ,EAAEC,YAAY,EAAEC,cAAc,EAAEC,OAAO,EAAEC,MAAM,QAAQ,OAAO;AAC/E,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,QAAQ,QAAQ,4BAAyB;;AAElD;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AARA,SAAAC,GAAA,IAAAC,IAAA;AAeA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,cAAcA,CAAwB;EAAEC,EAAE,GAAG,SAAS;EAAEC,QAAQ;EAAEC;AAAgC,CAAC,EAAE;EACnH,MAAMC,GAAG,GAAGT,MAAM,CAAO,IAAI,CAAC;EAE9B,MAAMU,OAAO,GAAGX,OAAO,CAAC,MAAM;IAC5B,MAAMY,KAAK,GAAGf,QAAQ,CAACgB,IAAI,CAACL,QAAQ,CAAC;IAErC,IAAI,eAACT,cAAc,CAACa,KAAK,CAAC,EAAE;MAC1B,OAAOJ,QAAQ;IACjB;IAEA,MAAMM,eAAe,GAAGF,KAAK,CAACG,KAAK,EAAEN,OAAO;IAE5C,MAAMO,WAAW,GAAGA,CAAC,GAAGC,IAAe,KAAK;MAC1Cd,QAAQ,CAACe,cAAc,CAACX,EAAE,EAAEG,GAAG,CAACS,OAAO,CAAC;MACxCL,eAAe,GAAG,GAAGG,IAAI,CAAC;MAC1BR,OAAO,GAAG,GAAGQ,IAAI,CAAC;MAElB,IAAIG,OAAO,IAAI,CAACN,eAAe,IAAI,CAACL,OAAO,EAAE;QAC3CY,OAAO,CAACC,IAAI,CAAC,oFAAoF,CAAC;MACpG;IACF,CAAC;IAED,oBAAOxB,YAAY,CAACc,KAAK,EAAE;MACzB,GAAGA,KAAK,CAACG,KAAK;MACdN,OAAO,EAAEO;IACX,CAAC,CAAC;EACJ,CAAC,EAAE,CAACT,EAAE,EAAEE,OAAO,EAAED,QAAQ,CAAC,CAAC;EAE3B,oBACEH,IAAA,CAACH,IAAI;IAACQ,GAAG,EAAEA,GAAI;IAACa,WAAW,EAAE,KAAM;IAAAf,QAAA,EAChCG;EAAO,CACJ,CAAC;AAEX","ignoreList":[]}
@@ -27,7 +27,6 @@ export function GestureViewer({
27
27
  }) {
28
28
  const Component = ListComponent;
29
29
  const dataRef = useRef(data);
30
- dataRef.current = data;
31
30
  const {
32
31
  width: screenWidth
33
32
  } = useWindowDimensions();
@@ -42,6 +41,7 @@ export function GestureViewer({
42
41
  zoomGesture,
43
42
  onMomentumScrollEnd,
44
43
  onScrollBeginDrag,
44
+ handleDismiss,
45
45
  animatedStyle,
46
46
  backdropStyle
47
47
  } = useGestureViewer({
@@ -83,6 +83,9 @@ export function GestureViewer({
83
83
  const gesture = useMemo(() => {
84
84
  return Gesture.Race(dismissGesture, zoomGesture);
85
85
  }, [zoomGesture, dismissGesture]);
86
+ useEffect(() => {
87
+ dataRef.current = data;
88
+ }, [data]);
86
89
  useEffect(() => {
87
90
  registry.createManager(id);
88
91
  return () => registry.deleteManager(id);
@@ -103,6 +106,9 @@ export function GestureViewer({
103
106
  scrollEventThrottle: 16,
104
107
  removeClippedSubviews: true
105
108
  }), [width, itemSpacing, isZoomed, isRotated, onMomentumScrollEnd, onScrollBeginDrag, useSnap]);
109
+ const control = useMemo(() => ({
110
+ dismiss: handleDismiss
111
+ }), [handleDismiss]);
106
112
  const listComponent = /*#__PURE__*/_jsx(GestureHandlerRootView, {
107
113
  children: /*#__PURE__*/_jsx(GestureDetector, {
108
114
  gesture: gesture,
@@ -151,7 +157,7 @@ export function GestureViewer({
151
157
  })
152
158
  })
153
159
  });
154
- return renderContainer ? renderContainer(listComponent) : listComponent;
160
+ return renderContainer ? renderContainer(listComponent, control) : listComponent;
155
161
  }
156
162
  const styles = StyleSheet.create({
157
163
  container: {
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useEffect","useMemo","useRef","Platform","StyleSheet","useWindowDimensions","View","Gesture","GestureDetector","GestureHandlerRootView","Animated","registry","useGestureViewer","createLoopData","isFlashListLike","isFlatListLike","isScrollViewLike","WebPagingFixStyle","jsx","_jsx","jsxs","_jsxs","GestureViewer","id","data","renderItem","renderItemProp","renderContainer","ListComponent","width","customWidth","listProps","backdropStyle","backdropStyleProps","containerStyle","initialIndex","itemSpacing","useSnap","enableLoop","props","Component","dataRef","current","screenWidth","loopData","isScrollView","listRef","isZoomed","isRotated","dismissGesture","zoomGesture","onMomentumScrollEnd","onScrollBeginDrag","animatedStyle","keyExtractor","item","index","style","height","justifyContent","alignItems","marginHorizontal","children","undefined","getItemLayout","_","length","offset","gesture","Race","createManager","deleteManager","commonProps","horizontal","scrollEnabled","showsHorizontalScrollIndicator","snapToInterval","snapToAlignment","decelerationRate","pagingEnabled","scrollEventThrottle","removeClippedSubviews","listComponent","styles","container","background","content","OS","dataSet","ref","map","initialScrollIndex","windowSize","maxToRenderPerBatch","estimatedItemSize","create","flex","position","top","left","right","bottom","backgroundColor"],"sourceRoot":"../../src","sources":["GestureViewer.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useEffect","useMemo","useRef","Platform","StyleSheet","useWindowDimensions","View","Gesture","GestureDetector","GestureHandlerRootView","Animated","registry","useGestureViewer","createLoopData","isFlashListLike","isFlatListLike","isScrollViewLike","WebPagingFixStyle","jsx","_jsx","jsxs","_jsxs","GestureViewer","id","data","renderItem","renderItemProp","renderContainer","ListComponent","width","customWidth","listProps","backdropStyle","backdropStyleProps","containerStyle","initialIndex","itemSpacing","useSnap","enableLoop","props","Component","dataRef","screenWidth","loopData","isScrollView","listRef","isZoomed","isRotated","dismissGesture","zoomGesture","onMomentumScrollEnd","onScrollBeginDrag","handleDismiss","animatedStyle","keyExtractor","item","index","style","height","justifyContent","alignItems","marginHorizontal","children","undefined","getItemLayout","_","length","offset","gesture","Race","current","createManager","deleteManager","commonProps","horizontal","scrollEnabled","showsHorizontalScrollIndicator","snapToInterval","snapToAlignment","decelerationRate","pagingEnabled","scrollEventThrottle","removeClippedSubviews","control","dismiss","listComponent","styles","container","background","content","OS","dataSet","ref","map","initialScrollIndex","windowSize","maxToRenderPerBatch","estimatedItemSize","create","flex","position","top","left","right","bottom","backgroundColor"],"sourceRoot":"../../src","sources":["GestureViewer.tsx"],"mappings":"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","ignoreList":[]}
@@ -4,6 +4,7 @@ import GestureViewerManager from "./GestureViewerManager.js";
4
4
  class GestureViewerRegistry {
5
5
  managers = new Map();
6
6
  subscribers = new Map();
7
+ triggers = new Map();
7
8
  subscribeToManager(id, callback) {
8
9
  if (!this.subscribers.has(id)) {
9
10
  this.subscribers.set(id, new Set());
@@ -36,6 +37,7 @@ class GestureViewerRegistry {
36
37
  if (manager) {
37
38
  manager.cleanUp();
38
39
  this.managers.delete(id);
40
+ this.clearTriggerNode(id);
39
41
  this.notifySubscribers(id, null);
40
42
  }
41
43
  }
@@ -45,6 +47,19 @@ class GestureViewerRegistry {
45
47
  [...listeners].forEach(callback => callback(manager));
46
48
  }
47
49
  }
50
+ setTriggerNode(id, node) {
51
+ if (!node) {
52
+ this.clearTriggerNode(id);
53
+ return;
54
+ }
55
+ this.triggers.set(id, node);
56
+ }
57
+ getTriggerNode(id) {
58
+ return this.triggers.get(id) ?? null;
59
+ }
60
+ clearTriggerNode(id) {
61
+ this.triggers.delete(id);
62
+ }
48
63
  }
49
64
  export const registry = new GestureViewerRegistry();
50
65
  //# sourceMappingURL=GestureViewerRegistry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["GestureViewerManager","GestureViewerRegistry","managers","Map","subscribers","subscribeToManager","id","callback","has","set","Set","get","add","manager","delete","size","createManager","notifySubscribers","getManager","deleteManager","cleanUp","listeners","forEach","registry"],"sourceRoot":"../../src","sources":["GestureViewerRegistry.ts"],"mappings":";;AAAA,OAAOA,oBAAoB,MAAM,2BAAwB;AAEzD,MAAMC,qBAAqB,CAAC;EAClBC,QAAQ,GAAG,IAAIC,GAAG,CAA+B,CAAC;EAClDC,WAAW,GAAG,IAAID,GAAG,CAA8D,CAAC;EAE5FE,kBAAkBA,CAACC,EAAU,EAAEC,QAAwD,EAAE;IACvF,IAAI,CAAC,IAAI,CAACH,WAAW,CAACI,GAAG,CAACF,EAAE,CAAC,EAAE;MAC7B,IAAI,CAACF,WAAW,CAACK,GAAG,CAACH,EAAE,EAAE,IAAII,GAAG,CAAC,CAAC,CAAC;IACrC;IAEA,IAAI,CAACN,WAAW,CAACO,GAAG,CAACL,EAAE,CAAC,EAAEM,GAAG,CAACL,QAAQ,CAAC;IAEvC,MAAMM,OAAO,GAAG,IAAI,CAACX,QAAQ,CAACS,GAAG,CAACL,EAAE,CAAC,IAAI,IAAI;IAE7CC,QAAQ,CAACM,OAAO,CAAC;IAEjB,OAAO,MAAM;MACX,MAAMT,WAAW,GAAG,IAAI,CAACA,WAAW,CAACO,GAAG,CAACL,EAAE,CAAC;MAE5CF,WAAW,EAAEU,MAAM,CAACP,QAAQ,CAAC;MAE7B,IAAIH,WAAW,IAAIA,WAAW,CAACW,IAAI,KAAK,CAAC,EAAE;QACzC,IAAI,CAACX,WAAW,CAACU,MAAM,CAACR,EAAE,CAAC;MAC7B;IACF,CAAC;EACH;EAEAU,aAAaA,CAACV,EAAU,EAA+B;IACrD,IAAI,IAAI,CAACJ,QAAQ,CAACM,GAAG,CAACF,EAAE,CAAC,EAAE;MACzB,OAAO,IAAI,CAACJ,QAAQ,CAACS,GAAG,CAACL,EAAE,CAAC,IAAI,IAAI;IACtC;IAEA,MAAMO,OAAO,GAAG,IAAIb,oBAAoB,CAAC,CAAC;IAC1C,IAAI,CAACE,QAAQ,CAACO,GAAG,CAACH,EAAE,EAAEO,OAAO,CAAC;IAE9B,IAAI,CAACI,iBAAiB,CAACX,EAAE,EAAEO,OAAO,CAAC;IAEnC,OAAOA,OAAO;EAChB;EAEAK,UAAUA,CAACZ,EAAU,EAA+B;IAClD,OAAO,IAAI,CAACJ,QAAQ,CAACS,GAAG,CAACL,EAAE,CAAC,IAAI,IAAI;EACtC;EAEAa,aAAaA,CAACb,EAAU,EAAE;IACxB,MAAMO,OAAO,GAAG,IAAI,CAACX,QAAQ,CAACS,GAAG,CAACL,EAAE,CAAC;IAErC,IAAIO,OAAO,EAAE;MACXA,OAAO,CAACO,OAAO,CAAC,CAAC;MACjB,IAAI,CAAClB,QAAQ,CAACY,MAAM,CAACR,EAAE,CAAC;MAExB,IAAI,CAACW,iBAAiB,CAACX,EAAE,EAAE,IAAI,CAAC;IAClC;EACF;EAEAW,iBAAiBA,CAACX,EAAU,EAAEO,OAAoC,EAAE;IAClE,MAAMQ,SAAS,GAAG,IAAI,CAACjB,WAAW,CAACO,GAAG,CAACL,EAAE,CAAC;IAE1C,IAAIe,SAAS,EAAE;MACb,CAAC,GAAGA,SAAS,CAAC,CAACC,OAAO,CAAEf,QAAQ,IAAKA,QAAQ,CAACM,OAAO,CAAC,CAAC;IACzD;EACF;AACF;AAEA,OAAO,MAAMU,QAAQ,GAAG,IAAItB,qBAAqB,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["GestureViewerManager","GestureViewerRegistry","managers","Map","subscribers","triggers","subscribeToManager","id","callback","has","set","Set","get","add","manager","delete","size","createManager","notifySubscribers","getManager","deleteManager","cleanUp","clearTriggerNode","listeners","forEach","setTriggerNode","node","getTriggerNode","registry"],"sourceRoot":"../../src","sources":["GestureViewerRegistry.ts"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
+ export { GestureTrigger } from "./GestureTrigger.js";
3
4
  export { GestureViewer } from "./GestureViewer.js";
4
5
  export { useGestureViewerController } from "./useGestureViewerController.js";
5
6
  export { useGestureViewerEvent } from "./useGestureViewerEvent.js";
@@ -1 +1 @@
1
- {"version":3,"names":["GestureViewer","useGestureViewerController","useGestureViewerEvent"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,aAAa,QAAQ,oBAAiB;AAS/C,SAASC,0BAA0B,QAAQ,iCAA8B;AACzE,SAASC,qBAAqB,QAAQ,4BAAyB","ignoreList":[]}
1
+ {"version":3,"names":["GestureTrigger","GestureViewer","useGestureViewerController","useGestureViewerEvent"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,cAAc,QAAkC,qBAAkB;AAC3E,SAASC,aAAa,QAAQ,oBAAiB;AAS/C,SAASC,0BAA0B,QAAQ,iCAA8B;AACzE,SAASC,qBAAqB,QAAQ,4BAAyB","ignoreList":[]}
@@ -14,8 +14,6 @@ export const useGestureViewer = ({
14
14
  width: customWidth,
15
15
  dismissThreshold = 80,
16
16
  resistance = 2,
17
- // swipeThreshold = 0.5,
18
- // velocityThreshold = 200,
19
17
  animateBackdrop = true,
20
18
  enableDismissGesture = true,
21
19
  enableSwipeGesture = true,
@@ -26,7 +24,9 @@ export const useGestureViewer = ({
26
24
  maxZoomScale = 2,
27
25
  itemSpacing = 0,
28
26
  useSnap = false,
29
- id = 'default'
27
+ id = 'default',
28
+ onDismissStart,
29
+ triggerAnimation
30
30
  }) => {
31
31
  const {
32
32
  width: screenWidth,
@@ -36,10 +36,13 @@ export const useGestureViewer = ({
36
36
  const [isZoomed, setIsZoomed] = useState(false);
37
37
  const [isRotated, setIsRotated] = useState(false);
38
38
  const [manager, setManager] = useState(null);
39
+ const [shouldStartTriggerAnimation, setShouldStartTriggerAnimation] = useState(false);
39
40
  const listRef = useRef(null);
40
41
  const unsubscribeRef = useRef(null);
41
42
  const onIndexChangeRef = useRef(null);
42
43
  const lastEmittedIndexRef = useRef(null);
44
+ const triggerRectRef = useRef(null);
45
+ const onAnimationCompleteRef = useRef(triggerAnimation?.onAnimationComplete);
43
46
  const initialTranslateY = useSharedValue(0);
44
47
  const initialTranslateX = useSharedValue(0);
45
48
  const startScale = useSharedValue(1);
@@ -48,7 +51,16 @@ export const useGestureViewer = ({
48
51
  const scale = useSharedValue(1);
49
52
  const backdropOpacity = useSharedValue(1);
50
53
  const rotation = useSharedValue(0);
54
+ const triggerScale = useSharedValue(1);
55
+ const triggerTranslateX = useSharedValue(0);
56
+ const triggerTranslateY = useSharedValue(0);
57
+ const triggerOpacity = useSharedValue(1);
51
58
  const dataLength = data?.length || 0;
59
+ const animationConfig = useMemo(() => ({
60
+ duration: triggerAnimation?.duration ?? 300,
61
+ easing: triggerAnimation?.easing ?? Easing.bezier(0.25, 0.1, 0.25, 1.0),
62
+ reduceMotion: triggerAnimation?.reduceMotion
63
+ }), [triggerAnimation?.duration, triggerAnimation?.easing, triggerAnimation?.reduceMotion]);
52
64
  const adjustedInitialIndex = useMemo(() => {
53
65
  if (enableLoop && data.length > 1) {
54
66
  return initialIndex + 1;
@@ -59,6 +71,9 @@ export const useGestureViewer = ({
59
71
  width,
60
72
  height: screenHeight
61
73
  }), [width, screenHeight]);
74
+ const onAnimationComplete = useCallback(() => {
75
+ onAnimationCompleteRef.current?.();
76
+ }, []);
62
77
  const scrollTo = useCallback((index, animated) => {
63
78
  const scrollAction = createScrollAction(listRef.current, width + itemSpacing);
64
79
  return scrollAction.scrollTo(index, animated);
@@ -89,6 +104,52 @@ export const useGestureViewer = ({
89
104
  onIndexChangeRef.current = null;
90
105
  };
91
106
  }, []);
107
+ useEffect(() => {
108
+ onAnimationCompleteRef.current = triggerAnimation?.onAnimationComplete;
109
+ }, [triggerAnimation?.onAnimationComplete]);
110
+ useEffect(() => {
111
+ if (shouldStartTriggerAnimation && triggerRectRef.current) {
112
+ const startX = triggerRectRef.current.x + triggerRectRef.current.width / 2 - screenWidth / 2;
113
+ const startY = triggerRectRef.current.y + triggerRectRef.current.height / 2 - screenHeight / 2;
114
+ const initialScaleFromTrigger = Math.min(triggerRectRef.current.width / screenWidth, triggerRectRef.current.height / screenHeight);
115
+ triggerScale.value = initialScaleFromTrigger;
116
+ triggerTranslateX.value = startX;
117
+ triggerTranslateY.value = startY;
118
+ triggerOpacity.value = 0;
119
+ triggerScale.value = withTiming(1, animationConfig, finished => {
120
+ if (finished) {
121
+ runOnJS(onAnimationComplete)();
122
+ }
123
+ });
124
+ triggerTranslateX.value = withTiming(0, animationConfig);
125
+ triggerTranslateY.value = withTiming(0, animationConfig);
126
+ triggerOpacity.value = withTiming(1, {
127
+ duration: animationConfig.duration / 2,
128
+ easing: animationConfig.easing,
129
+ reduceMotion: animationConfig.reduceMotion
130
+ });
131
+ setShouldStartTriggerAnimation(false);
132
+ }
133
+ }, [shouldStartTriggerAnimation, animationConfig, screenWidth, screenHeight, triggerOpacity, triggerScale, triggerTranslateX, triggerTranslateY, onAnimationComplete]);
134
+ useEffect(() => {
135
+ const node = registry.getTriggerNode(id);
136
+ if (node && typeof node.measure === 'function') {
137
+ node.measure((_x, _y, width, height, pageX, pageY) => {
138
+ triggerRectRef.current = {
139
+ x: pageX,
140
+ y: pageY,
141
+ width,
142
+ height
143
+ };
144
+ triggerOpacity.value = 0;
145
+ setShouldStartTriggerAnimation(true);
146
+ registry.clearTriggerNode(id);
147
+ });
148
+ }
149
+ return () => {
150
+ triggerRectRef.current = null;
151
+ };
152
+ }, [id, triggerOpacity]);
92
153
  useEffect(() => {
93
154
  const handleManagerChange = manager => {
94
155
  unsubscribeRef.current?.();
@@ -148,6 +209,26 @@ export const useGestureViewer = ({
148
209
  runAfterInteractions?.cancel();
149
210
  };
150
211
  }, [adjustedInitialIndex, translateY, backdropOpacity, translateX, scale, startScale, rotation, scrollTo]);
212
+ const handleDismiss = useCallback(() => {
213
+ onDismissStart?.();
214
+ if (triggerRectRef.current) {
215
+ const endX = triggerRectRef.current.x + triggerRectRef.current.width / 2 - screenWidth / 2;
216
+ const endY = triggerRectRef.current.y + triggerRectRef.current.height / 2 - screenHeight / 2;
217
+ const endScale = Math.min(triggerRectRef.current.width / screenWidth, triggerRectRef.current.height / screenHeight);
218
+ triggerScale.value = withTiming(endScale, animationConfig);
219
+ triggerTranslateX.value = withTiming(endX, animationConfig);
220
+ triggerTranslateY.value = withTiming(endY, animationConfig);
221
+ triggerOpacity.value = withTiming(0, animationConfig, finished => {
222
+ if (finished && onDismiss) {
223
+ runOnJS(onDismiss)();
224
+ }
225
+ });
226
+ return;
227
+ }
228
+ if (onDismiss) {
229
+ runOnJS(onDismiss)();
230
+ }
231
+ }, [animationConfig, onDismiss, onDismissStart, screenWidth, screenHeight, triggerTranslateX, triggerScale, triggerTranslateY, triggerOpacity]);
151
232
  const onMomentumScrollEnd = useCallback(event => {
152
233
  if (!enableSwipeGesture) {
153
234
  return;
@@ -166,7 +247,7 @@ export const useGestureViewer = ({
166
247
  if (needsJump && jumpToIndex !== undefined) {
167
248
  scrollTo(jumpToIndex, false);
168
249
  }
169
- const currentIndex = manager?.getState() ?? 0;
250
+ const currentIndex = manager?.getState().currentIndex;
170
251
  if (realIndex !== currentIndex && realIndex >= 0 && realIndex < dataLength) {
171
252
  if (manager) {
172
253
  manager.setCurrentIndex(realIndex);
@@ -182,11 +263,12 @@ export const useGestureViewer = ({
182
263
  }
183
264
  }, [scrollTo, manager, dataLength, width, itemSpacing, enableSwipeGesture, enableLoop, translateX, translateY, scale, initialTranslateX, initialTranslateY, startScale, rotation]);
184
265
  const dismissGesture = useMemo(() => {
185
- return Gesture.Pan().minDistance(10).averageTouches(true).activeCursor('grabbing').activeOffsetY([-10, 10]).failOffsetX([-10, 10]).enabled(!isZoomed).onUpdate(event => {
266
+ const canDismiss = !isZoomed && enableDismissGesture;
267
+ return Gesture.Pan().minDistance(10).averageTouches(true).activeCursor('grabbing').activeOffsetY([-10, 10]).failOffsetX([-10, 10]).enabled(canDismiss).onUpdate(event => {
186
268
  translateY.value = event.translationY / resistance;
187
269
  }).onEnd(event => {
188
- if (event.translationY > dismissThreshold && enableDismissGesture && onDismiss) {
189
- runOnJS(onDismiss)();
270
+ if (canDismiss && event.translationY > dismissThreshold && handleDismiss) {
271
+ runOnJS(handleDismiss)();
190
272
  return;
191
273
  }
192
274
  translateY.value = withSpring(0, {
@@ -194,7 +276,7 @@ export const useGestureViewer = ({
194
276
  stiffness: 150
195
277
  });
196
278
  });
197
- }, [translateY, dismissThreshold, enableDismissGesture, onDismiss, resistance, isZoomed]);
279
+ }, [translateY, dismissThreshold, enableDismissGesture, handleDismiss, resistance, isZoomed]);
198
280
  const zoomPinchGesture = useMemo(() => {
199
281
  return Gesture.Pinch().enabled(enableZoomGesture).onBegin(() => {
200
282
  startScale.value = scale.value;
@@ -324,7 +406,14 @@ export const useGestureViewer = ({
324
406
  }, [zoomPinchGesture, zoomPanGesture, doubleTapGesture]);
325
407
  const animatedStyle = useAnimatedStyle(() => {
326
408
  return {
409
+ opacity: triggerOpacity.value,
327
410
  transform: [{
411
+ translateX: triggerTranslateX.value
412
+ }, {
413
+ translateY: triggerTranslateY.value
414
+ }, {
415
+ scale: triggerScale.value
416
+ }, {
328
417
  translateY: translateY.value
329
418
  }, {
330
419
  translateX: translateX.value
@@ -336,14 +425,15 @@ export const useGestureViewer = ({
336
425
  };
337
426
  });
338
427
  const backdropStyle = useAnimatedStyle(() => {
428
+ const baseOpacity = triggerOpacity.value;
339
429
  if (!animateBackdrop || scale.value !== 1) {
340
430
  return {
341
- opacity: 1
431
+ opacity: baseOpacity
342
432
  };
343
433
  }
344
- const opacity = interpolate(translateY.value, [0, 200], [1, 0], 'clamp');
434
+ const dismissOpacity = interpolate(translateY.value, [0, 200], [1, 0], 'clamp');
345
435
  return {
346
- opacity
436
+ opacity: dismissOpacity * baseOpacity
347
437
  };
348
438
  }, [animateBackdrop]);
349
439
  const onScrollBeginDrag = useCallback(() => {
@@ -351,7 +441,6 @@ export const useGestureViewer = ({
351
441
  }, [manager]);
352
442
  return {
353
443
  dataLength,
354
- translateY,
355
444
  listRef,
356
445
  isZoomed,
357
446
  isRotated,
@@ -359,6 +448,7 @@ export const useGestureViewer = ({
359
448
  zoomGesture,
360
449
  onMomentumScrollEnd,
361
450
  onScrollBeginDrag,
451
+ handleDismiss,
362
452
  animatedStyle,
363
453
  backdropStyle
364
454
  };
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useEffect","useMemo","useRef","useState","InteractionManager","useWindowDimensions","Gesture","Easing","interpolate","runOnJS","useAnimatedReaction","useAnimatedStyle","useSharedValue","withSpring","withTiming","registry","createBoundsConstraint","createScrollAction","getLoopAdjustedIndex","useGestureViewer","data","initialIndex","onIndexChange","onDismiss","width","customWidth","dismissThreshold","resistance","animateBackdrop","enableDismissGesture","enableSwipeGesture","enableZoomGesture","enableDoubleTapGesture","enableZoomPanGesture","enableLoop","maxZoomScale","itemSpacing","useSnap","id","screenWidth","height","screenHeight","isZoomed","setIsZoomed","isRotated","setIsRotated","manager","setManager","listRef","unsubscribeRef","onIndexChangeRef","lastEmittedIndexRef","initialTranslateY","initialTranslateX","startScale","translateY","translateX","scale","backdropOpacity","rotation","dataLength","length","adjustedInitialIndex","constrainTranslation","scrollTo","index","animated","scrollAction","current","emitZoomChange","currentScale","prevScale","emitRotationChange","currentRotation","prevRotation","value","previousScale","previousRotation","handleManagerChange","subscribe","state","currentIndex","unsubscribeFromRegistry","subscribeToManager","setDataLength","setEnableSwipeGesture","setCurrentIndex","setWidth","setHeight","setZoomSharedValues","setRotation","setEnableLoop","notifyStateChange","setListRef","runAfterInteractions","cancel","onMomentumScrollEnd","event","contentOffset","nativeEvent","scrollIndex","Math","round","x","isLoopHandled","handleMomentumScrollEnd","realIndex","needsJump","jumpToIndex","undefined","getState","dismissGesture","Pan","minDistance","averageTouches","activeCursor","activeOffsetY","failOffsetX","enabled","onUpdate","translationY","onEnd","damping","stiffness","zoomPinchGesture","Pinch","onBegin","newScale","deltaScale","centerX","focalX","centerY","focalY","newTranslateX","newTranslateY","constrainedTranslateX","constrainedTranslateY","duration","easing","bezier","zoomPanGesture","translationX","doubleTapGesture","Tap","numberOfTaps","nextScale","y","zoomGesture","Race","Exclusive","animatedStyle","transform","rotate","backdropStyle","opacity","onScrollBeginDrag","handleScrollBeginDrag"],"sourceRoot":"../../src","sources":["useGestureViewer.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useEffect","useMemo","useRef","useState","InteractionManager","useWindowDimensions","Gesture","Easing","interpolate","runOnJS","useAnimatedReaction","useAnimatedStyle","useSharedValue","withSpring","withTiming","registry","createBoundsConstraint","createScrollAction","getLoopAdjustedIndex","useGestureViewer","data","initialIndex","onIndexChange","onDismiss","width","customWidth","dismissThreshold","resistance","animateBackdrop","enableDismissGesture","enableSwipeGesture","enableZoomGesture","enableDoubleTapGesture","enableZoomPanGesture","enableLoop","maxZoomScale","itemSpacing","useSnap","id","onDismissStart","triggerAnimation","screenWidth","height","screenHeight","isZoomed","setIsZoomed","isRotated","setIsRotated","manager","setManager","shouldStartTriggerAnimation","setShouldStartTriggerAnimation","listRef","unsubscribeRef","onIndexChangeRef","lastEmittedIndexRef","triggerRectRef","onAnimationCompleteRef","onAnimationComplete","initialTranslateY","initialTranslateX","startScale","translateY","translateX","scale","backdropOpacity","rotation","triggerScale","triggerTranslateX","triggerTranslateY","triggerOpacity","dataLength","length","animationConfig","duration","easing","bezier","reduceMotion","adjustedInitialIndex","constrainTranslation","current","scrollTo","index","animated","scrollAction","emitZoomChange","currentScale","prevScale","emitRotationChange","currentRotation","prevRotation","value","previousScale","previousRotation","startX","x","startY","y","initialScaleFromTrigger","Math","min","finished","node","getTriggerNode","measure","_x","_y","pageX","pageY","clearTriggerNode","handleManagerChange","subscribe","state","currentIndex","unsubscribeFromRegistry","subscribeToManager","setDataLength","setEnableSwipeGesture","setCurrentIndex","setWidth","setHeight","setZoomSharedValues","setRotation","setEnableLoop","notifyStateChange","setListRef","runAfterInteractions","cancel","handleDismiss","endX","endY","endScale","onMomentumScrollEnd","event","contentOffset","nativeEvent","scrollIndex","round","isLoopHandled","handleMomentumScrollEnd","realIndex","needsJump","jumpToIndex","undefined","getState","dismissGesture","canDismiss","Pan","minDistance","averageTouches","activeCursor","activeOffsetY","failOffsetX","enabled","onUpdate","translationY","onEnd","damping","stiffness","zoomPinchGesture","Pinch","onBegin","newScale","deltaScale","centerX","focalX","centerY","focalY","newTranslateX","newTranslateY","constrainedTranslateX","constrainedTranslateY","zoomPanGesture","translationX","doubleTapGesture","Tap","numberOfTaps","nextScale","zoomGesture","Race","Exclusive","animatedStyle","opacity","transform","rotate","backdropStyle","baseOpacity","dismissOpacity","onScrollBeginDrag","handleScrollBeginDrag"],"sourceRoot":"../../src","sources":["useGestureViewer.ts"],"mappings":"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","ignoreList":[]}