@one-am/react-native-simple-image-slider 0.13.0 → 0.15.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.
Files changed (67) hide show
  1. package/README.md +3 -3
  2. package/lib/commonjs/@types/common.js.map +1 -1
  3. package/lib/commonjs/@types/icons.js.map +1 -1
  4. package/lib/commonjs/@types/pinch-to-zoom.js.map +1 -1
  5. package/lib/commonjs/@types/slider.js.map +1 -1
  6. package/lib/commonjs/@types/styled.d.js.map +1 -1
  7. package/lib/commonjs/BaseSimpleImageSlider.js +62 -69
  8. package/lib/commonjs/BaseSimpleImageSlider.js.map +1 -1
  9. package/lib/commonjs/FullScreenImageSlider.js +30 -26
  10. package/lib/commonjs/FullScreenImageSlider.js.map +1 -1
  11. package/lib/commonjs/PageCounter.js +9 -6
  12. package/lib/commonjs/PageCounter.js.map +1 -1
  13. package/lib/commonjs/PinchToZoom.js +11 -8
  14. package/lib/commonjs/PinchToZoom.js.map +1 -1
  15. package/lib/commonjs/SimpleImageSlider.js +31 -25
  16. package/lib/commonjs/SimpleImageSlider.js.map +1 -1
  17. package/lib/commonjs/SimpleImageSliderThemeProvider.js +16 -18
  18. package/lib/commonjs/SimpleImageSliderThemeProvider.js.map +1 -1
  19. package/lib/commonjs/icons/IconX.js +16 -14
  20. package/lib/commonjs/icons/IconX.js.map +1 -1
  21. package/lib/commonjs/index.js +1 -1
  22. package/lib/commonjs/index.js.map +1 -1
  23. package/lib/commonjs/package.json +1 -0
  24. package/lib/commonjs/utils/clamp.js.map +1 -1
  25. package/lib/commonjs/utils/renderProp.js +3 -2
  26. package/lib/commonjs/utils/renderProp.js.map +1 -1
  27. package/lib/module/@types/common.js +1 -1
  28. package/lib/module/@types/common.js.map +1 -1
  29. package/lib/module/@types/icons.js +2 -0
  30. package/lib/module/@types/icons.js.map +1 -1
  31. package/lib/module/@types/pinch-to-zoom.js +2 -0
  32. package/lib/module/@types/pinch-to-zoom.js.map +1 -1
  33. package/lib/module/@types/slider.js +2 -0
  34. package/lib/module/@types/slider.js.map +1 -1
  35. package/lib/module/@types/styled.d.js +2 -0
  36. package/lib/module/@types/styled.d.js.map +1 -1
  37. package/lib/module/BaseSimpleImageSlider.js +62 -67
  38. package/lib/module/BaseSimpleImageSlider.js.map +1 -1
  39. package/lib/module/FullScreenImageSlider.js +30 -24
  40. package/lib/module/FullScreenImageSlider.js.map +1 -1
  41. package/lib/module/PageCounter.js +10 -5
  42. package/lib/module/PageCounter.js.map +1 -1
  43. package/lib/module/PinchToZoom.js +12 -7
  44. package/lib/module/PinchToZoom.js.map +1 -1
  45. package/lib/module/SimpleImageSlider.js +31 -23
  46. package/lib/module/SimpleImageSlider.js.map +1 -1
  47. package/lib/module/SimpleImageSliderThemeProvider.js +17 -17
  48. package/lib/module/SimpleImageSliderThemeProvider.js.map +1 -1
  49. package/lib/module/icons/IconX.js +16 -12
  50. package/lib/module/icons/IconX.js.map +1 -1
  51. package/lib/module/index.js +2 -0
  52. package/lib/module/index.js.map +1 -1
  53. package/lib/module/package.json +1 -0
  54. package/lib/module/utils/clamp.js +2 -0
  55. package/lib/module/utils/clamp.js.map +1 -1
  56. package/lib/module/utils/renderProp.js +4 -1
  57. package/lib/module/utils/renderProp.js.map +1 -1
  58. package/lib/typescript/src/BaseSimpleImageSlider.d.ts +0 -5
  59. package/lib/typescript/src/BaseSimpleImageSlider.d.ts.map +1 -1
  60. package/lib/typescript/src/FullScreenImageSlider.d.ts +4 -4
  61. package/lib/typescript/src/FullScreenImageSlider.d.ts.map +1 -1
  62. package/lib/typescript/src/SimpleImageSlider.d.ts +15 -3
  63. package/lib/typescript/src/SimpleImageSlider.d.ts.map +1 -1
  64. package/package.json +29 -30
  65. package/src/BaseSimpleImageSlider.tsx +3 -23
  66. package/src/FullScreenImageSlider.tsx +1 -4
  67. package/src/SimpleImageSlider.tsx +10 -0
