@onekeyfe/react-native-image-crop-picker 3.0.147

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 (119) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +83 -0
  3. package/ReactNativeImageCropPicker.podspec +40 -0
  4. package/android/CMakeLists.txt +24 -0
  5. package/android/build.gradle +144 -0
  6. package/android/gradle.properties +4 -0
  7. package/android/src/main/AndroidManifest.xml +24 -0
  8. package/android/src/main/cpp/cpp-adapter.cpp +6 -0
  9. package/android/src/main/java/com/margelo/nitro/reactnativeimagecroppicker/ImageCropPickerException.kt +45 -0
  10. package/android/src/main/java/com/margelo/nitro/reactnativeimagecroppicker/ImageCropPickerImageProcessor.kt +308 -0
  11. package/android/src/main/java/com/margelo/nitro/reactnativeimagecroppicker/ImageCropPickerSession.kt +297 -0
  12. package/android/src/main/java/com/margelo/nitro/reactnativeimagecroppicker/ReactNativeImageCropPicker.kt +69 -0
  13. package/android/src/main/java/com/margelo/nitro/reactnativeimagecroppicker/ReactNativeImageCropPickerPackage.kt +24 -0
  14. package/ios/ImageCropPickerError.swift +57 -0
  15. package/ios/ImageCropPickerImageProcessor.swift +343 -0
  16. package/ios/ImageCropPickerSession.swift +407 -0
  17. package/ios/ReactNativeImageCropPicker.swift +65 -0
  18. package/ios/TOCropViewController/Categories/UIImage+CropRotate.h +39 -0
  19. package/ios/TOCropViewController/Categories/UIImage+CropRotate.m +94 -0
  20. package/ios/TOCropViewController/Constants/TOCropViewConstants.h +63 -0
  21. package/ios/TOCropViewController/LICENSE +21 -0
  22. package/ios/TOCropViewController/Models/TOActivityCroppedImageProvider.h +38 -0
  23. package/ios/TOCropViewController/Models/TOActivityCroppedImageProvider.m +73 -0
  24. package/ios/TOCropViewController/Models/TOCropViewControllerAspectRatioPreset.h +64 -0
  25. package/ios/TOCropViewController/Models/TOCropViewControllerAspectRatioPreset.m +121 -0
  26. package/ios/TOCropViewController/Models/TOCropViewControllerTransitioning.h +49 -0
  27. package/ios/TOCropViewController/Models/TOCropViewControllerTransitioning.m +125 -0
  28. package/ios/TOCropViewController/Models/TOCroppedImageAttributes.h +38 -0
  29. package/ios/TOCropViewController/Models/TOCroppedImageAttributes.m +45 -0
  30. package/ios/TOCropViewController/Resources/Base.lproj/TOCropViewControllerLocalizable.strings +8 -0
  31. package/ios/TOCropViewController/Resources/PrivacyInfo.xcprivacy +14 -0
  32. package/ios/TOCropViewController/Resources/ar.lproj/TOCropViewControllerLocalizable.strings +9 -0
  33. package/ios/TOCropViewController/Resources/ca.lproj/TOCropViewControllerLocalizable.strings +8 -0
  34. package/ios/TOCropViewController/Resources/cs.lproj/TOCropViewControllerLocalizable.strings +8 -0
  35. package/ios/TOCropViewController/Resources/da-DK.lproj/TOCropViewControllerLocalizable.strings +8 -0
  36. package/ios/TOCropViewController/Resources/de.lproj/TOCropViewControllerLocalizable.strings +8 -0
  37. package/ios/TOCropViewController/Resources/en.lproj/TOCropViewControllerLocalizable.strings +8 -0
  38. package/ios/TOCropViewController/Resources/es.lproj/TOCropViewControllerLocalizable.strings +8 -0
  39. package/ios/TOCropViewController/Resources/fa-IR.lproj/TOCropViewControllerLocalizable.strings +8 -0
  40. package/ios/TOCropViewController/Resources/fa.lproj/TOCropViewControllerLocalizable.strings +8 -0
  41. package/ios/TOCropViewController/Resources/fi.lproj/TOCropViewControllerLocalizable.strings +8 -0
  42. package/ios/TOCropViewController/Resources/fr.lproj/TOCropViewControllerLocalizable.strings +8 -0
  43. package/ios/TOCropViewController/Resources/hu.lproj/TOCropViewControllerLocalizable.strings +9 -0
  44. package/ios/TOCropViewController/Resources/id.lproj/TOCropViewControllerLocalizable.strings +8 -0
  45. package/ios/TOCropViewController/Resources/it.lproj/TOCropViewControllerLocalizable.strings +8 -0
  46. package/ios/TOCropViewController/Resources/ja.lproj/TOCropViewControllerLocalizable.strings +8 -0
  47. package/ios/TOCropViewController/Resources/ko.lproj/TOCropViewControllerLocalizable.strings +8 -0
  48. package/ios/TOCropViewController/Resources/ms.lproj/TOCropViewControllerLocalizable.strings +8 -0
  49. package/ios/TOCropViewController/Resources/nl.lproj/TOCropViewControllerLocalizable.strings +8 -0
  50. package/ios/TOCropViewController/Resources/pl.lproj/TOCropViewControllerLocalizable.strings +8 -0
  51. package/ios/TOCropViewController/Resources/pt-BR.lproj/TOCropViewControllerLocalizable.strings +8 -0
  52. package/ios/TOCropViewController/Resources/pt.lproj/TOCropViewControllerLocalizable.strings +8 -0
  53. package/ios/TOCropViewController/Resources/ro.lproj/TOCropViewControllerLocalizable.strings +8 -0
  54. package/ios/TOCropViewController/Resources/ru.lproj/TOCropViewControllerLocalizable.strings +8 -0
  55. package/ios/TOCropViewController/Resources/sk.lproj/TOCropViewControllerLocalizable.strings +8 -0
  56. package/ios/TOCropViewController/Resources/tr.lproj/TOCropViewControllerLocalizable.strings +9 -0
  57. package/ios/TOCropViewController/Resources/uk.lproj/TOCropViewControllerLocalizable.strings +8 -0
  58. package/ios/TOCropViewController/Resources/vi.lproj/TOCropViewControllerLocalizable.strings +9 -0
  59. package/ios/TOCropViewController/Resources/zh-Hans.lproj/TOCropViewControllerLocalizable.strings +9 -0
  60. package/ios/TOCropViewController/Resources/zh-Hant.lproj/TOCropViewControllerLocalizable.strings +9 -0
  61. package/ios/TOCropViewController/TOCropViewController.h +479 -0
  62. package/ios/TOCropViewController/TOCropViewController.m +1355 -0
  63. package/ios/TOCropViewController/Views/TOCropOverlayView.h +43 -0
  64. package/ios/TOCropViewController/Views/TOCropOverlayView.m +240 -0
  65. package/ios/TOCropViewController/Views/TOCropScrollView.h +39 -0
  66. package/ios/TOCropViewController/Views/TOCropScrollView.m +48 -0
  67. package/ios/TOCropViewController/Views/TOCropToolbar.h +104 -0
  68. package/ios/TOCropViewController/Views/TOCropToolbar.m +783 -0
  69. package/ios/TOCropViewController/Views/TOCropView.h +311 -0
  70. package/ios/TOCropViewController/Views/TOCropView.m +1787 -0
  71. package/lib/module/ReactNativeImageCropPicker.nitro.js +4 -0
  72. package/lib/module/ReactNativeImageCropPicker.nitro.js.map +1 -0
  73. package/lib/module/index.js +83 -0
  74. package/lib/module/index.js.map +1 -0
  75. package/lib/module/package.json +1 -0
  76. package/lib/typescript/package.json +1 -0
  77. package/lib/typescript/src/ReactNativeImageCropPicker.nitro.d.ts +54 -0
  78. package/lib/typescript/src/ReactNativeImageCropPicker.nitro.d.ts.map +1 -0
  79. package/lib/typescript/src/index.d.ts +31 -0
  80. package/lib/typescript/src/index.d.ts.map +1 -0
  81. package/nitro.json +23 -0
  82. package/nitrogen/generated/android/c++/JCropRect.hpp +69 -0
  83. package/nitrogen/generated/android/c++/JHybridReactNativeImageCropPickerSpec.cpp +125 -0
  84. package/nitrogen/generated/android/c++/JHybridReactNativeImageCropPickerSpec.hpp +66 -0
  85. package/nitrogen/generated/android/c++/JImageCropPickerOptions.hpp +154 -0
  86. package/nitrogen/generated/android/c++/JPickedImage.hpp +88 -0
  87. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativeimagecroppicker/CropRect.kt +66 -0
  88. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativeimagecroppicker/HybridReactNativeImageCropPickerSpec.kt +69 -0
  89. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativeimagecroppicker/ImageCropPickerOptions.kt +171 -0
  90. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativeimagecroppicker/PickedImage.kt +86 -0
  91. package/nitrogen/generated/android/kotlin/com/margelo/nitro/reactnativeimagecroppicker/reactnativeimagecroppickerOnLoad.kt +35 -0
  92. package/nitrogen/generated/android/reactnativeimagecroppicker+autolinking.cmake +81 -0
  93. package/nitrogen/generated/android/reactnativeimagecroppicker+autolinking.gradle +27 -0
  94. package/nitrogen/generated/android/reactnativeimagecroppickerOnLoad.cpp +54 -0
  95. package/nitrogen/generated/android/reactnativeimagecroppickerOnLoad.hpp +34 -0
  96. package/nitrogen/generated/ios/ReactNativeImageCropPicker+autolinking.rb +62 -0
  97. package/nitrogen/generated/ios/ReactNativeImageCropPicker-Swift-Cxx-Bridge.cpp +57 -0
  98. package/nitrogen/generated/ios/ReactNativeImageCropPicker-Swift-Cxx-Bridge.hpp +221 -0
  99. package/nitrogen/generated/ios/ReactNativeImageCropPicker-Swift-Cxx-Umbrella.hpp +55 -0
  100. package/nitrogen/generated/ios/ReactNativeImageCropPickerAutolinking.mm +33 -0
  101. package/nitrogen/generated/ios/ReactNativeImageCropPickerAutolinking.swift +26 -0
  102. package/nitrogen/generated/ios/c++/HybridReactNativeImageCropPickerSpecSwift.cpp +11 -0
  103. package/nitrogen/generated/ios/c++/HybridReactNativeImageCropPickerSpecSwift.hpp +116 -0
  104. package/nitrogen/generated/ios/swift/CropRect.swift +44 -0
  105. package/nitrogen/generated/ios/swift/Func_void.swift +46 -0
  106. package/nitrogen/generated/ios/swift/Func_void_PickedImage.swift +46 -0
  107. package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +46 -0
  108. package/nitrogen/generated/ios/swift/HybridReactNativeImageCropPickerSpec.swift +58 -0
  109. package/nitrogen/generated/ios/swift/HybridReactNativeImageCropPickerSpec_cxx.swift +202 -0
  110. package/nitrogen/generated/ios/swift/ImageCropPickerOptions.swift +474 -0
  111. package/nitrogen/generated/ios/swift/PickedImage.swift +96 -0
  112. package/nitrogen/generated/shared/c++/CropRect.hpp +95 -0
  113. package/nitrogen/generated/shared/c++/HybridReactNativeImageCropPickerSpec.cpp +24 -0
  114. package/nitrogen/generated/shared/c++/HybridReactNativeImageCropPickerSpec.hpp +71 -0
  115. package/nitrogen/generated/shared/c++/ImageCropPickerOptions.hpp +180 -0
  116. package/nitrogen/generated/shared/c++/PickedImage.hpp +114 -0
  117. package/package.json +173 -0
  118. package/src/ReactNativeImageCropPicker.nitro.ts +72 -0
  119. package/src/index.tsx +134 -0
