@lodev09/react-native-true-sheet 3.1.0-beta.4 → 3.1.0-beta.6

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.
@@ -46,12 +46,12 @@ class TrueSheetModule(reactContext: ReactApplicationContext) :
46
46
  * @throws OPERATION_FAILED if the operation fails for any other reason
47
47
  */
48
48
  @ReactMethod
49
- fun presentByRef(viewTag: Double, index: Double, promise: Promise) {
49
+ fun presentByRef(viewTag: Double, index: Double, animated: Boolean, promise: Promise) {
50
50
  val tag = viewTag.toInt()
51
51
  val detentIndex = index.toInt()
52
52
 
53
53
  withTrueSheetView(tag, promise) { view ->
54
- view.present(detentIndex) {
54
+ view.present(detentIndex, animated) {
55
55
  promise.resolve(null)
56
56
  }
57
57
  }
@@ -67,11 +67,11 @@ class TrueSheetModule(reactContext: ReactApplicationContext) :
67
67
  * @throws OPERATION_FAILED if the operation fails for any other reason
68
68
  */
69
69
  @ReactMethod
70
- fun dismissByRef(viewTag: Double, promise: Promise) {
70
+ fun dismissByRef(viewTag: Double, animated: Boolean, promise: Promise) {
71
71
  val tag = viewTag.toInt()
72
72
 
73
73
  withTrueSheetView(tag, promise) { view ->
74
- view.dismiss {
74
+ view.dismiss(animated) {
75
75
  promise.resolve(null)
76
76
  }
77
77
  }
@@ -89,8 +89,8 @@ class TrueSheetModule(reactContext: ReactApplicationContext) :
89
89
  */
90
90
  @ReactMethod
91
91
  fun resizeByRef(viewTag: Double, index: Double, promise: Promise) {
92
- // Resize is just an alias for present
93
- presentByRef(viewTag, index, promise)
92
+ // Resize is just an alias for present (always animated)
93
+ presentByRef(viewTag, index, true, promise)
94
94
  }
95
95
 
96
96
  /**
@@ -157,15 +157,15 @@ class TrueSheetView(private val reactContext: ThemedReactContext) :
157
157
  override fun viewControllerWillPresent(index: Int, position: Float, detent: Float) {
158
158
  val surfaceId = UIManagerHelper.getSurfaceId(this)
159
159
  eventDispatcher?.dispatchEvent(WillPresentEvent(surfaceId, id, index, position, detent))
160
+
161
+ // Enable touch event dispatching to React Native
162
+ viewController.eventDispatcher = eventDispatcher
163
+ containerView?.footerView?.eventDispatcher = eventDispatcher
160
164
  }
161
165
 
162
166
  override fun viewControllerDidPresent(index: Int, position: Float, detent: Float) {
163
167
  val surfaceId = UIManagerHelper.getSurfaceId(this)
164
168
  eventDispatcher?.dispatchEvent(DidPresentEvent(surfaceId, id, index, position, detent))
165
-
166
- // Enable touch event dispatching to React Native
167
- viewController.eventDispatcher = eventDispatcher
168
- containerView?.footerView?.eventDispatcher = eventDispatcher
169
169
  }
170
170
 
171
171
  override fun viewControllerWillDismiss() {
@@ -326,9 +326,9 @@ class TrueSheetView(private val reactContext: ThemedReactContext) :
326
326
  }
327
327
 
328
328
  @UiThread
329
- fun dismiss(promiseCallback: () -> Unit) {
329
+ fun dismiss(animated: Boolean = true, promiseCallback: () -> Unit) {
330
330
  viewController.dismissPromise = promiseCallback
331
- viewController.dismiss()
331
+ viewController.dismiss(animated)
332
332
  }
333
333
 
334
334
  /**
@@ -61,9 +61,15 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
61
61
  companion object {
62
62
  const val TAG_NAME = "TrueSheet"
63
63
 
64
+ private const val MAX_HALF_EXPANDED_RATIO = 0.999f
65
+
64
66
  private const val GRABBER_TAG = "TrueSheetGrabber"
65
67
  private const val DEFAULT_MAX_WIDTH = 640 // dp
66
68
  private const val DEFAULT_CORNER_RADIUS = 16 // dp
69
+
70
+ // Animation durations from res/anim/true_sheet_slide_in.xml and true_sheet_slide_out.xml
71
+ private const val PRESENT_ANIMATION_DURATION = 200L
72
+ private const val DISMISS_ANIMATION_DURATION = 150L
67
73
  }
68
74
 
69
75
  // ====================================================================
@@ -113,6 +119,7 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
113
119
  private val resolvedDetentPositions = mutableListOf<Int>()
114
120
 
115
121
  private var isDragging = false
122
+ private var isDismissing = false
116
123
  private var isReconfiguring = false
117
124
  private var windowAnimation: Int = 0
118
125
  private var lastEmittedPositionPx: Int = -1
@@ -270,6 +277,7 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
270
277
 
271
278
  dialog = null
272
279
  isDragging = false
280
+ isDismissing = false
273
281
  isPresented = false
274
282
  isDialogVisible = false
275
283
  lastEmittedPositionPx = -1
@@ -284,43 +292,51 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
284
292
  setupGrabber()
285
293
 
286
294
  sheetContainer?.post {
287
- val detentInfo = getDetentInfoForIndex(currentDetentIndex)
288
- val detent = getDetentValueForIndex(detentInfo.index)
289
295
  val positionPx = bottomSheetView?.let { ScreenUtils.getScreenY(it) } ?: screenHeight
290
296
 
291
- delegate?.viewControllerDidPresent(detentInfo.index, detentInfo.position, detent)
292
-
293
297
  // Store resolved position for initial detent
294
- storeResolvedPosition(detentInfo.index)
298
+ storeResolvedPosition(currentDetentIndex)
295
299
  emitChangePositionDelegate(positionPx, realtime = false)
296
300
 
301
+ positionFooter()
302
+ }
303
+
304
+ // Emit didPresent/didFocus after present animation completes
305
+ sheetContainer?.postDelayed({
306
+ val detentInfo = getDetentInfoForIndex(currentDetentIndex)
307
+ val detent = getDetentValueForIndex(detentInfo.index)
308
+
309
+ delegate?.viewControllerDidPresent(detentInfo.index, detentInfo.position, detent)
310
+
297
311
  // Notify parent sheet that it has lost focus (after this sheet appeared)
298
312
  parentSheetView?.viewControllerDidBlur()
299
313
 
314
+ // Emit didFocus with didPresent
315
+ delegate?.viewControllerDidFocus()
316
+
300
317
  presentPromise?.invoke()
301
318
  presentPromise = null
302
-
303
- positionFooter()
304
- }
319
+ }, PRESENT_ANIMATION_DURATION)
305
320
  }
306
321
 
307
322
  dialog.setOnCancelListener {
308
- delegate?.viewControllerWillDismiss()
323
+ // Skip if already handled by STATE_HIDDEN (programmatic dismiss)
324
+ if (isDismissing) return@setOnCancelListener
309
325
 
310
- // Notify parent sheet that it is about to regain focus
311
- parentSheetView?.viewControllerWillFocus()
312
- }
326
+ // User-initiated dismiss (back button, tap outside)
327
+ isDismissing = true
328
+ emitWillDismissEvents()
313
329
 
314
- dialog.setOnDismissListener {
315
- val hadParent = parentSheetView != null
330
+ // Emit off-screen position since onSlide isn't triggered for user-initiated dismiss
331
+ emitChangePositionDelegate(screenHeight, realtime = false)
316
332
 
317
- // Notify parent sheet that it has regained focus
318
- parentSheetView?.viewControllerDidFocus()
319
- parentSheetView = null
333
+ // Emit didBlur/didDismiss after dismiss animation completes
334
+ android.os.Handler(android.os.Looper.getMainLooper()).postDelayed({
335
+ emitDidDismissEvents()
336
+ }, DISMISS_ANIMATION_DURATION)
337
+ }
320
338
 
321
- dismissPromise?.invoke()
322
- dismissPromise = null
323
- delegate?.viewControllerDidDismiss(hadParent)
339
+ dialog.setOnDismissListener {
324
340
  cleanupDialog()
325
341
  }
326
342
  }
@@ -346,7 +362,10 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
346
362
 
347
363
  override fun onStateChanged(sheetView: View, newState: Int) {
348
364
  if (newState == BottomSheetBehavior.STATE_HIDDEN) {
349
- dismiss()
365
+ // Mark as dismissing so setOnCancelListener skips emitting events
366
+ isDismissing = true
367
+ emitDidDismissEvents()
368
+ dialog.dismiss()
350
369
  return
351
370
  }
352
371
 
@@ -431,6 +450,34 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
431
450
  rnScreensObserver = null
432
451
  }
433
452
 
453
+ // ====================================================================
454
+ // MARK: - Dismiss Event Helpers
455
+ // ====================================================================
456
+
457
+ /**
458
+ * Emits willBlur and willDismiss events, and notifies parent sheet of upcoming focus change.
459
+ */
460
+ private fun emitWillDismissEvents() {
461
+ delegate?.viewControllerWillBlur()
462
+ delegate?.viewControllerWillDismiss()
463
+ parentSheetView?.viewControllerWillFocus()
464
+ }
465
+
466
+ /**
467
+ * Emits didBlur and didDismiss events, notifies parent sheet, and invokes dismiss promise.
468
+ */
469
+ private fun emitDidDismissEvents() {
470
+ val hadParent = parentSheetView != null
471
+ parentSheetView?.viewControllerDidFocus()
472
+ parentSheetView = null
473
+
474
+ delegate?.viewControllerDidBlur()
475
+ delegate?.viewControllerDidDismiss(hadParent)
476
+
477
+ dismissPromise?.invoke()
478
+ dismissPromise = null
479
+ }
480
+
434
481
  // ====================================================================
435
482
  // MARK: - Dialog Visibility (for stacking)
436
483
  // ====================================================================
@@ -516,6 +563,9 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
516
563
 
517
564
  delegate?.viewControllerWillPresent(detentInfo.index, detentInfo.position, detent)
518
565
 
566
+ // Emit willFocus with willPresent
567
+ delegate?.viewControllerWillFocus()
568
+
519
569
  if (!animated) {
520
570
  dialog.window?.setWindowAnimations(0)
521
571
  }
@@ -524,12 +574,21 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
524
574
  }
525
575
  }
526
576
 
527
- fun dismiss() {
577
+ fun dismiss(animated: Boolean = true) {
578
+ emitWillDismissEvents()
579
+
528
580
  this.post {
529
581
  // Emit off-screen position (detent = 0 since sheet is fully hidden)
530
582
  emitChangePositionDelegate(screenHeight, realtime = false)
531
583
  }
532
- dialog?.dismiss()
584
+
585
+ if (!animated) {
586
+ dialog?.window?.setWindowAnimations(0)
587
+ }
588
+
589
+ // Temporarily enable hideable to allow STATE_HIDDEN transition
590
+ behavior?.isHideable = true
591
+ behavior?.state = BottomSheetBehavior.STATE_HIDDEN
533
592
  }
534
593
 
535
594
  // ====================================================================
@@ -560,34 +619,44 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
560
619
  isFitToContents = false
561
620
  maxWidth = DEFAULT_MAX_WIDTH.dpToPx().toInt()
562
621
 
622
+ val oldExpandOffset = expandedOffset
623
+
563
624
  when (detents.size) {
564
625
  1 -> {
565
626
  setPeekHeight(getDetentHeight(detents[0]), isPresented)
627
+ halfExpandedRatio = minOf(peekHeight.toFloat() / screenHeight.toFloat(), MAX_HALF_EXPANDED_RATIO)
566
628
  expandedOffset = screenHeight - peekHeight
567
629
  isFitToContents = expandedOffset == 0
568
630
  }
569
631
 
570
632
  2 -> {
571
633
  setPeekHeight(getDetentHeight(detents[0]), isPresented)
572
- halfExpandedRatio = minOf(getDetentHeight(detents[1]).toFloat() / screenHeight.toFloat(), 0.9f)
634
+ halfExpandedRatio = minOf(getDetentHeight(detents[1]).toFloat() / screenHeight.toFloat(), MAX_HALF_EXPANDED_RATIO)
573
635
  expandedOffset = screenHeight - getDetentHeight(detents[1])
574
636
  isFitToContents = expandedOffset == 0
575
637
  }
576
638
 
577
639
  3 -> {
578
640
  setPeekHeight(getDetentHeight(detents[0]), isPresented)
579
- halfExpandedRatio = minOf(getDetentHeight(detents[1]).toFloat() / screenHeight.toFloat(), 0.9f)
641
+ halfExpandedRatio = minOf(getDetentHeight(detents[1]).toFloat() / screenHeight.toFloat(), MAX_HALF_EXPANDED_RATIO)
580
642
  expandedOffset = screenHeight - getDetentHeight(detents[2])
581
643
  }
582
644
  }
583
- }
584
645
 
585
- // Re-apply current state to update position after config changes
586
- if (isPresented) {
587
- setStateForDetentIndex(currentDetentIndex)
588
- }
646
+ // Keep container size in sync with sheet size
647
+ if (oldExpandOffset != expandedOffset || expandedOffset == 0) {
648
+ val offset = if (expandedOffset == 0) statusBarHeight else 0
649
+ val newHeight = screenHeight - expandedOffset - offset
650
+ delegate?.viewControllerDidChangeSize(width, newHeight)
651
+ }
589
652
 
590
- isReconfiguring = false
653
+ if (isPresented) {
654
+ // Re-apply current state to update position after config changes
655
+ setStateForDetentIndex(currentDetentIndex)
656
+ }
657
+
658
+ isReconfiguring = false
659
+ }
591
660
  }
592
661
 
593
662
  fun setupGrabber() {
@@ -783,7 +852,7 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
783
852
  val pos = getEstimatedPositionForIndex(i)
784
853
  val nextPos = getEstimatedPositionForIndex(i + 1)
785
854
 
786
- if (positionPx <= pos && positionPx >= nextPos) {
855
+ if (positionPx in nextPos..pos) {
787
856
  val range = pos - nextPos
788
857
  val progress = if (range > 0) (pos - positionPx).toFloat() / range else 0f
789
858
  return Triple(i, i + 1, maxOf(0f, minOf(1f, progress)))
@@ -966,10 +1035,11 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
966
1035
  super.onSizeChanged(w, h, oldw, oldh)
967
1036
  if (w == oldw && h == oldh) return
968
1037
 
969
- // Fix issue where size keeps changing when full expanding to full screen (edgeToEdgeFullScreen enabled)
970
- if (h + statusBarHeight >= screenHeight && isExpanded && oldw == w) return
971
-
972
- delegate?.viewControllerDidChangeSize(w, h)
1038
+ // Skip when fully expanding to full screen (edgeToEdgeFullScreen enabled)
1039
+ // Size keeps changing on this case
1040
+ if (h + statusBarHeight > screenHeight && isExpanded && oldw == w) {
1041
+ return
1042
+ }
973
1043
 
974
1044
  val oldScreenHeight = screenHeight
975
1045
  screenHeight = ScreenUtils.getScreenHeight(reactContext, edgeToEdgeEnabled)
@@ -46,6 +46,7 @@ RCT_EXPORT_MODULE(TrueSheetModule)
46
46
 
47
47
  - (void)presentByRef:(double)viewTag
48
48
  index:(double)index
49
+ animated:(BOOL)animated
49
50
  resolve:(RCTPromiseResolveBlock)resolve
50
51
  reject:(RCTPromiseRejectBlock)reject {
51
52
  RCTExecuteOnMainQueue(^{
@@ -57,7 +58,7 @@ RCT_EXPORT_MODULE(TrueSheetModule)
57
58
  }
58
59
 
59
60
  [trueSheetView presentAtIndex:(NSInteger)index
60
- animated:YES
61
+ animated:animated
61
62
  completion:^(BOOL success, NSError *_Nullable error) {
62
63
  if (success) {
63
64
  resolve(nil);
@@ -68,7 +69,10 @@ RCT_EXPORT_MODULE(TrueSheetModule)
68
69
  });
69
70
  }
70
71
 
71
- - (void)dismissByRef:(double)viewTag resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject {
72
+ - (void)dismissByRef:(double)viewTag
73
+ animated:(BOOL)animated
74
+ resolve:(RCTPromiseResolveBlock)resolve
75
+ reject:(RCTPromiseRejectBlock)reject {
72
76
  RCTExecuteOnMainQueue(^{
73
77
  TrueSheetView *trueSheetView = [TrueSheetModule getTrueSheetViewByTag:@((NSInteger)viewTag)];
74
78
 
@@ -77,7 +81,7 @@ RCT_EXPORT_MODULE(TrueSheetModule)
77
81
  return;
78
82
  }
79
83
 
80
- [trueSheetView dismissAnimated:YES
84
+ [trueSheetView dismissAnimated:animated
81
85
  completion:^(BOOL success, NSError *_Nullable error) {
82
86
  if (success) {
83
87
  resolve(nil);
@@ -92,8 +96,8 @@ RCT_EXPORT_MODULE(TrueSheetModule)
92
96
  index:(double)index
93
97
  resolve:(RCTPromiseResolveBlock)resolve
94
98
  reject:(RCTPromiseRejectBlock)reject {
95
- // Resize is just present with a different index
96
- [self presentByRef:viewTag index:index resolve:resolve reject:reject];
99
+ // Resize is just present with a different index (always animated)
100
+ [self presentByRef:viewTag index:index animated:YES resolve:resolve reject:reject];
97
101
  }
98
102
 
99
103
  #pragma mark - Helper Methods
@@ -159,15 +159,20 @@
159
159
  }
160
160
  }
161
161
 
162
- if ([self.delegate respondsToSelector:@selector(viewControllerWillPresentAtIndex:position:detent:)]) {
163
- dispatch_async(dispatch_get_main_queue(), ^{
162
+ dispatch_async(dispatch_get_main_queue(), ^{
163
+ if ([self.delegate respondsToSelector:@selector(viewControllerWillPresentAtIndex:position:detent:)]) {
164
164
  NSInteger index = self.currentDetentIndex;
165
165
  CGFloat position = self.currentPosition;
166
166
  CGFloat detent = [self detentValueForIndex:index];
167
167
 
168
168
  [self.delegate viewControllerWillPresentAtIndex:index position:position detent:detent];
169
- });
170
- }
169
+ }
170
+
171
+ // Emit willFocus with willPresent
172
+ if ([self.delegate respondsToSelector:@selector(viewControllerWillFocus)]) {
173
+ [self.delegate viewControllerWillFocus];
174
+ }
175
+ });
171
176
  }
172
177
 
173
178
  [self setupTransitionTracker];
@@ -184,13 +189,19 @@
184
189
  }
185
190
  }
186
191
 
187
- if ([self.delegate respondsToSelector:@selector(viewControllerDidPresentAtIndex:position:detent:)]) {
188
- dispatch_async(dispatch_get_main_queue(), ^{
192
+ dispatch_async(dispatch_get_main_queue(), ^{
193
+ if ([self.delegate respondsToSelector:@selector(viewControllerDidPresentAtIndex:position:detent:)]) {
189
194
  NSInteger index = [self currentDetentIndex];
190
195
  CGFloat detent = [self detentValueForIndex:index];
191
196
  [self.delegate viewControllerDidPresentAtIndex:index position:self.currentPosition detent:detent];
192
- });
193
- }
197
+ }
198
+
199
+ // Emit didFocus with didPresent
200
+ if ([self.delegate respondsToSelector:@selector(viewControllerDidFocus)]) {
201
+ [self.delegate viewControllerDidFocus];
202
+ }
203
+ });
204
+
194
205
  [self setupGestureRecognizer];
195
206
  _isPresented = YES;
196
207
  }
@@ -204,9 +215,16 @@
204
215
  [super viewWillDisappear:animated];
205
216
 
206
217
  if (self.isDismissing) {
207
- if ([self.delegate respondsToSelector:@selector(viewControllerWillDismiss)]) {
208
- [self.delegate viewControllerWillDismiss];
209
- }
218
+ dispatch_async(dispatch_get_main_queue(), ^{
219
+ // Emit willBlur with willDismiss
220
+ if ([self.delegate respondsToSelector:@selector(viewControllerWillBlur)]) {
221
+ [self.delegate viewControllerWillBlur];
222
+ }
223
+
224
+ if ([self.delegate respondsToSelector:@selector(viewControllerWillDismiss)]) {
225
+ [self.delegate viewControllerWillDismiss];
226
+ }
227
+ });
210
228
 
211
229
  // Notify the parent sheet (if any) that it is about to regain focus
212
230
  if (_parentSheetController) {
@@ -235,6 +253,11 @@
235
253
  _parentSheetController = nil;
236
254
  }
237
255
 
256
+ // Emit didBlur with didDismiss
257
+ if ([self.delegate respondsToSelector:@selector(viewControllerDidBlur)]) {
258
+ [self.delegate viewControllerDidBlur];
259
+ }
260
+
238
261
  if ([self.delegate respondsToSelector:@selector(viewControllerDidDismiss)]) {
239
262
  [self.delegate viewControllerDidDismiss];
240
263
  }
@@ -106,29 +106,31 @@ export class TrueSheet extends PureComponent {
106
106
  * Present the sheet by given `name` (Promise-based)
107
107
  * @param name - Sheet name (must match sheet's name prop)
108
108
  * @param index - Detent index (default: 0)
109
+ * @param animated - Whether to animate the presentation (default: true)
109
110
  * @returns Promise that resolves when sheet is fully presented
110
111
  * @throws Error if sheet not found or presentation fails
111
112
  */
112
- static async present(name, index = 0) {
113
+ static async present(name, index = 0, animated = true) {
113
114
  const instance = TrueSheet.getInstance(name);
114
115
  if (!instance) {
115
116
  throw new Error(`Sheet with name "${name}" not found`);
116
117
  }
117
- return instance.present(index);
118
+ return instance.present(index, animated);
118
119
  }
119
120
 
120
121
  /**
121
122
  * Dismiss the sheet by given `name` (Promise-based)
122
123
  * @param name - Sheet name
124
+ * @param animated - Whether to animate the dismissal (default: true)
123
125
  * @returns Promise that resolves when sheet is fully dismissed
124
126
  * @throws Error if sheet not found or dismissal fails
125
127
  */
126
- static async dismiss(name) {
128
+ static async dismiss(name, animated = true) {
127
129
  const instance = TrueSheet.getInstance(name);
128
130
  if (!instance) {
129
131
  throw new Error(`Sheet with name "${name}" not found`);
130
132
  }
131
- return instance.dismiss();
133
+ return instance.dismiss(animated);
132
134
  }
133
135
 
134
136
  /**
@@ -213,8 +215,9 @@ export class TrueSheet extends PureComponent {
213
215
  /**
214
216
  * Present the Sheet by `index` (Promise-based)
215
217
  * @param index - Detent index (default: 0)
218
+ * @param animated - Whether to animate the presentation (default: true)
216
219
  */
217
- async present(index = 0) {
220
+ async present(index = 0, animated = true) {
218
221
  const detentsLength = Math.min(this.props.detents?.length ?? 2, 3); // Max 3 detents
219
222
  if (index < 0 || index >= detentsLength) {
220
223
  throw new Error(`TrueSheet: present index (${index}) is out of bounds. detents array has ${detentsLength} item(s)`);
@@ -229,7 +232,7 @@ export class TrueSheet extends PureComponent {
229
232
  });
230
233
  });
231
234
  }
232
- return TrueSheetModule?.presentByRef(this.handle, index);
235
+ return TrueSheetModule?.presentByRef(this.handle, index, animated);
233
236
  }
234
237
 
235
238
  /**
@@ -242,9 +245,10 @@ export class TrueSheet extends PureComponent {
242
245
 
243
246
  /**
244
247
  * Dismisses the Sheet
248
+ * @param animated - Whether to animate the dismissal (default: true)
245
249
  */
246
- async dismiss() {
247
- return TrueSheetModule?.dismissByRef(this.handle);
250
+ async dismiss(animated = true) {
251
+ return TrueSheetModule?.dismissByRef(this.handle, animated);
248
252
  }
249
253
  componentDidMount() {
250
254
  this.registerInstance();
@@ -1 +1 @@
1
- {"version":3,"names":["PureComponent","createRef","isValidElement","createElement","TrueSheetViewNativeComponent","TrueSheetContainerViewNativeComponent","TrueSheetContentViewNativeComponent","TrueSheetHeaderViewNativeComponent","TrueSheetFooterViewNativeComponent","TrueSheetModule","Platform","processColor","StyleSheet","findNodeHandle","View","jsx","_jsx","jsxs","_jsxs","LINKING_ERROR","select","ios","default","ANDROID_HITBOX_HEIGHT","Error","TrueSheet","displayName","instances","presentationResolver","constructor","props","nativeRef","validateDetents","shouldRenderImmediately","initialDetentIndex","undefined","state","shouldRenderNativeView","onMount","bind","onWillDismiss","onDidDismiss","onWillPresent","onDidPresent","onDetentChange","onDragBegin","onDragChange","onDragEnd","onPositionChange","onWillFocus","onDidFocus","onWillBlur","onDidBlur","onBackPress","detents","length","console","warn","forEach","detent","index","detentsLength","Math","min","getInstance","name","instance","handle","nodeHandle","current","present","dismiss","resize","registerInstance","unregisterInstance","event","setState","Promise","resolve","presentByRef","dismissByRef","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","render","backgroundColor","dismissible","draggable","grabber","grabberOptions","dimmed","initialDetentAnimated","keyboardMode","dimmedDetentIndex","blurTint","blurOptions","cornerRadius","maxHeight","edgeToEdgeFullScreen","scrollable","pageSizing","children","style","header","footer","rest","resolvedDetents","slice","map","containerStyle","android","styles","scrollableAndroidContainer","contentStyle","scrollableAndroidContent","ref","sheetView","background","color","OS","collapsable","grabberHitbox","create","zIndex","position","top","left","right","bottom","flexGrow","flexBasis","height"],"sourceRoot":"../../src","sources":["TrueSheet.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["PureComponent","createRef","isValidElement","createElement","TrueSheetViewNativeComponent","TrueSheetContainerViewNativeComponent","TrueSheetContentViewNativeComponent","TrueSheetHeaderViewNativeComponent","TrueSheetFooterViewNativeComponent","TrueSheetModule","Platform","processColor","StyleSheet","findNodeHandle","View","jsx","_jsx","jsxs","_jsxs","LINKING_ERROR","select","ios","default","ANDROID_HITBOX_HEIGHT","Error","TrueSheet","displayName","instances","presentationResolver","constructor","props","nativeRef","validateDetents","shouldRenderImmediately","initialDetentIndex","undefined","state","shouldRenderNativeView","onMount","bind","onWillDismiss","onDidDismiss","onWillPresent","onDidPresent","onDetentChange","onDragBegin","onDragChange","onDragEnd","onPositionChange","onWillFocus","onDidFocus","onWillBlur","onDidBlur","onBackPress","detents","length","console","warn","forEach","detent","index","detentsLength","Math","min","getInstance","name","instance","handle","nodeHandle","current","present","animated","dismiss","resize","registerInstance","unregisterInstance","event","setState","Promise","resolve","presentByRef","dismissByRef","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","render","backgroundColor","dismissible","draggable","grabber","grabberOptions","dimmed","initialDetentAnimated","keyboardMode","dimmedDetentIndex","blurTint","blurOptions","cornerRadius","maxHeight","edgeToEdgeFullScreen","scrollable","pageSizing","children","style","header","footer","rest","resolvedDetents","slice","map","containerStyle","android","styles","scrollableAndroidContainer","contentStyle","scrollableAndroidContent","ref","sheetView","background","color","OS","collapsable","grabberHitbox","create","zIndex","position","top","left","right","bottom","flexGrow","flexBasis","height"],"sourceRoot":"../../src","sources":["TrueSheet.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["TurboModuleRegistry","get"],"sourceRoot":"../../../src","sources":["specs/NativeTrueSheetModule.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;;AAGA,SAASA,mBAAmB,QAAQ,cAAc;AA6BlD,eAAeA,mBAAmB,CAACC,GAAG,CAAO,iBAAiB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["TurboModuleRegistry","get"],"sourceRoot":"../../../src","sources":["specs/NativeTrueSheetModule.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;;AAGA,SAASA,mBAAmB,QAAQ,cAAc;AA+BlD,eAAeA,mBAAmB,CAACC,GAAG,CAAO,iBAAiB,CAAC","ignoreList":[]}
@@ -22,17 +22,19 @@ export declare class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetSt
22
22
  * Present the sheet by given `name` (Promise-based)
23
23
  * @param name - Sheet name (must match sheet's name prop)
24
24
  * @param index - Detent index (default: 0)
25
+ * @param animated - Whether to animate the presentation (default: true)
25
26
  * @returns Promise that resolves when sheet is fully presented
26
27
  * @throws Error if sheet not found or presentation fails
27
28
  */
28
- static present(name: string, index?: number): Promise<void>;
29
+ static present(name: string, index?: number, animated?: boolean): Promise<void>;
29
30
  /**
30
31
  * Dismiss the sheet by given `name` (Promise-based)
31
32
  * @param name - Sheet name
33
+ * @param animated - Whether to animate the dismissal (default: true)
32
34
  * @returns Promise that resolves when sheet is fully dismissed
33
35
  * @throws Error if sheet not found or dismissal fails
34
36
  */
35
- static dismiss(name: string): Promise<void>;
37
+ static dismiss(name: string, animated?: boolean): Promise<void>;
36
38
  /**
37
39
  * Resize the sheet by given `name` (Promise-based)
38
40
  * @param name - Sheet name
@@ -61,8 +63,9 @@ export declare class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetSt
61
63
  /**
62
64
  * Present the Sheet by `index` (Promise-based)
63
65
  * @param index - Detent index (default: 0)
66
+ * @param animated - Whether to animate the presentation (default: true)
64
67
  */
65
- present(index?: number): Promise<void>;
68
+ present(index?: number, animated?: boolean): Promise<void>;
66
69
  /**
67
70
  * Resizes the Sheet programmatically by `index`.
68
71
  * This is an alias of the `present(index)` method.
@@ -70,8 +73,9 @@ export declare class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetSt
70
73
  resize(index: number): Promise<void>;
71
74
  /**
72
75
  * Dismisses the Sheet
76
+ * @param animated - Whether to animate the dismissal (default: true)
73
77
  */
74
- dismiss(): Promise<void>;
78
+ dismiss(animated?: boolean): Promise<void>;
75
79
  componentDidMount(): void;
76
80
  componentDidUpdate(prevProps: TrueSheetProps): void;
77
81
  componentWillUnmount(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"TrueSheet.d.ts","sourceRoot":"","sources":["../../../src/TrueSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAGb,KAAK,SAAS,EAIf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EACV,cAAc,EAgBf,MAAM,mBAAmB,CAAC;AA2B3B,UAAU,cAAc;IACtB,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED,qBAAa,SAAU,SAAQ,aAAa,CAAC,cAAc,EAAE,cAAc,CAAC;IAC1E,WAAW,SAAe;IAE1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8B;IAExD;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAqC;IAEtE;;OAEG;IACH,OAAO,CAAC,oBAAoB,CAA6B;gBAE7C,KAAK,EAAE,cAAc;IAgCjC,OAAO,CAAC,eAAe;IAkCvB,OAAO,CAAC,MAAM,CAAC,WAAW;IAU1B,OAAO,KAAK,MAAM,GAOjB;IAED;;;;;;OAMG;WACiB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAS3E;;;;;OAKG;WACiB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASxD;;;;;;OAMG;WACiB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAStE,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,WAAW;IAInB;;;OAGG;IACU,OAAO,CAAC,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBtD;;;OAGG;IACU,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrC,iBAAiB,IAAI,IAAI;IAIzB,kBAAkB,CAAC,SAAS,EAAE,cAAc,GAAG,IAAI;IASnD,oBAAoB,IAAI,IAAI;IAO5B,MAAM,IAAI,SAAS;CAmHpB"}
1
+ {"version":3,"file":"TrueSheet.d.ts","sourceRoot":"","sources":["../../../src/TrueSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAGb,KAAK,SAAS,EAIf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EACV,cAAc,EAgBf,MAAM,mBAAmB,CAAC;AA2B3B,UAAU,cAAc;IACtB,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED,qBAAa,SAAU,SAAQ,aAAa,CAAC,cAAc,EAAE,cAAc,CAAC;IAC1E,WAAW,SAAe;IAE1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8B;IAExD;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAqC;IAEtE;;OAEG;IACH,OAAO,CAAC,oBAAoB,CAA6B;gBAE7C,KAAK,EAAE,cAAc;IAgCjC,OAAO,CAAC,eAAe;IAkCvB,OAAO,CAAC,MAAM,CAAC,WAAW;IAU1B,OAAO,KAAK,MAAM,GAOjB;IAED;;;;;;;OAOG;WACiB,OAAO,CACzB,IAAI,EAAE,MAAM,EACZ,KAAK,GAAE,MAAU,EACjB,QAAQ,GAAE,OAAc,GACvB,OAAO,CAAC,IAAI,CAAC;IAShB;;;;;;OAMG;WACiB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IASlF;;;;;;OAMG;WACiB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAStE,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,WAAW;IAInB;;;;OAIG;IACU,OAAO,CAAC,KAAK,GAAE,MAAU,EAAE,QAAQ,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBhF;;;OAGG;IACU,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD;;;OAGG;IACU,OAAO,CAAC,QAAQ,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D,iBAAiB,IAAI,IAAI;IAIzB,kBAAkB,CAAC,SAAS,EAAE,cAAc,GAAG,IAAI;IASnD,oBAAoB,IAAI,IAAI;IAO5B,MAAM,IAAI,SAAS;CAmHpB"}
@@ -10,17 +10,19 @@ interface Spec extends TurboModule {
10
10
  * Present a sheet by reference
11
11
  * @param viewTag - Native view tag of the sheet component
12
12
  * @param index - Detent index to present at
13
+ * @param animated - Whether to animate the presentation
13
14
  * @returns Promise that resolves when sheet is fully presented
14
15
  * @throws PRESENT_FAILED if presentation fails
15
16
  */
16
- presentByRef(viewTag: number, index: number): Promise<void>;
17
+ presentByRef(viewTag: number, index: number, animated: boolean): Promise<void>;
17
18
  /**
18
19
  * Dismiss a sheet by reference
19
20
  * @param viewTag - Native view tag of the sheet component
21
+ * @param animated - Whether to animate the dismissal
20
22
  * @returns Promise that resolves when sheet is fully dismissed
21
23
  * @throws DISMISS_FAILED if dismissal fails
22
24
  */
23
- dismissByRef(viewTag: number): Promise<void>;
25
+ dismissByRef(viewTag: number, animated: boolean): Promise<void>;
24
26
  /**
25
27
  * Resize a sheet to a different index by reference
26
28
  * @param viewTag - Native view tag of the sheet component
@@ -1 +1 @@
1
- {"version":3,"file":"NativeTrueSheetModule.d.ts","sourceRoot":"","sources":["../../../../src/specs/NativeTrueSheetModule.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,UAAU,IAAK,SAAQ,WAAW;IAChC;;;;;;OAMG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5D;;;;;OAKG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7C;;;;;OAKG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D;;AAED,wBAAgE"}
1
+ {"version":3,"file":"NativeTrueSheetModule.d.ts","sourceRoot":"","sources":["../../../../src/specs/NativeTrueSheetModule.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,UAAU,IAAK,SAAQ,WAAW;IAChC;;;;;;;OAOG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/E;;;;;;OAMG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhE;;;;;OAKG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D;;AAED,wBAAgE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lodev09/react-native-true-sheet",
3
- "version": "3.1.0-beta.4",
3
+ "version": "3.1.0-beta.6",
4
4
  "description": "The true native bottom sheet experience for your React Native Apps.",
5
5
  "source": "./src/index.ts",
6
6
  "main": "./lib/module/index.js",
@@ -80,7 +80,7 @@
80
80
  "@eslint/js": "^9.35.0",
81
81
  "@evilmartians/lefthook": "^2.0.4",
82
82
  "@react-native/babel-preset": "^0.82.1",
83
- "@react-native/eslint-config": "^0.81.1",
83
+ "@react-native/eslint-config": "^0.82.1",
84
84
  "@release-it/conventional-changelog": "^10.0.1",
85
85
  "@testing-library/react-native": "^13.3.3",
86
86
  "@types/babel__core": "^7",
package/src/TrueSheet.tsx CHANGED
@@ -160,31 +160,37 @@ export class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetState> {
160
160
  * Present the sheet by given `name` (Promise-based)
161
161
  * @param name - Sheet name (must match sheet's name prop)
162
162
  * @param index - Detent index (default: 0)
163
+ * @param animated - Whether to animate the presentation (default: true)
163
164
  * @returns Promise that resolves when sheet is fully presented
164
165
  * @throws Error if sheet not found or presentation fails
165
166
  */
166
- public static async present(name: string, index: number = 0): Promise<void> {
167
+ public static async present(
168
+ name: string,
169
+ index: number = 0,
170
+ animated: boolean = true
171
+ ): Promise<void> {
167
172
  const instance = TrueSheet.getInstance(name);
168
173
  if (!instance) {
169
174
  throw new Error(`Sheet with name "${name}" not found`);
170
175
  }
171
176
 
172
- return instance.present(index);
177
+ return instance.present(index, animated);
173
178
  }
174
179
 
175
180
  /**
176
181
  * Dismiss the sheet by given `name` (Promise-based)
177
182
  * @param name - Sheet name
183
+ * @param animated - Whether to animate the dismissal (default: true)
178
184
  * @returns Promise that resolves when sheet is fully dismissed
179
185
  * @throws Error if sheet not found or dismissal fails
180
186
  */
181
- public static async dismiss(name: string): Promise<void> {
187
+ public static async dismiss(name: string, animated: boolean = true): Promise<void> {
182
188
  const instance = TrueSheet.getInstance(name);
183
189
  if (!instance) {
184
190
  throw new Error(`Sheet with name "${name}" not found`);
185
191
  }
186
192
 
187
- return instance.dismiss();
193
+ return instance.dismiss(animated);
188
194
  }
189
195
 
190
196
  /**
@@ -286,8 +292,9 @@ export class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetState> {
286
292
  /**
287
293
  * Present the Sheet by `index` (Promise-based)
288
294
  * @param index - Detent index (default: 0)
295
+ * @param animated - Whether to animate the presentation (default: true)
289
296
  */
290
- public async present(index: number = 0): Promise<void> {
297
+ public async present(index: number = 0, animated: boolean = true): Promise<void> {
291
298
  const detentsLength = Math.min(this.props.detents?.length ?? 2, 3); // Max 3 detents
292
299
  if (index < 0 || index >= detentsLength) {
293
300
  throw new Error(
@@ -303,7 +310,7 @@ export class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetState> {
303
310
  });
304
311
  }
305
312
 
306
- return TrueSheetModule?.presentByRef(this.handle, index);
313
+ return TrueSheetModule?.presentByRef(this.handle, index, animated);
307
314
  }
308
315
 
309
316
  /**
@@ -316,9 +323,10 @@ export class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetState> {
316
323
 
317
324
  /**
318
325
  * Dismisses the Sheet
326
+ * @param animated - Whether to animate the dismissal (default: true)
319
327
  */
320
- public async dismiss(): Promise<void> {
321
- return TrueSheetModule?.dismissByRef(this.handle);
328
+ public async dismiss(animated: boolean = true): Promise<void> {
329
+ return TrueSheetModule?.dismissByRef(this.handle, animated);
322
330
  }
323
331
 
324
332
  componentDidMount(): void {
@@ -6,13 +6,13 @@ export class TrueSheet extends React.Component {
6
6
  static instances = {};
7
7
 
8
8
  // Static methods
9
- static dismiss = jest.fn((name) => Promise.resolve());
10
- static present = jest.fn((name, index = 0) => Promise.resolve());
9
+ static dismiss = jest.fn((name, animated = true) => Promise.resolve());
10
+ static present = jest.fn((name, index = 0, animated = true) => Promise.resolve());
11
11
  static resize = jest.fn((name, index) => Promise.resolve());
12
12
 
13
13
  // Instance methods
14
- dismiss = jest.fn(() => Promise.resolve());
15
- present = jest.fn((index = 0) => Promise.resolve());
14
+ dismiss = jest.fn((animated = true) => Promise.resolve());
15
+ present = jest.fn((index = 0, animated = true) => Promise.resolve());
16
16
  resize = jest.fn((index) => Promise.resolve());
17
17
 
18
18
  componentDidMount() {
@@ -30,9 +30,10 @@ export class TrueSheet extends React.Component {
30
30
  }
31
31
 
32
32
  render() {
33
- const { children, footer, style, ...rest } = this.props;
33
+ const { children, header, footer, style, ...rest } = this.props;
34
34
  return (
35
35
  <View style={style} {...rest}>
36
+ {header}
36
37
  {children}
37
38
  {footer}
38
39
  </View>
@@ -13,18 +13,20 @@ interface Spec extends TurboModule {
13
13
  * Present a sheet by reference
14
14
  * @param viewTag - Native view tag of the sheet component
15
15
  * @param index - Detent index to present at
16
+ * @param animated - Whether to animate the presentation
16
17
  * @returns Promise that resolves when sheet is fully presented
17
18
  * @throws PRESENT_FAILED if presentation fails
18
19
  */
19
- presentByRef(viewTag: number, index: number): Promise<void>;
20
+ presentByRef(viewTag: number, index: number, animated: boolean): Promise<void>;
20
21
 
21
22
  /**
22
23
  * Dismiss a sheet by reference
23
24
  * @param viewTag - Native view tag of the sheet component
25
+ * @param animated - Whether to animate the dismissal
24
26
  * @returns Promise that resolves when sheet is fully dismissed
25
27
  * @throws DISMISS_FAILED if dismissal fails
26
28
  */
27
- dismissByRef(viewTag: number): Promise<void>;
29
+ dismissByRef(viewTag: number, animated: boolean): Promise<void>;
28
30
 
29
31
  /**
30
32
  * Resize a sheet to a different index by reference