@@ -34,17 +34,17 @@ declare const FullScreenImageSlider: React.ForwardRefExoticComponent<Omit<BaseSi
34
34
  /**
35
35
  * @description Whether the modal is open or not.
36
36
  */
37
- open?: boolean | undefined;
37
+ open?: boolean;
38
38
  /**
39
39
  * @description Callback that is called when the modal is requested to be closed.
40
40
  */
41
- onRequestClose?: (() => void) | undefined;
41
+ onRequestClose?: () => void;
42
42
  /**
43
43
  * @description Callback that renders an element to be displayed as the description of the current image.
44
44
  * @param item The current item being displayed.
45
45
  * @param index The index of the current item being displayed.
46
46
  */
47
- renderDescription?: ((item: SimpleImageSliderItem, index: number) => ReactNode) | undefined;
47
+ renderDescription?: (item: SimpleImageSliderItem, index: number) => ReactNode;
48
48
  /**
49
49
  * @description Item to be rendered in place of the default close button icon.
50
50
  */
@@ -52,7 +52,7 @@ declare const FullScreenImageSlider: React.ForwardRefExoticComponent<Omit<BaseSi
52
52
  /**
53
53
  * @description Callback that is called when the modal begins to fade out.
54
54
  */
55
- onFadeOut?: (() => void) | undefined;
55
+ onFadeOut?: () => void;
56
56
  } & React.RefAttributes<FlashList<SimpleImageSliderItem>>>;
57
57
  export default FullScreenImageSlider;
58
58
  //# sourceMappingURL=FullScreenImageSlider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FullScreenImageSlider.d.ts","sourceRoot":"","sources":["../../../src/FullScreenImageSlider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAEV,KAAK,SAAS,EAKjB,MAAM,OAAO,CAAC;AAWf,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAA4B,EAAE,KAAK,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAG/F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAmB,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEjE,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAAC,0BAA0B,EAAE,YAAY,CAAC,GAAG;IACtF;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC;IAC9E;;OAEG;IACH,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CAC1B,CAAC;AAqBF;;GAEG;AACH,QAAA,MAAM,qBAAqB;IA9CvB;;OAEG;;IAEH;;OAEG;4BACoB,IAAI;IAC3B;;;;OAIG;gCACwB,qBAAqB,SAAS,MAAM,KAAK,SAAS;IAC7E;;OAEG;sBACe,UAAU;IAC5B;;OAEG;uBACe,IAAI;0DAqIxB,CAAC;AAEH,eAAe,qBAAqB,CAAC"}