@@ -0,0 +1,311 @@
1
+ //
2
+ // TOCropView.h
3
+ //
4
+ // Copyright 2015-2026 Timothy Oliver. All rights reserved.
5
+ //
6
+ // Permission is hereby granted, free of charge, to any person obtaining a copy
7
+ // of this software and associated documentation files (the "Software"), to
8
+ // deal in the Software without restriction, including without limitation the
9
+ // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
10
+ // sell copies of the Software, and to permit persons to whom the Software is
11
+ // furnished to do so, subject to the following conditions:
12
+ //
13
+ // The above copyright notice and this permission notice shall be included in
14
+ // all copies or substantial portions of the Software.
15
+ //
16
+ // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
17
+ // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
+ // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
20
+ // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
21
+ // IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22
+
23
+ #import <UIKit/UIKit.h>
24
+
25
+ #if !__has_include(<TOCropViewController/TOCropViewConstants.h>)
26
+ #import "TOCropViewConstants.h"
27
+ #else
28
+ #import <TOCropViewController/TOCropViewConstants.h>
29
+ #endif
30
+
31
+ // Imported rather than forward-declared so that `gridOverlayView` has a complete type.
32
+ // Swift omits properties whose class it only knows as a forward declaration, which made
33
+ // the grid overlay unreachable from Swift in every configuration.
34
+ #if !__has_include(<TOCropViewController/TOCropOverlayView.h>)
35
+ #import "TOCropOverlayView.h"
36
+ #else
37
+ #import <TOCropViewController/TOCropOverlayView.h>
38
+ #endif
39
+
40
+ @class TOCropView;
41
+
42
+ NS_ASSUME_NONNULL_BEGIN
43
+
44
+ @protocol TOCropViewDelegate <NSObject>
45
+
46
+ - (void)cropViewDidBecomeResettable:(nonnull TOCropView *)cropView;
47
+ - (void)cropViewDidBecomeNonResettable:(nonnull TOCropView *)cropView;
48
+
49
+ @end
50
+
51
+ @interface TOCropView : UIView
52
+
53
+ /**
54
+ The image that the crop view is displaying. This cannot be changed once the crop view is instantiated.
55
+ */
56
+ @property (nonnull, nonatomic, strong, readonly) UIImage *image;
57
+
58
+ /**
59
+ The cropping style of the crop view (eg, rectangular or circular)
60
+ */
61
+ @property (nonatomic, assign, readonly) TOCropViewCroppingStyle croppingStyle;
62
+
63
+ /**
64
+ A semi-transparent grey view, overlaid on top of the background image
65
+ */
66
+ @property (nonatomic, strong, readonly) UIView *overlayView;
67
+
68
+ /**
69
+ A grid view overlaid on top of the foreground image view's container.
70
+ This is nil when the cropping style is circular, which has no rectangular grid.
71
+ */
72
+ @property (nullable, nonatomic, strong, readonly) TOCropOverlayView *gridOverlayView;
73
+
74
+ /**
75
+ A container view that clips the a copy of the image so it appears over the dimming view
76
+ */
77
+ @property (nonnull, nonatomic, readonly) UIView *foregroundContainerView;
78
+
79
+ /**
80
+ A delegate object that receives notifications from the crop view
81
+ */
82
+ @property (nullable, nonatomic, weak) id<TOCropViewDelegate> delegate;
83
+
84
+ /**
85
+ If false, the user cannot resize the crop box frame using a pan gesture from a corner.
86
+ Default vaue is YES.
87
+ */
88
+ @property (nonatomic, assign) BOOL cropBoxResizeEnabled;
89
+
90
+ /**
91
+ Whether the user has manipulated the crop view to the point where it can be reset
92
+ */
93
+ @property (nonatomic, readonly) BOOL canBeReset;
94
+
95
+ /**
96
+ The frame of the cropping box in the coordinate space of the crop view
97
+ */
98
+ @property (nonatomic, readonly) CGRect cropBoxFrame;
99
+
100
+ /**
101
+ The frame of the entire image in the backing scroll view
102
+ */
103
+ @property (nonatomic, readonly) CGRect imageViewFrame;
104
+
105
+ /**
106
+ Inset the workable region of the crop view in case in order to make space for accessory views
107
+ */
108
+ @property (nonatomic, assign) UIEdgeInsets cropRegionInsets;
109
+
110
+ /**
111
+ Disable the dynamic translucency in order to smoothly relayout the view
112
+ */
113
+ @property (nonatomic, assign) BOOL simpleRenderMode;
114
+
115
+ /**
116
+ When performing manual content layout (such as during screen rotation), disable any internal layout
117
+ */
118
+ @property (nonatomic, assign) BOOL internalLayoutDisabled;
119
+
120
+ /**
121
+ A width x height ratio that the crop box will be rescaled to (eg 4:3 is {4.0f, 3.0f})
122
+ Setting it to CGSizeZero will reset the aspect ratio to the image's own ratio.
123
+ */
124
+ @property (nonatomic, assign) CGSize aspectRatio;
125
+
126
+ /**
127
+ When the cropping box is locked to its current aspect ratio (But can still be resized)
128
+ */
129
+ @property (nonatomic, assign) BOOL aspectRatioLockEnabled;
130
+
131
+ /**
132
+ If true, a custom aspect ratio is set, and the aspectRatioLockEnabled is set to YES,
133
+ the crop box will swap it's dimensions depending on portrait or landscape sized images.
134
+ This value also controls whether the dimensions can swap when the image is rotated.
135
+
136
+ Default is NO.
137
+ */
138
+ @property (nonatomic, assign) BOOL aspectRatioLockDimensionSwapEnabled;
139
+
140
+ /**
141
+ When the user taps 'reset', whether the aspect ratio will also be reset as well
142
+ Default is YES
143
+ */
144
+ @property (nonatomic, assign) BOOL resetAspectRatioEnabled;
145
+
146
+ /**
147
+ True when the height of the crop box is bigger than the width
148
+ */
149
+ @property (nonatomic, readonly) BOOL cropBoxAspectRatioIsPortrait;
150
+
151
+ /**
152
+ The rotation angle of the crop view, in multiples of 90 degrees. Counter-clockwise
153
+ rotations are negative and clockwise ones positive, so the value is in the
154
+ range (-360, 360). Values that aren't a multiple of 90 are treated as 0.
155
+ */
156
+ @property (nonatomic, assign) NSInteger angle;
157
+
158
+ /**
159
+ Hide all of the crop elements for transition animations
160
+ */
161
+ @property (nonatomic, assign) BOOL croppingViewsHidden;
162
+
163
+ /**
164
+ In relation to the coordinate space of the image, the frame that the crop view is focusing on
165
+ */
166
+ @property (nonatomic, assign) CGRect imageCropFrame;
167
+
168
+ /**
169
+ Set the grid overlay graphic to be hidden
170
+ */
171
+ @property (nonatomic, assign) BOOL gridOverlayHidden;
172
+
173
+ ///**
174
+ // Paddings of the crop rectangle. Default to 14.0
175
+ // */
176
+ @property (nonatomic) CGFloat cropViewPadding;
177
+
178
+ /**
179
+ Delay before crop frame is adjusted according new crop area. Default to 0.8
180
+ */
181
+ @property (nonatomic) NSTimeInterval cropAdjustingDelay;
182
+
183
+ /**
184
+ The minimum croping aspect ratio. If set, user is prevented from setting cropping
185
+ rectangle to lower aspect ratio than defined by the parameter.
186
+ */
187
+ @property (nonatomic, assign) CGFloat minimumAspectRatio;
188
+
189
+ /**
190
+ The maximum scale that user can apply to image by pinching to zoom. Small values
191
+ are only recomended with aspectRatioLockEnabled set to true. Default to 15.0
192
+ */
193
+ @property (nonatomic, assign) CGFloat maximumZoomScale;
194
+
195
+ /**
196
+ Always show the cropping grid lines, even when the user isn't interacting.
197
+ This also disables the fading animation.
198
+ (Default is NO)
199
+ */
200
+ @property (nonatomic, assign) BOOL alwaysShowCroppingGrid;
201
+
202
+ /**
203
+ Permanently hides the translucency effect covering the outside bounds of the
204
+ crop box. (Default is NO)
205
+ */
206
+ @property (nonatomic, assign) BOOL translucencyAlwaysHidden;
207
+
208
+ ///*
209
+ // if YES it will always show grid
210
+ // if NO it will never show grid
211
+ // NOTE : Do not use this method if you want to keep grid hide/show animation
212
+ // */
213
+ //- (void)setAlwaysShowGrid:(BOOL)showGrid;
214
+ //
215
+ ///*
216
+ // if YES it will disable translucency effect
217
+ // */
218
+ //- (void)setTranslucencyOff:(BOOL)disableTranslucency;
219
+
220
+ /**
221
+ Create a default instance of the crop view with the supplied image
222
+ */
223
+ - (nonnull instancetype)initWithImage:(nonnull UIImage *)image;
224
+
225
+ /**
226
+ Create a new instance of the crop view with the specified image and cropping
227
+ */
228
+ - (nonnull instancetype)initWithCroppingStyle:(TOCropViewCroppingStyle)style image:(nonnull UIImage *)image;
229
+
230
+ /**
231
+ Performs the initial set up, including laying out the image and applying any restore properties.
232
+ This should be called once the crop view has been added to a parent that is in its final layout frame.
233
+ */
234
+ - (void)performInitialSetup;
235
+
236
+ /**
237
+ When performing large size transitions (eg, orientation rotation),
238
+ set simple mode to YES to temporarily graphically heavy effects like translucency.
239
+
240
+ @param simpleMode Whether simple mode is enabled or not
241
+
242
+ */
243
+ - (void)setSimpleRenderMode:(BOOL)simpleMode animated:(BOOL)animated;
244
+
245
+ /**
246
+ When performing a screen rotation that will change the size of the scroll view, this takes
247
+ a snapshot of all of the scroll view data before it gets manipulated by iOS.
248
+ Please call this in your view controller, before the rotation animation block is committed.
249
+ */
250
+ - (void)prepareforRotation;
251
+
252
+ /**
253
+ Performs the realignment of the crop view while the screen is rotating.
254
+ Please call this inside your view controller's screen rotation animation block.
255
+ */
256
+ - (void)performRelayoutForRotation;
257
+
258
+ /**
259
+ Reset the crop box and zoom scale back to the initial layout
260
+
261
+ @param animated The reset is animated
262
+ */
263
+ - (void)resetLayoutToDefaultAnimated:(BOOL)animated;
264
+
265
+ /**
266
+ Changes the aspect ratio of the crop box to match the one specified
267
+
268
+ @param aspectRatio The aspect ratio (For example 16:9 is 16.0f/9.0f). 'CGSizeZero' will reset it to the image's own ratio
269
+ @param animated Whether the locking effect is animated
270
+ */
271
+ - (void)setAspectRatio:(CGSize)aspectRatio animated:(BOOL)animated;
272
+
273
+ /**
274
+ Rotates the entire canvas to a 90-degree angle. The default rotation is counterclockwise.
275
+
276
+ @param animated Whether the transition is animated
277
+ */
278
+ - (void)rotateImageNinetyDegreesAnimated:(BOOL)animated completion:(nullable void (^)(BOOL completed))completionHandler;
279
+
280
+ /**
281
+ Rotates the entire canvas to a 90-degree angle
282
+
283
+ @param animated Whether the transition is animated
284
+ @param clockwise Whether the rotation is clockwise. Passing 'NO' means counterclockwise
285
+ */
286
+ - (void)rotateImageNinetyDegreesAnimated:(BOOL)animated clockwise:(BOOL)clockwise completion:(nullable void (^)(BOOL completed))completionHandler;
287
+
288
+ /**
289
+ Animate the grid overlay graphic to be visible
290
+ */
291
+ - (void)setGridOverlayHidden:(BOOL)gridOverlayHidden animated:(BOOL)animated;
292
+
293
+ /**
294
+ Animate the cropping component views to become visible
295
+ */
296
+ - (void)setCroppingViewsHidden:(BOOL)hidden animated:(BOOL)animated;
297
+
298
+ /**
299
+ Animate the background image view to become visible
300
+ */
301
+ - (void)setBackgroundImageViewHidden:(BOOL)hidden animated:(BOOL)animated;
302
+
303
+ /**
304
+ When triggered, the crop view will perform a relayout to ensure the crop box
305
+ fills the entire crop view region
306
+ */
307
+ - (void)moveCroppedContentToCenterAnimated:(BOOL)animated;
308
+
309
+ @end
310
+
311
+ NS_ASSUME_NONNULL_END