1
+ {"version":3,"file":"FullScreenImageSlider.d.ts","sourceRoot":"","sources":["../../../src/FullScreenImageSlider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAEV,KAAK,SAAS,EAKjB,MAAM,OAAO,CAAC;AAWf,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAA4B,EAAE,KAAK,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAG/F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAmB,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEjE,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAAC,0BAA0B,EAAE,YAAY,CAAC,GAAG;IACtF;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC;IAC9E;;OAEG;IACH,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CAC1B,CAAC;AAqBF;;GAEG;AACH,QAAA,MAAM,qBAAqB;IA9CvB;;OAEG;WACI,OAAO;IACd;;OAEG;qBACc,MAAM,IAAI;IAC3B;;;;OAIG;wBACiB,CAAC,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,KAAK,SAAS;IAC7E;;OAEG;sBACe,UAAU;IAC5B;;OAEG;gBACS,MAAM,IAAI;0DAkIxB,CAAC;AAEH,eAAe,qBAAqB,CAAC"}
@@ -17,6 +17,12 @@ export type SimpleImageSliderProps = BaseSimpleImageSliderProps & {
17
17
  * @description Passed to the {@link FullScreenImageSlider} component.
18
18
  */
19
19
  FullScreenCloseButtonIcon?: FullScreenImageSliderProps['CloseButtonIcon'];
20
+ /**
21
+ * @description The aspect ratio of the images when full screen.
22
+ *
23
+ * @default {@link FullScreenImageSliderProps.imageAspectRatio}
24
+ */
25
+ fullScreenImageAspectRatio?: number;
20
26
  };
21
27
  /**
22
28
  * @description A simple image slider that displays images in a list and can show a {@link FullScreenImageSlider} on press.
@@ -26,15 +32,21 @@ declare const SimpleImageSlider: React.ForwardRefExoticComponent<BaseSimpleImage
26
32
  * @description Whether the full screen mode is enabled or not. **Caution:** when this is enabled, the `onItemPress` prop will be ignored.
27
33
  * @default false
28
34
  */
29
- fullScreenEnabled?: boolean | undefined;
35
+ fullScreenEnabled?: boolean;
30
36
  /**
31
37
  * @description Passed to the {@link FullScreenImageSlider} component.
32
38
  */
33
- renderFullScreenDescription?: FullScreenImageSliderProps['renderDescription'];
39
+ renderFullScreenDescription?: FullScreenImageSliderProps["renderDescription"];
34
40
  /**
35
41
  * @description Passed to the {@link FullScreenImageSlider} component.
36
42
  */
37
- FullScreenCloseButtonIcon?: FullScreenImageSliderProps['CloseButtonIcon'];
43
+ FullScreenCloseButtonIcon?: FullScreenImageSliderProps["CloseButtonIcon"];
44
+ /**
45
+ * @description The aspect ratio of the images when full screen.
46
+ *
47
+ * @default {@link FullScreenImageSliderProps.imageAspectRatio}
48
+ */
49
+ fullScreenImageAspectRatio?: number;
38
50
  } & React.RefAttributes<FlashList<SimpleImageSliderItem>>>;
39
51
  export default SimpleImageSlider;
40
52
  //# sourceMappingURL=SimpleImageSlider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SimpleImageSlider.d.ts","sourceRoot":"","sources":["../../../src/SimpleImageSlider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoD,MAAM,OAAO,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAA8B,EAAE,KAAK,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AACjG,OAA4B,EAAE,KAAK,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAC/F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7D,MAAM,MAAM,sBAAsB,GAAG,0BAA0B,GAAG;IAC9D;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,2BAA2B,CAAC,EAAE,0BAA0B,CAAC,mBAAmB,CAAC,CAAC;IAC9E;;OAEG;IACH,yBAAyB,CAAC,EAAE,0BAA0B,CAAC,iBAAiB,CAAC,CAAC;CAC7E,CAAC;AAEF;;GAEG;AACH,QAAA,MAAM,iBAAiB;IAlBnB;;;OAGG;;IAEH;;OAEG;kCAC2B,0BAA0B,CAAC,mBAAmB,CAAC;IAC7E;;OAEG;gCACyB,0BAA0B,CAAC,iBAAiB,CAAC;0DA6E5E,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"SimpleImageSlider.d.ts","sourceRoot":"","sources":["../../../src/SimpleImageSlider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoD,MAAM,OAAO,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAA8B,EAAE,KAAK,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AACjG,OAA4B,EAAE,KAAK,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAC/F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7D,MAAM,MAAM,sBAAsB,GAAG,0BAA0B,GAAG;IAC9D;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,2BAA2B,CAAC,EAAE,0BAA0B,CAAC,mBAAmB,CAAC,CAAC;IAC9E;;OAEG;IACH,yBAAyB,CAAC,EAAE,0BAA0B,CAAC,iBAAiB,CAAC,CAAC;IAC1E;;;;OAIG;IACH,0BAA0B,CAAC,EAAE,MAAM,CAAC;CACvC,CAAC;AAEF;;GAEG;AACH,QAAA,MAAM,iBAAiB;IAxBnB;;;OAGG;wBACiB,OAAO;IAC3B;;OAEG;kCAC2B,0BAA0B,CAAC,mBAAmB,CAAC;IAC7E;;OAEG;gCACyB,0BAA0B,CAAC,iBAAiB,CAAC;IACzE;;;;OAIG;iCAC0B,MAAM;0DAiFtC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@one-am/react-native-simple-image-slider",
3
- "version": "0.13.0",
3
+ "version": "0.15.0",
4
4
  "description": "A simple and performant image slider made with FlashList. Includes a full screen gallery component with gesture support.",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -36,8 +36,8 @@
36
36
  },
37
37
  "keywords": [
38
38
  "react-native",
39
- "ios",
40
- "android"
39
+ "image-slider",
40
+ "gallery"
41
41
  ],
42
42
  "repository": {
43
43
  "type": "git",
@@ -53,6 +53,22 @@
53
53
  "registry": "https://registry.npmjs.org/",
54
54
  "access": "public"
55
55
  },
56
+ "dependencies": {
57
+ "merge-refs": "^1.2.2"
58
+ },
59
+ "peerDependencies": {
60
+ "@shopify/flash-list": "*",
61
+ "expo-haptics": "*",
62
+ "expo-image": "*",
63
+ "expo-status-bar": "*",
64
+ "react": "*",
65
+ "react-native": "*",
66
+ "react-native-gesture-handler": "*",
67
+ "react-native-reanimated": "*",
68
+ "react-native-safe-area-context": "*",
69
+ "react-native-svg": "*",
70
+ "styled-components": "*"
71
+ },
56
72
  "devDependencies": {
57
73
  "@babel/runtime": "^7.24.1",
58
74
  "@commitlint/config-conventional": "^17.0.2",
@@ -83,36 +99,22 @@
83
99
  "expo-image": "^1.10.6",
84
100
  "expo-status-bar": "^1.11.1",
85
101
  "jest": "^29.7.0",
86
- "prettier": "^3.2.5",
102
+ "prettier": "^3.4.2",
87
103
  "react": "18.2.0",
88
- "react-native": "0.73.6",
89
- "react-native-builder-bob": "^0.20.0",
90
- "react-native-gesture-handler": "^2.15.0",
91
- "react-native-reanimated": "^3.3.0",
92
- "react-native-safe-area-context": "^4.9.0",
93
- "react-native-svg": "^15.1.0",
104
+ "react-native": "0.74.5",
105
+ "react-native-builder-bob": "^0.35.2",
106
+ "react-native-gesture-handler": "~2.16.1",
107
+ "react-native-reanimated": "~3.10.1",
108
+ "react-native-safe-area-context": "4.10.5",
109
+ "react-native-svg": "15.2.0",
110
+ "react-native-web": "~0.19.6",
94
111
  "release-it": "^15.0.0",
95
- "styled-components": "^6.1.8",
112
+ "styled-components": "^6.1.13",
96
113
  "typescript": "^5.4.2",
97
114
  "typescript-plugin-styled-components": "^3.0.0"
98
115
  },
99
116
  "resolutions": {
100
- "@types/react": "^18.2.44",
101
- "styled-components": "^6"
102
- },
103
- "peerDependencies": {
104
- "@babel/core": "*",
105
- "@babel/runtime": "*",
106
- "expo-haptics": "*",
107
- "expo-image": "*",
108
- "expo-status-bar": "*",
109
- "react": "*",
110
- "react-native": "*",
111
- "react-native-gesture-handler": "*",
112
- "react-native-reanimated": "*",
113
- "react-native-safe-area-context": "*",
114
- "react-native-svg": "*",
115
- "styled-components": "*"
117
+ "styled-components": "^6.1.13"
116
118
  },
117
119
  "workspaces": [
118
120
  "example"
@@ -160,8 +162,5 @@
160
162
  }
161
163
  ]
162
164
  ]
163
- },
164
- "dependencies": {
165
- "merge-refs": "^1.2.2"
166
165
  }
167
166
  }
@@ -122,11 +122,6 @@ export type BaseSimpleImageSliderProps = {
122
122
  * @description Callback that is called when gestures should lead to a dismissal.
123
123
  */
124
124
  onPinchToZoomRequestClose?: PinchToZoomProps['onDismiss'];
125
- /**
126
- * @description If greater than 0, items will be loaded in groups of this size.
127
- * @default 5
128
- */
129
- dataWindowSize?: number;
130
125
  /**
131
126
  * @description The tag to be used for shared transitions. This is applied to the current image in the list.
132
127
  */
@@ -222,7 +217,6 @@ const BaseSimpleImageSlider = forwardRef<
222
217
  enablePinchToZoom = false,
223
218
  onPinchToZoomStatusChange,
224
219
  onPinchToZoomRequestClose,
225
- dataWindowSize = 5,
226
220
  sharedTransitionTag,
227
221
  imageStyle,
228
222
  },
@@ -242,23 +236,10 @@ const BaseSimpleImageSlider = forwardRef<
242
236
  const [currentItem, setCurrentItem] = useState(0);
243
237
 
244
238
  const slicedData = useMemo(
245
- () => (maxItems !== undefined ? data?.slice(0, maxItems) ?? [] : data ?? []),
239
+ () => (maxItems !== undefined ? (data?.slice(0, maxItems) ?? []) : (data ?? [])),
246
240
  [data, maxItems]
247
241
  );
248
242
 
249
- const [currentGroupIndex, setCurrentGroupIndex] = useState(0);
250
-
251
- const nextGroup = useCallback(() => {
252
- setCurrentGroupIndex((prev) => prev + 1);
253
- }, []);
254
-
255
- const internalData = useMemo(() => {
256
- if (dataWindowSize <= 0) {
257
- return slicedData;
258
- }
259
- return slicedData.slice(0, (currentGroupIndex + 1) * dataWindowSize);
260
- }, [currentGroupIndex, dataWindowSize, slicedData]);
261
-
262
243
  useEffect(() => {
263
244
  setCurrentItem(indexOverride ?? 0);
264
245
 
@@ -342,6 +323,7 @@ const BaseSimpleImageSlider = forwardRef<
342
323
 
343
324
  const list = (
344
325
  <FlashList
326
+ // @ts-expect-error - there's just a small inconsistency with hitSlop typing
345
327
  renderScrollComponent={ScrollView}
346
328
  scrollEnabled={scrollEnabled}
347
329
  disableScrollViewPanResponder={enablePinchToZoom ? !scrollEnabled : false}
@@ -358,9 +340,7 @@ const BaseSimpleImageSlider = forwardRef<
358
340
  horizontal={true}
359
341
  keyExtractor={keyExtractor}
360
342
  renderItem={renderItem}
361
- data={internalData}
362
- onEndReached={nextGroup}
363
- onEndReachedThreshold={0.5}
343
+ data={slicedData}
364
344
  estimatedItemSize={estimatedItemSize}
365
345
  estimatedListSize={{
366
346
  width: estimatedItemSize,
@@ -169,10 +169,7 @@ const FullScreenImageSlider = forwardRef<
169
169
 
170
170
  {renderDescription && data[internalIndex] ? (
171
171
  <StyledDescriptionContainer style={styles.descriptionContainer}>
172
- {renderDescription(
173
- data[internalIndex] as SimpleImageSliderItem,
174
- internalIndex
175
- )}
172
+ {renderDescription(data[internalIndex], internalIndex)}
176
173
  </StyledDescriptionContainer>
177
174
  ) : null}
178
175
  </StyledModalContentContainer>
@@ -19,6 +19,12 @@ export type SimpleImageSliderProps = BaseSimpleImageSliderProps & {
19
19
  * @description Passed to the {@link FullScreenImageSlider} component.
20
20
  */
21
21
  FullScreenCloseButtonIcon?: FullScreenImageSliderProps['CloseButtonIcon'];
22
+ /**
23
+ * @description The aspect ratio of the images when full screen.
24
+ *
25
+ * @default {@link FullScreenImageSliderProps.imageAspectRatio}
26
+ */
27
+ fullScreenImageAspectRatio?: number;
22
28
  };
23
29
 
24
30
  /**
@@ -33,6 +39,8 @@ const SimpleImageSlider = forwardRef<FlashList<SimpleImageSliderItem>, SimpleIma
33
39
  onViewableItemChange,
34
40
  FullScreenCloseButtonIcon,
35
41
  renderFullScreenDescription,
42
+ imageAspectRatio,
43
+ fullScreenImageAspectRatio,
36
44
  ...props
37
45
  },
38
46
  ref
@@ -72,6 +80,7 @@ const SimpleImageSlider = forwardRef<FlashList<SimpleImageSliderItem>, SimpleIma
72
80
  <>
73
81
  <BaseListImageSlider
74
82
  {...props}
83
+ imageAspectRatio={imageAspectRatio}
75
84
  data={data}
76
85
  ref={mergeRefs(ref, listRef)}
77
86
  onItemPress={fullScreenEnabled ? openFullScreen : onItemPress}
@@ -80,6 +89,7 @@ const SimpleImageSlider = forwardRef<FlashList<SimpleImageSliderItem>, SimpleIma
80
89
  {fullScreenEnabled ? (
81
90
  <FullScreenImageSlider
82
91
  {...props}
92
+ imageAspectRatio={fullScreenImageAspectRatio ?? imageAspectRatio}
83
93
  ref={fullScreenListRef}
84
94
  open={fullScreen}
85
95
  onRequestClose={onRequestClose}