@lodev09/react-native-true-sheet 3.9.0-beta.0 → 3.9.0-beta.2

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
@@ -3,11 +3,9 @@
3
3
  [![CI](https://github.com/lodev09/react-native-true-sheet/actions/workflows/checks.yml/badge.svg)](https://github.com/lodev09/react-native-true-sheet/actions/workflows/checks.yml)
4
4
  [![NPM Downloads](https://img.shields.io/npm/d18m/%40lodev09%2Freact-native-true-sheet)](https://www.npmjs.com/package/@lodev09/react-native-true-sheet)
5
5
 
6
- > [!NOTE]
7
- > 🎉 **Version 3.0 is here!** Completely rebuilt for Fabric with new features like automatic ScrollView detection, native headers/footers, sheet stacking, and more. [Read the announcement](https://sheet.lodev09.com/blog/release-3-0)
8
-
9
6
  The true native bottom sheet experience for your React Native Apps. 💩
10
7
 
8
+ <img alt="React Native True Sheet - iPad" src="docs/static/img/preview-ipad.gif" width="744" /><br>
11
9
  <img alt="React Native True Sheet - IOS" src="docs/static/img/preview-ios.gif" width="248" height="500" /><img alt="React Native True Sheet - Android" src="docs/static/img/preview-android.gif" width="248" height="500" /><img alt="React Native True Sheet - Web" src="docs/static/img/preview-web.gif" width="248" height="500" />
12
10
 
13
11
  ## Features
@@ -16,6 +14,7 @@ The true native bottom sheet experience for your React Native Apps. 💩
16
14
  * 🚀 **Fully Native** - Implemented in the native realm, zero JS hacks
17
15
  * ♿ **Accessible** - Native accessibility and screen reader support out of the box
18
16
  * 🔄 **Flexible API** - Use [imperative methods](https://sheet.lodev09.com/reference/methods#ref-methods) or [lifecycle events](https://sheet.lodev09.com/reference/events)
17
+ * 📐 **Side Sheets** - Native [side sheet](https://sheet.lodev09.com/guides/side-sheets) support for iPad and Android tablets
19
18
  * 🪟 **Liquid Glass** - [iOS 26+ Liquid Glass](https://sheet.lodev09.com/guides/liquid-glass) support out of the box, featured in [Expo Blog](https://expo.dev/blog/how-to-create-apple-maps-style-liquid-glass-sheets)
20
19
  * 🐎 **Reanimated** - First-class support for [react-native-reanimated](https://sheet.lodev09.com/guides/reanimated)
21
20
  * 🧭 **React Navigation** - Built-in [sheet navigator](https://sheet.lodev09.com/guides/navigation) for seamless navigation integration
@@ -30,8 +29,8 @@ The true native bottom sheet experience for your React Native Apps. 💩
30
29
  ### Prerequisites
31
30
 
32
31
  - React Native 0.80+
33
- - New Architecture enabled (default in RN 0.76+)
34
- - Xcode 26.1+ (liquid glass support)
32
+ - New Architecture enabled
33
+ - Xcode 26.1+
35
34
 
36
35
  ### Compatibility
37
36
 
@@ -97,6 +96,10 @@ export const App = () => {
97
96
  }
98
97
  ```
99
98
 
99
+ ## That map is awesome!
100
+
101
+ Yes it is! Checkout [`@lugg/maps`](https://github.com/lugg/maps), a universal maps library for React Native that I'm developing at [Lugg](https://lugg.com).
102
+
100
103
  ## Contributing
101
104
 
102
105
  See the [contributing guide](CONTRIBUTING.md) to learn how to contribute to the repository and the development workflow.
@@ -35,7 +35,7 @@ class TrueSheetContainerView(reactContext: ThemedReactContext) :
35
35
  var headerHeight: Int = 0
36
36
  var footerHeight: Int = 0
37
37
 
38
- var insetAdjustment: String = "automatic"
38
+ var insetAdjustment: TrueSheetInsetAdjustment = TrueSheetInsetAdjustment.AUTOMATIC
39
39
  var scrollViewBottomInset: Int = 0
40
40
  var scrollableEnabled: Boolean = false
41
41
  var scrollableOptions: ReadableMap? = null
@@ -54,7 +54,7 @@ class TrueSheetContainerView(reactContext: ThemedReactContext) :
54
54
  }
55
55
 
56
56
  fun setupScrollable() {
57
- val bottomInset = if (insetAdjustment == "automatic") scrollViewBottomInset else 0
57
+ val bottomInset = if (insetAdjustment == TrueSheetInsetAdjustment.AUTOMATIC) scrollViewBottomInset else 0
58
58
  contentView?.setupScrollable(scrollableEnabled, bottomInset)
59
59
  }
60
60
 
@@ -209,8 +209,9 @@ class TrueSheetView(private val reactContext: ThemedReactContext) :
209
209
  }
210
210
 
211
211
  fun setAnchor(anchor: String?) {
212
- if (viewController.anchor == anchor) return
213
- viewController.anchor = anchor
212
+ val value = TrueSheetAnchor.fromString(anchor)
213
+ if (viewController.anchor == value) return
214
+ viewController.anchor = value
214
215
  }
215
216
 
216
217
  fun setAnchorOffset(offset: Int) {
@@ -271,7 +272,7 @@ class TrueSheetView(private val reactContext: ThemedReactContext) :
271
272
  }
272
273
 
273
274
  fun setInsetAdjustment(insetAdjustment: String) {
274
- viewController.insetAdjustment = insetAdjustment
275
+ viewController.insetAdjustment = TrueSheetInsetAdjustment.fromString(insetAdjustment)
275
276
  setupScrollable()
276
277
  }
277
278
 
@@ -79,6 +79,34 @@ interface TrueSheetViewControllerDelegate {
79
79
  * enabling touch pass-through to underlying views. Handles detent configuration, drag interactions,
80
80
  * keyboard avoidance, dimmed backgrounds, back button, and lifecycle events for stacked sheets.
81
81
  */
82
+ enum class TrueSheetAnchor {
83
+ LEFT,
84
+ CENTER,
85
+ RIGHT;
86
+
87
+ companion object {
88
+ fun fromString(value: String?): TrueSheetAnchor =
89
+ when (value) {
90
+ "left" -> LEFT
91
+ "right" -> RIGHT
92
+ else -> CENTER
93
+ }
94
+ }
95
+ }
96
+
97
+ enum class TrueSheetInsetAdjustment {
98
+ AUTOMATIC,
99
+ NEVER;
100
+
101
+ companion object {
102
+ fun fromString(value: String?): TrueSheetInsetAdjustment =
103
+ when (value) {
104
+ "never" -> NEVER
105
+ else -> AUTOMATIC
106
+ }
107
+ }
108
+ }
109
+
82
110
  @SuppressLint("ClickableViewAccessibility", "ViewConstructor")
83
111
  class TrueSheetViewController(private val reactContext: ThemedReactContext) :
84
112
  ReactViewGroup(reactContext),
@@ -171,7 +199,7 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
171
199
  // Detent Configuration
172
200
  override var maxContentHeight: Int? = null
173
201
  override var maxContentWidth: Int? = null
174
- override var anchor: String? = null
202
+ override var anchor: TrueSheetAnchor = TrueSheetAnchor.CENTER
175
203
  override var anchorOffset: Int = DEFAULT_ANCHOR_OFFSET.dpToPx().toInt()
176
204
  override var detents: MutableList<Double> = mutableListOf(0.5, 1.0)
177
205
 
@@ -181,7 +209,7 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
181
209
  override var grabber: Boolean = true
182
210
  override var grabberOptions: GrabberOptions? = null
183
211
  override var sheetBackgroundColor: Int? = null
184
- var insetAdjustment: String = "automatic"
212
+ var insetAdjustment: TrueSheetInsetAdjustment = TrueSheetInsetAdjustment.AUTOMATIC
185
213
 
186
214
  var scrollable: Boolean = false
187
215
  set(value) {
@@ -273,7 +301,7 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
273
301
  get() = if (edgeToEdgeEnabled) ScreenUtils.getInsets(reactContext).top else 0
274
302
 
275
303
  override val contentBottomInset: Int
276
- get() = if (insetAdjustment == "automatic") bottomInset else 0
304
+ get() = if (insetAdjustment == TrueSheetInsetAdjustment.AUTOMATIC) bottomInset else 0
277
305
 
278
306
  @Suppress("KotlinConstantConditions", "SimplifyBooleanWithConstants")
279
307
  private val edgeToEdgeEnabled: Boolean
@@ -423,7 +451,8 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
423
451
  override fun coordinatorLayoutDidChangeConfiguration() {
424
452
  if (!isPresented) return
425
453
 
426
- updateBehaviorMaxWidth()
454
+ sheetView?.updateGravity(animated = false)
455
+ updateBehaviorMaxWidth(animated = false)
427
456
  updateStateDimensions()
428
457
  sheetView?.let { emitChangePositionDelegate(it.top, realtime = false) }
429
458
  }
@@ -1101,14 +1130,16 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
1101
1130
  // MARK: - Detent Helpers
1102
1131
  // =============================================================================
1103
1132
 
1104
- fun updateBehaviorMaxWidth() {
1133
+ fun updateBehaviorMaxWidth(animated: Boolean = true) {
1105
1134
  val behavior = this.behavior ?: return
1106
1135
  val applyMaxWidth = maxContentWidth != null && !ScreenUtils.isPortraitPhone(reactContext)
1107
1136
  val newMaxWidth = if (applyMaxWidth) maxContentWidth!! else DEFAULT_MAX_WIDTH.dpToPx().toInt()
1108
1137
  if (behavior.maxWidth == newMaxWidth) return
1109
1138
 
1110
- sheetView?.let { view ->
1111
- (view.parent as? CoordinatorLayout)?.let { TransitionManager.beginDelayedTransition(it) }
1139
+ if (animated) {
1140
+ sheetView?.let { view ->
1141
+ (view.parent as? CoordinatorLayout)?.let { TransitionManager.beginDelayedTransition(it) }
1142
+ }
1112
1143
  }
1113
1144
  behavior.maxWidth = newMaxWidth
1114
1145
  }
@@ -1,12 +1,12 @@
1
1
  package com.lodev09.truesheet.core
2
2
 
3
3
  import android.annotation.SuppressLint
4
+ import android.content.res.Configuration
4
5
  import android.graphics.Color
5
6
  import android.graphics.Outline
6
7
  import android.graphics.Rect
7
8
  import android.graphics.drawable.ShapeDrawable
8
9
  import android.graphics.drawable.shapes.RoundRectShape
9
- import android.util.TypedValue
10
10
  import android.view.GestureDetector
11
11
  import android.view.Gravity
12
12
  import android.view.MotionEvent
@@ -18,6 +18,7 @@ import androidx.transition.TransitionManager
18
18
  import com.facebook.react.uimanager.PixelUtil.dpToPx
19
19
  import com.facebook.react.uimanager.ThemedReactContext
20
20
  import com.google.android.material.bottomsheet.BottomSheetBehavior
21
+ import com.lodev09.truesheet.TrueSheetAnchor
21
22
  import com.lodev09.truesheet.utils.ScreenUtils
22
23
 
23
24
  interface TrueSheetBottomSheetViewDelegate {
@@ -26,7 +27,7 @@ interface TrueSheetBottomSheetViewDelegate {
26
27
  val sheetElevation: Float
27
28
  val sheetBackgroundColor: Int?
28
29
  val maxContentWidth: Int?
29
- val anchor: String?
30
+ val anchor: TrueSheetAnchor
30
31
  val anchorOffset: Int
31
32
  val grabber: Boolean
32
33
  val grabberOptions: GrabberOptions?
@@ -49,6 +50,10 @@ class TrueSheetBottomSheetView(private val reactContext: ThemedReactContext) : F
49
50
  private const val DEFAULT_CORNER_RADIUS = 16f // dp
50
51
  private const val DEFAULT_MAX_WIDTH = 640 // dp
51
52
  private const val DEFAULT_ELEVATION = 4f // dp
53
+
54
+ // M3 baseline surfaceContainerLow
55
+ private val COLOR_SURFACE_CONTAINER_LOW_LIGHT = Color.parseColor("#F7F2FA")
56
+ private val COLOR_SURFACE_CONTAINER_LOW_DARK = Color.parseColor("#1D1B20")
52
57
  }
53
58
 
54
59
  // =============================================================================
@@ -85,6 +90,17 @@ class TrueSheetBottomSheetView(private val reactContext: ThemedReactContext) : F
85
90
  // MARK: - Layout
86
91
  // =============================================================================
87
92
 
93
+ private fun resolveAnchor(): Pair<Int, Int> {
94
+ val anchor = if (ScreenUtils.isPortraitPhone(reactContext)) null else delegate?.anchor
95
+ val gravity = when (anchor) {
96
+ TrueSheetAnchor.LEFT -> Gravity.START
97
+ TrueSheetAnchor.RIGHT -> Gravity.END
98
+ else -> Gravity.CENTER_HORIZONTAL
99
+ } or Gravity.BOTTOM
100
+ val margin = if (anchor == TrueSheetAnchor.LEFT || anchor == TrueSheetAnchor.RIGHT) delegate?.anchorOffset ?: 0 else 0
101
+ return Pair(gravity, margin)
102
+ }
103
+
88
104
  /**
89
105
  * Creates layout params with BottomSheetBehavior attached.
90
106
  */
@@ -96,46 +112,32 @@ class TrueSheetBottomSheetView(private val reactContext: ThemedReactContext) : F
96
112
  maxWidth = effectiveMaxWidth
97
113
  }
98
114
 
99
- val horizontalGravity = when (delegate?.anchor) {
100
- "left" -> Gravity.START
101
- "right" -> Gravity.END
102
- else -> Gravity.CENTER_HORIZONTAL
103
- }
104
-
105
- val anchorMargin = if (delegate?.anchor == "left" || delegate?.anchor == "right") {
106
- delegate?.anchorOffset ?: 0
107
- } else {
108
- 0
109
- }
115
+ val (gravity, margin) = resolveAnchor()
110
116
 
111
117
  return CoordinatorLayout.LayoutParams(
112
118
  CoordinatorLayout.LayoutParams.MATCH_PARENT,
113
119
  CoordinatorLayout.LayoutParams.MATCH_PARENT
114
120
  ).apply {
115
121
  this.behavior = behavior
116
- this.gravity = horizontalGravity or Gravity.BOTTOM
117
- this.marginStart = anchorMargin
118
- this.marginEnd = anchorMargin
122
+ this.gravity = gravity
123
+ this.marginStart = margin
124
+ this.marginEnd = margin
119
125
  }
120
126
  }
121
127
 
122
- fun updateGravity() {
128
+ fun updateGravity(animated: Boolean = true) {
123
129
  val params = layoutParams as? CoordinatorLayout.LayoutParams ?: return
124
- val isAnchored = delegate?.anchor == "left" || delegate?.anchor == "right"
125
- val horizontalGravity = when (delegate?.anchor) {
126
- "left" -> Gravity.START
127
- "right" -> Gravity.END
128
- else -> Gravity.CENTER_HORIZONTAL
129
- }
130
- val newGravity = horizontalGravity or Gravity.BOTTOM
131
- val anchorMargin = if (isAnchored) delegate?.anchorOffset ?: 0 else 0
130
+ val (gravity, margin) = resolveAnchor()
132
131
 
133
- if (params.gravity == newGravity && params.marginStart == anchorMargin) return
132
+ if (params.gravity == gravity && params.marginStart == margin) return
134
133
 
135
- (parent as? CoordinatorLayout)?.let { TransitionManager.beginDelayedTransition(it) }
136
- params.gravity = newGravity
137
- params.marginStart = anchorMargin
138
- params.marginEnd = anchorMargin
134
+ if (animated) {
135
+ (parent as? CoordinatorLayout)?.let { TransitionManager.beginDelayedTransition(it) }
136
+ }
137
+
138
+ params.gravity = gravity
139
+ params.marginStart = margin
140
+ params.marginEnd = margin
139
141
  layoutParams = params
140
142
  }
141
143
 
@@ -173,17 +175,11 @@ class TrueSheetBottomSheetView(private val reactContext: ThemedReactContext) : F
173
175
  }
174
176
 
175
177
  private fun getDefaultBackgroundColor(): Int {
176
- val typedValue = TypedValue()
177
- return if (reactContext.theme.resolveAttribute(
178
- com.google.android.material.R.attr.colorSurfaceContainerLow,
179
- typedValue,
180
- true
181
- )
182
- ) {
183
- typedValue.data
184
- } else {
185
- Color.WHITE
186
- }
178
+ val isNight = (
179
+ reactContext.resources.configuration.uiMode and
180
+ Configuration.UI_MODE_NIGHT_MASK
181
+ ) == Configuration.UI_MODE_NIGHT_YES
182
+ return if (isNight) COLOR_SURFACE_CONTAINER_LOW_DARK else COLOR_SURFACE_CONTAINER_LOW_LIGHT
187
183
  }
188
184
 
189
185
  fun setupElevation() {
@@ -46,7 +46,7 @@ NS_ASSUME_NONNULL_BEGIN
46
46
  /**
47
47
  * Inset adjustment mode for scrollable content
48
48
  */
49
- @property (nonatomic, copy, nullable) NSString *insetAdjustment;
49
+ @property (nonatomic, assign) NSInteger insetAdjustment;
50
50
 
51
51
  /**
52
52
  * Options for scrollable behavior
@@ -100,7 +100,7 @@ using namespace facebook::react;
100
100
  - (void)setupScrollable {
101
101
  if (_scrollableSet && _contentView) {
102
102
  CGFloat bottomInset = 0;
103
- if ([_insetAdjustment isEqualToString:@"automatic"]) {
103
+ if (_insetAdjustment == (NSInteger)TrueSheetViewInsetAdjustment::Automatic) {
104
104
  bottomInset = [WindowUtil keyWindow].safeAreaInsets.bottom;
105
105
  }
106
106
  [_contentView setupScrollable:_scrollableEnabled bottomInset:bottomInset];
@@ -33,6 +33,7 @@
33
33
  #import <React/RCTLog.h>
34
34
  #import <React/RCTSurfaceTouchHandler.h>
35
35
  #import <React/RCTUtils.h>
36
+ #import <cxxreact/ReactNativeVersion.h>
36
37
  #import <react/renderer/core/State.h>
37
38
 
38
39
  using namespace facebook::react;
@@ -50,7 +51,7 @@ using namespace facebook::react;
50
51
  UIView *_snapshotView;
51
52
  CGSize _lastStateSize;
52
53
  NSInteger _initialDetentIndex;
53
- NSString *_insetAdjustment;
54
+ NSInteger _insetAdjustment;
54
55
  BOOL _scrollable;
55
56
  NSDictionary *_scrollableOptions;
56
57
  BOOL _initialDetentAnimated;
@@ -176,7 +177,7 @@ using namespace facebook::react;
176
177
  _controller.backgroundColor = RCTUIColorFromSharedColor(newProps.backgroundColor);
177
178
 
178
179
  // Blur tint
179
- _controller.backgroundBlur = !newProps.backgroundBlur.empty() ? RCTNSStringFromString(newProps.backgroundBlur) : nil;
180
+ _controller.backgroundBlur = (NSInteger)newProps.backgroundBlur;
180
181
 
181
182
  // Blur options
182
183
  const auto &blurOpts = newProps.blurOptions;
@@ -193,7 +194,7 @@ using namespace facebook::react;
193
194
  _controller.maxContentWidth = newProps.maxContentWidth != 0.0 ? @(newProps.maxContentWidth) : nil;
194
195
 
195
196
  // Anchor
196
- _controller.anchor = RCTNSStringFromString(newProps.anchor);
197
+ _controller.anchor = (NSInteger)newProps.anchor;
197
198
 
198
199
  _controller.grabber = newProps.grabber;
199
200
 
@@ -254,7 +255,7 @@ using namespace facebook::react;
254
255
  _scrollableOptions = nil;
255
256
  }
256
257
 
257
- _insetAdjustment = RCTNSStringFromString(toString(newProps.insetAdjustment));
258
+ _insetAdjustment = (NSInteger)newProps.insetAdjustment;
258
259
  _controller.insetAdjustment = _insetAdjustment;
259
260
 
260
261
  if (_containerView) {
@@ -271,8 +272,6 @@ using namespace facebook::react;
271
272
  if (_controller) {
272
273
  [self updateStateWithSize:_controller.view.frame.size];
273
274
  }
274
-
275
- [_screensEventObserver startObservingWithState:_state.get()->getData()];
276
275
  }
277
276
 
278
277
  /**
@@ -286,13 +285,16 @@ using namespace facebook::react;
286
285
  return;
287
286
 
288
287
  _lastStateSize = size;
289
- _state->updateState([=](TrueSheetViewShadowNode::ConcreteState::Data const &oldData)
290
- -> TrueSheetViewShadowNode::ConcreteState::SharedData {
291
- auto newData = oldData;
292
- newData.containerWidth = static_cast<float>(size.width);
293
- newData.containerHeight = static_cast<float>(size.height);
294
- return std::make_shared<TrueSheetViewShadowNode::ConcreteState::Data const>(newData);
295
- });
288
+
289
+ auto stateData = _state->getData();
290
+ stateData.containerWidth = static_cast<float>(size.width);
291
+ stateData.containerHeight = static_cast<float>(size.height);
292
+
293
+ #if REACT_NATIVE_VERSION_MINOR >= 82
294
+ _state->updateState(std::move(stateData), facebook::react::EventQueue::UpdateMode::unstable_Immediate);
295
+ #else
296
+ _state->updateState(std::move(stateData));
297
+ #endif
296
298
  }
297
299
 
298
300
  - (void)finalizeUpdates:(RNComponentViewUpdateMask)updateMask {
@@ -458,6 +460,7 @@ using namespace facebook::react;
458
460
  [_controller setupActiveDetentWithIndex:index];
459
461
 
460
462
  [_screensEventObserver capturePresenterScreenFromView:self];
463
+ [_screensEventObserver startObservingWithState:_state.get()->getData()];
461
464
 
462
465
  [presentingViewController presentViewController:_controller
463
466
  animated:animated
@@ -62,12 +62,12 @@ NS_ASSUME_NONNULL_BEGIN
62
62
  @property (nonatomic, assign) BOOL draggable;
63
63
  @property (nonatomic, assign) BOOL dimmed;
64
64
  @property (nonatomic, strong, nullable) NSNumber *dimmedDetentIndex;
65
- @property (nonatomic, copy, nullable) NSString *backgroundBlur;
65
+ @property (nonatomic, assign) NSInteger backgroundBlur;
66
66
  @property (nonatomic, strong, nullable) NSNumber *blurIntensity;
67
67
  @property (nonatomic, assign) BOOL blurInteraction;
68
68
  @property (nonatomic, assign) BOOL pageSizing;
69
- @property (nonatomic, copy, nullable) NSString *anchor;
70
- @property (nonatomic, copy, nullable) NSString *insetAdjustment;
69
+ @property (nonatomic, assign) NSInteger anchor;
70
+ @property (nonatomic, assign) NSInteger insetAdjustment;
71
71
  @property (nonatomic, assign) BOOL isPresented;
72
72
  @property (nonatomic, assign) NSInteger activeDetentIndex;
73
73
  @property (nonatomic, readonly) BOOL isTopmostPresentedController;
@@ -18,6 +18,9 @@
18
18
 
19
19
  #import <React/RCTLog.h>
20
20
  #import <React/RCTScrollViewComponentView.h>
21
+ #import <react/renderer/components/TrueSheetSpec/Props.h>
22
+
23
+ using namespace facebook::react;
21
24
 
22
25
  @interface TrueSheetViewController ()
23
26
 
@@ -71,7 +74,7 @@
71
74
  _isTrackingPositionFromLayout = NO;
72
75
 
73
76
  _blurInteraction = YES;
74
- _insetAdjustment = @"automatic";
77
+ _insetAdjustment = (NSInteger)TrueSheetViewInsetAdjustment::Automatic;
75
78
  _detentCalculator = [[TrueSheetDetentCalculator alloc] init];
76
79
  _detentCalculator.delegate = self;
77
80
  }
@@ -109,7 +112,7 @@
109
112
  }
110
113
 
111
114
  - (CGFloat)detentBottomAdjustmentForHeight:(CGFloat)height {
112
- if ([_insetAdjustment isEqualToString:@"automatic"]) {
115
+ if (_insetAdjustment == (NSInteger)TrueSheetViewInsetAdjustment::Automatic) {
113
116
  return 0;
114
117
  }
115
118
 
@@ -659,16 +662,16 @@
659
662
  }
660
663
 
661
664
  - (void)setupBackground {
662
- NSString *effectiveBackgroundBlur = self.backgroundBlur;
665
+ NSInteger effectiveBackgroundBlur = self.backgroundBlur;
663
666
  if (@available(iOS 26.0, *)) {
664
667
  // iOS 26+ has default liquid glass effect
665
- } else if ((!effectiveBackgroundBlur || effectiveBackgroundBlur.length == 0) && !self.backgroundColor) {
666
- effectiveBackgroundBlur = @"system-material";
668
+ } else if (effectiveBackgroundBlur == (NSInteger)TrueSheetViewBackgroundBlur::None && !self.backgroundColor) {
669
+ effectiveBackgroundBlur = (NSInteger)TrueSheetViewBackgroundBlur::SystemMaterial;
667
670
  }
668
671
 
669
- BOOL hasBlur = effectiveBackgroundBlur && effectiveBackgroundBlur.length > 0;
672
+ BOOL hasBlur = effectiveBackgroundBlur != (NSInteger)TrueSheetViewBackgroundBlur::None;
670
673
 
671
- _blurView.backgroundBlur = hasBlur ? effectiveBackgroundBlur : nil;
674
+ _blurView.backgroundBlur = hasBlur ? effectiveBackgroundBlur : (NSInteger)TrueSheetViewBackgroundBlur::None;
672
675
  _blurView.blurIntensity = self.blurIntensity;
673
676
  _blurView.blurInteraction = self.blurInteraction;
674
677
  [_blurView applyBlurEffect];
@@ -715,7 +718,7 @@
715
718
  }
716
719
 
717
720
  - (BOOL)isAnchored {
718
- return [self.anchor isEqualToString:@"left"] || [self.anchor isEqualToString:@"right"];
721
+ return self.anchor == (NSInteger)TrueSheetViewAnchor::Left || self.anchor == (NSInteger)TrueSheetViewAnchor::Right;
719
722
  }
720
723
 
721
724
  - (void)setupAnchorViewInView:(UIView *)parentView {
@@ -736,7 +739,7 @@
736
739
  [parentView addSubview:_anchorView];
737
740
 
738
741
  NSLayoutAnchor *horizontalAnchor =
739
- [self.anchor isEqualToString:@"right"] ? parentView.trailingAnchor : parentView.leadingAnchor;
742
+ self.anchor == (NSInteger)TrueSheetViewAnchor::Right ? parentView.trailingAnchor : parentView.leadingAnchor;
740
743
 
741
744
  [NSLayoutConstraint activateConstraints:@[
742
745
  [_anchorView.bottomAnchor constraintEqualToAnchor:parentView.bottomAnchor],
@@ -12,7 +12,7 @@ NS_ASSUME_NONNULL_BEGIN
12
12
 
13
13
  @interface TrueSheetBlurView : UIVisualEffectView
14
14
 
15
- @property (nonatomic, copy, nullable) NSString *backgroundBlur;
15
+ @property (nonatomic, assign) NSInteger backgroundBlur;
16
16
  @property (nonatomic, strong, nullable) NSNumber *blurIntensity;
17
17
  @property (nonatomic, assign) BOOL blurInteraction;
18
18
 
@@ -9,6 +9,10 @@
9
9
  #import "TrueSheetBlurView.h"
10
10
  #import "BlurUtil.h"
11
11
 
12
+ #import <react/renderer/components/TrueSheetSpec/Props.h>
13
+
14
+ using namespace facebook::react;
15
+
12
16
  @implementation TrueSheetBlurView {
13
17
  UIViewPropertyAnimator *_blurAnimator;
14
18
  }
@@ -44,13 +48,13 @@
44
48
  - (void)applyBlurEffect {
45
49
  self.userInteractionEnabled = self.blurInteraction;
46
50
 
47
- if (!self.backgroundBlur || self.backgroundBlur.length == 0) {
51
+ if (self.backgroundBlur == (NSInteger)TrueSheetViewBackgroundBlur::None) {
48
52
  [self clearAnimator];
49
53
  self.effect = nil;
50
54
  return;
51
55
  }
52
56
 
53
- UIBlurEffectStyle style = [BlurUtil blurEffectStyleFromString:self.backgroundBlur];
57
+ UIBlurEffectStyle style = [BlurUtil blurEffectStyleFromEnum:self.backgroundBlur];
54
58
  UIBlurEffect *blurEffect = [UIBlurEffect effectWithStyle:style];
55
59
 
56
60
  CGFloat intensity =
@@ -14,7 +14,7 @@ NS_ASSUME_NONNULL_BEGIN
14
14
 
15
15
  @interface BlurUtil : NSObject
16
16
 
17
- + (UIBlurEffectStyle)blurEffectStyleFromString:(NSString *)tintString;
17
+ + (UIBlurEffectStyle)blurEffectStyleFromEnum:(NSInteger)blur;
18
18
 
19
19
  @end
20
20
 
@@ -10,42 +10,58 @@
10
10
 
11
11
  #import "BlurUtil.h"
12
12
 
13
+ #import <react/renderer/components/TrueSheetSpec/Props.h>
14
+
15
+ using namespace facebook::react;
16
+
13
17
  @implementation BlurUtil
14
18
 
15
- + (UIBlurEffectStyle)blurEffectStyleFromString:(NSString *)tintString {
16
- static NSDictionary<NSString *, NSNumber *> *styleMap = nil;
17
- static dispatch_once_t onceToken;
18
- dispatch_once(&onceToken, ^{
19
- styleMap = @{
20
- @"dark" : @(UIBlurEffectStyleDark),
21
- @"light" : @(UIBlurEffectStyleLight),
22
- @"extra-light" : @(UIBlurEffectStyleExtraLight),
23
- @"regular" : @(UIBlurEffectStyleRegular),
24
- @"prominent" : @(UIBlurEffectStyleProminent),
25
- @"system-ultra-thin-material" : @(UIBlurEffectStyleSystemUltraThinMaterial),
26
- @"system-thin-material" : @(UIBlurEffectStyleSystemThinMaterial),
27
- @"system-material" : @(UIBlurEffectStyleSystemMaterial),
28
- @"system-thick-material" : @(UIBlurEffectStyleSystemThickMaterial),
29
- @"system-chrome-material" : @(UIBlurEffectStyleSystemChromeMaterial),
30
- @"system-ultra-thin-material-light" : @(UIBlurEffectStyleSystemUltraThinMaterialLight),
31
- @"system-thin-material-light" : @(UIBlurEffectStyleSystemThinMaterialLight),
32
- @"system-material-light" : @(UIBlurEffectStyleSystemMaterialLight),
33
- @"system-thick-material-light" : @(UIBlurEffectStyleSystemThickMaterialLight),
34
- @"system-chrome-material-light" : @(UIBlurEffectStyleSystemChromeMaterialLight),
35
- @"system-ultra-thin-material-dark" : @(UIBlurEffectStyleSystemUltraThinMaterialDark),
36
- @"system-thin-material-dark" : @(UIBlurEffectStyleSystemThinMaterialDark),
37
- @"system-material-dark" : @(UIBlurEffectStyleSystemMaterialDark),
38
- @"system-thick-material-dark" : @(UIBlurEffectStyleSystemThickMaterialDark),
39
- @"system-chrome-material-dark" : @(UIBlurEffectStyleSystemChromeMaterialDark),
40
- };
41
- });
42
-
43
- NSNumber *style = styleMap[tintString];
44
- if (style) {
45
- return (UIBlurEffectStyle)[style integerValue];
19
+ + (UIBlurEffectStyle)blurEffectStyleFromEnum:(NSInteger)blur {
20
+ switch ((TrueSheetViewBackgroundBlur)blur) {
21
+ case TrueSheetViewBackgroundBlur::Dark:
22
+ return UIBlurEffectStyleDark;
23
+ case TrueSheetViewBackgroundBlur::ExtraLight:
24
+ return UIBlurEffectStyleExtraLight;
25
+ case TrueSheetViewBackgroundBlur::Regular:
26
+ return UIBlurEffectStyleRegular;
27
+ case TrueSheetViewBackgroundBlur::Prominent:
28
+ return UIBlurEffectStyleProminent;
29
+ case TrueSheetViewBackgroundBlur::SystemUltraThinMaterial:
30
+ return UIBlurEffectStyleSystemUltraThinMaterial;
31
+ case TrueSheetViewBackgroundBlur::SystemThinMaterial:
32
+ return UIBlurEffectStyleSystemThinMaterial;
33
+ case TrueSheetViewBackgroundBlur::SystemMaterial:
34
+ return UIBlurEffectStyleSystemMaterial;
35
+ case TrueSheetViewBackgroundBlur::SystemThickMaterial:
36
+ return UIBlurEffectStyleSystemThickMaterial;
37
+ case TrueSheetViewBackgroundBlur::SystemChromeMaterial:
38
+ return UIBlurEffectStyleSystemChromeMaterial;
39
+ case TrueSheetViewBackgroundBlur::SystemUltraThinMaterialLight:
40
+ return UIBlurEffectStyleSystemUltraThinMaterialLight;
41
+ case TrueSheetViewBackgroundBlur::SystemThinMaterialLight:
42
+ return UIBlurEffectStyleSystemThinMaterialLight;
43
+ case TrueSheetViewBackgroundBlur::SystemMaterialLight:
44
+ return UIBlurEffectStyleSystemMaterialLight;
45
+ case TrueSheetViewBackgroundBlur::SystemThickMaterialLight:
46
+ return UIBlurEffectStyleSystemThickMaterialLight;
47
+ case TrueSheetViewBackgroundBlur::SystemChromeMaterialLight:
48
+ return UIBlurEffectStyleSystemChromeMaterialLight;
49
+ case TrueSheetViewBackgroundBlur::SystemUltraThinMaterialDark:
50
+ return UIBlurEffectStyleSystemUltraThinMaterialDark;
51
+ case TrueSheetViewBackgroundBlur::SystemThinMaterialDark:
52
+ return UIBlurEffectStyleSystemThinMaterialDark;
53
+ case TrueSheetViewBackgroundBlur::SystemMaterialDark:
54
+ return UIBlurEffectStyleSystemMaterialDark;
55
+ case TrueSheetViewBackgroundBlur::SystemThickMaterialDark:
56
+ return UIBlurEffectStyleSystemThickMaterialDark;
57
+ case TrueSheetViewBackgroundBlur::SystemChromeMaterialDark:
58
+ return UIBlurEffectStyleSystemChromeMaterialDark;
59
+ case TrueSheetViewBackgroundBlur::Default:
60
+ case TrueSheetViewBackgroundBlur::Light:
61
+ case TrueSheetViewBackgroundBlur::None:
62
+ default:
63
+ return UIBlurEffectStyleLight;
46
64
  }
47
-
48
- return UIBlurEffectStyleLight;
49
65
  }
50
66
 
51
67
  @end
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import { createElement, Fragment, forwardRef, isValidElement, useCallback, useContext, useEffect, useId, useImperativeHandle, useMemo, useRef, useState } from 'react';
4
- import { View, StyleSheet, useWindowDimensions } from 'react-native';
4
+ import { View, StyleSheet, useColorScheme, useWindowDimensions } from 'react-native';
5
5
  import BottomSheet, { BottomSheetBackdrop, BottomSheetFooter, BottomSheetHandle, BottomSheetModal, BottomSheetView } from '@gorhom/bottom-sheet';
6
6
  import { useDerivedValue, useSharedValue } from 'react-native-reanimated';
7
7
  import { BottomSheetContext } from "./TrueSheetProvider.web.js";
@@ -9,6 +9,9 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
9
  const DEFAULT_CORNER_RADIUS = 16;
10
10
  const DEFAULT_ELEVATION = 4;
11
11
  const DEFAULT_MAX_WIDTH = 640;
12
+ // M3 baseline surfaceContainerLow
13
+ const COLOR_SURFACE_CONTAINER_LOW_LIGHT = '#F7F2FA';
14
+ const COLOR_SURFACE_CONTAINER_LOW_DARK = '#1D1B20';
12
15
  const DEFAULT_GRABBER_COLOR = 'rgba(0, 0, 0, 0.3)';
13
16
  const DEFAULT_GRABBER_WIDTH = 32;
14
17
  const DEFAULT_GRABBER_HEIGHT = 4;
@@ -43,14 +46,14 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
43
46
  children,
44
47
  scrollable = false,
45
48
  initialDetentIndex = -1,
46
- backgroundColor = '#ffffff',
49
+ backgroundColor: backgroundColorProp,
47
50
  cornerRadius = DEFAULT_CORNER_RADIUS,
48
51
  elevation = DEFAULT_ELEVATION,
49
52
  grabber = true,
50
53
  grabberOptions,
51
54
  maxContentHeight,
52
55
  maxContentWidth,
53
- anchor,
56
+ anchor = 'center',
54
57
  anchorOffset = 16,
55
58
  header,
56
59
  headerStyle,
@@ -73,6 +76,8 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
73
76
  stackBehavior = 'switch',
74
77
  style
75
78
  } = props;
79
+ const colorScheme = useColorScheme();
80
+ const backgroundColor = backgroundColorProp ?? (colorScheme === 'dark' ? COLOR_SURFACE_CONTAINER_LOW_DARK : COLOR_SURFACE_CONTAINER_LOW_LIGHT);
76
81
  const {
77
82
  width: windowWidth,
78
83
  height: windowHeight
@@ -1 +1 @@
1
- {"version":3,"names":["createElement","Fragment","forwardRef","isValidElement","useCallback","useContext","useEffect","useId","useImperativeHandle","useMemo","useRef","useState","View","StyleSheet","useWindowDimensions","BottomSheet","BottomSheetBackdrop","BottomSheetFooter","BottomSheetHandle","BottomSheetModal","BottomSheetView","useDerivedValue","useSharedValue","BottomSheetContext","jsx","_jsx","jsxs","_jsxs","DEFAULT_CORNER_RADIUS","DEFAULT_ELEVATION","DEFAULT_MAX_WIDTH","DEFAULT_GRABBER_COLOR","DEFAULT_GRABBER_WIDTH","DEFAULT_GRABBER_HEIGHT","getElevationShadow","elevation","ambientY","ambientBlur","ambientOpacity","keyY","keyBlur","keyOpacity","renderSlot","slot","TrueSheetComponent","props","ref","name","detents","dismissible","draggable","dimmed","dimmedDetentIndex","children","scrollable","initialDetentIndex","backgroundColor","cornerRadius","grabber","grabberOptions","maxContentHeight","maxContentWidth","anchor","anchorOffset","header","headerStyle","footer","footerStyle","onMount","onWillPresent","onDidPresent","onWillDismiss","onDidDismiss","onDetentChange","onPositionChange","onDragBegin","onDragChange","onDragEnd","onWillFocus","onDidFocus","onWillBlur","onDidBlur","stackBehavior","style","width","windowWidth","height","windowHeight","isLandscapeOrTablet","defaultName","sheetName","bottomSheetContext","bottomSheetModalRef","bottomSheetRef","initialDetentIndexRef","currentIndexRef","isPresenting","isDismissing","isMinimized","isDragging","presentResolver","dismissResolver","animatedPosition","animatedIndex","snapIndex","setSnapIndex","isMounted","setIsMounted","isNonModal","nativeEvent","position","value","index","detent","realtime","hasAutoDetent","includes","containerHeight","snapPoints","filter","map","Math","min","max","handleChange","_position","_type","previousIndex","current","handleDismiss","removeFromStack","handleAnimate","_fromIndex","toIndex","sheetsAbove","getSheetsAbove","length","backdropComponent","backdropProps","pressBehavior","opacity","appearsOnIndex","disappearsOnIndex","handleComponent","handleProps","borderRadius","styles","handle","paddingTop","topMargin","indicatorStyle","color","footerComponent","footerProps","flatten","undefined","ContainerComponent","sheetMethodsRef","present","Promise","resolve","snapToIndex","pushToStack","dismiss","close","dismissStack","immediateChild","then","resize","register","unregister","sheetContent","sharedProps","root","borderTopLeftRadius","borderTopRightRadius","boxShadow","maxWidth","marginLeft","marginRight","enablePanDownToClose","enableContentPanningGesture","enableHandlePanningGesture","onChange","onAnimate","enableDynamicSizing","maxDynamicContentSize","backgroundComponent","onClose","animateOnMount","onDismiss","STATIC_METHOD_ERROR","TrueSheet","Error","dismissAll","create","overflow","top","left","right","zIndex","paddingVertical","pointerEvents"],"sourceRoot":"../../src","sources":["TrueSheet.web.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createElement","Fragment","forwardRef","isValidElement","useCallback","useContext","useEffect","useId","useImperativeHandle","useMemo","useRef","useState","View","StyleSheet","useColorScheme","useWindowDimensions","BottomSheet","BottomSheetBackdrop","BottomSheetFooter","BottomSheetHandle","BottomSheetModal","BottomSheetView","useDerivedValue","useSharedValue","BottomSheetContext","jsx","_jsx","jsxs","_jsxs","DEFAULT_CORNER_RADIUS","DEFAULT_ELEVATION","DEFAULT_MAX_WIDTH","COLOR_SURFACE_CONTAINER_LOW_LIGHT","COLOR_SURFACE_CONTAINER_LOW_DARK","DEFAULT_GRABBER_COLOR","DEFAULT_GRABBER_WIDTH","DEFAULT_GRABBER_HEIGHT","getElevationShadow","elevation","ambientY","ambientBlur","ambientOpacity","keyY","keyBlur","keyOpacity","renderSlot","slot","TrueSheetComponent","props","ref","name","detents","dismissible","draggable","dimmed","dimmedDetentIndex","children","scrollable","initialDetentIndex","backgroundColor","backgroundColorProp","cornerRadius","grabber","grabberOptions","maxContentHeight","maxContentWidth","anchor","anchorOffset","header","headerStyle","footer","footerStyle","onMount","onWillPresent","onDidPresent","onWillDismiss","onDidDismiss","onDetentChange","onPositionChange","onDragBegin","onDragChange","onDragEnd","onWillFocus","onDidFocus","onWillBlur","onDidBlur","stackBehavior","style","colorScheme","width","windowWidth","height","windowHeight","isLandscapeOrTablet","defaultName","sheetName","bottomSheetContext","bottomSheetModalRef","bottomSheetRef","initialDetentIndexRef","currentIndexRef","isPresenting","isDismissing","isMinimized","isDragging","presentResolver","dismissResolver","animatedPosition","animatedIndex","snapIndex","setSnapIndex","isMounted","setIsMounted","isNonModal","nativeEvent","position","value","index","detent","realtime","hasAutoDetent","includes","containerHeight","snapPoints","filter","map","Math","min","max","handleChange","_position","_type","previousIndex","current","handleDismiss","removeFromStack","handleAnimate","_fromIndex","toIndex","sheetsAbove","getSheetsAbove","length","backdropComponent","backdropProps","pressBehavior","opacity","appearsOnIndex","disappearsOnIndex","handleComponent","handleProps","borderRadius","styles","handle","paddingTop","topMargin","indicatorStyle","color","footerComponent","footerProps","flatten","undefined","ContainerComponent","sheetMethodsRef","present","Promise","resolve","snapToIndex","pushToStack","dismiss","close","dismissStack","immediateChild","then","resize","register","unregister","sheetContent","sharedProps","root","borderTopLeftRadius","borderTopRightRadius","boxShadow","maxWidth","marginLeft","marginRight","enablePanDownToClose","enableContentPanningGesture","enableHandlePanningGesture","onChange","onAnimate","enableDynamicSizing","maxDynamicContentSize","backgroundComponent","onClose","animateOnMount","onDismiss","STATIC_METHOD_ERROR","TrueSheet","Error","dismissAll","create","overflow","top","left","right","zIndex","paddingVertical","pointerEvents"],"sourceRoot":"../../src","sources":["TrueSheet.web.tsx"],"mappings":"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","ignoreList":[]}
@@ -54,9 +54,33 @@ export interface NativeProps extends ViewProps {
54
54
  dimmedDetentIndex?: WithDefault<Int32, 0>;
55
55
 
56
56
  // String properties - use empty string as default to avoid nil insertion
57
- backgroundBlur?: WithDefault<string, ''>;
57
+ backgroundBlur?: WithDefault<
58
+ | 'none'
59
+ | 'light'
60
+ | 'dark'
61
+ | 'default'
62
+ | 'extra-light'
63
+ | 'regular'
64
+ | 'prominent'
65
+ | 'system-ultra-thin-material'
66
+ | 'system-thin-material'
67
+ | 'system-material'
68
+ | 'system-thick-material'
69
+ | 'system-chrome-material'
70
+ | 'system-ultra-thin-material-light'
71
+ | 'system-thin-material-light'
72
+ | 'system-material-light'
73
+ | 'system-thick-material-light'
74
+ | 'system-chrome-material-light'
75
+ | 'system-ultra-thin-material-dark'
76
+ | 'system-thin-material-dark'
77
+ | 'system-material-dark'
78
+ | 'system-thick-material-dark'
79
+ | 'system-chrome-material-dark',
80
+ 'none'
81
+ >;
58
82
 
59
- anchor?: WithDefault<string, 'center'>;
83
+ anchor?: WithDefault<'left' | 'center' | 'right', 'center'>;
60
84
  anchorOffset?: WithDefault<Double, 16>;
61
85
  insetAdjustment?: WithDefault<'automatic' | 'never', 'automatic'>;
62
86
 
@@ -1 +1 @@
1
- {"version":3,"file":"TrueSheet.web.d.ts","sourceRoot":"","sources":["../../../src/TrueSheet.web.tsx"],"names":[],"mappings":"AA6BA,OAAO,EAAsB,KAAK,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACvF,OAAO,KAAK,EACV,cAAc,EAef,MAAM,mBAAmB,CAAC;AAkC3B,QAAA,MAAM,kBAAkB,gHAsatB,CAAC;AAKH,UAAU,eAAe;IACvB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACjC;AAED,eAAO,MAAM,SAAS,EAAyB,OAAO,kBAAkB,GAAG,eAAe,CAAC"}
1
+ {"version":3,"file":"TrueSheet.web.d.ts","sourceRoot":"","sources":["../../../src/TrueSheet.web.tsx"],"names":[],"mappings":"AA6BA,OAAO,EAAsB,KAAK,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACvF,OAAO,KAAK,EACV,cAAc,EAef,MAAM,mBAAmB,CAAC;AAsC3B,QAAA,MAAM,kBAAkB,gHA2atB,CAAC;AAKH,UAAU,eAAe;IACvB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACjC;AAED,eAAO,MAAM,SAAS,EAAyB,OAAO,kBAAkB,GAAG,eAAe,CAAC"}
@@ -35,8 +35,8 @@ export interface NativeProps extends ViewProps {
35
35
  backgroundColor?: ColorValue;
36
36
  initialDetentIndex?: WithDefault<Int32, -1>;
37
37
  dimmedDetentIndex?: WithDefault<Int32, 0>;
38
- backgroundBlur?: WithDefault<string, ''>;
39
- anchor?: WithDefault<string, 'center'>;
38
+ backgroundBlur?: WithDefault<'none' | 'light' | 'dark' | 'default' | 'extra-light' | 'regular' | 'prominent' | 'system-ultra-thin-material' | 'system-thin-material' | 'system-material' | 'system-thick-material' | 'system-chrome-material' | 'system-ultra-thin-material-light' | 'system-thin-material-light' | 'system-material-light' | 'system-thick-material-light' | 'system-chrome-material-light' | 'system-ultra-thin-material-dark' | 'system-thin-material-dark' | 'system-material-dark' | 'system-thick-material-dark' | 'system-chrome-material-dark', 'none'>;
39
+ anchor?: WithDefault<'left' | 'center' | 'right', 'center'>;
40
40
  anchorOffset?: WithDefault<Double, 16>;
41
41
  insetAdjustment?: WithDefault<'automatic' | 'never', 'automatic'>;
42
42
  blurOptions?: BlurOptionsType;
@@ -1 +1 @@
1
- {"version":3,"file":"TrueSheetViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../../src/fabric/TrueSheetViewNativeComponent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TrueSheetViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../../src/fabric/TrueSheetViewNativeComponent.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lodev09/react-native-true-sheet",
3
- "version": "3.9.0-beta.0",
3
+ "version": "3.9.0-beta.2",
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",
@@ -12,7 +12,7 @@ import {
12
12
  useRef,
13
13
  useState,
14
14
  } from 'react';
15
- import { View, StyleSheet, useWindowDimensions } from 'react-native';
15
+ import { View, StyleSheet, useColorScheme, useWindowDimensions } from 'react-native';
16
16
 
17
17
  import BottomSheet, {
18
18
  BottomSheetBackdrop,
@@ -50,6 +50,10 @@ const DEFAULT_CORNER_RADIUS = 16;
50
50
  const DEFAULT_ELEVATION = 4;
51
51
 
52
52
  const DEFAULT_MAX_WIDTH = 640;
53
+ // M3 baseline surfaceContainerLow
54
+ const COLOR_SURFACE_CONTAINER_LOW_LIGHT = '#F7F2FA';
55
+ const COLOR_SURFACE_CONTAINER_LOW_DARK = '#1D1B20';
56
+
53
57
  const DEFAULT_GRABBER_COLOR = 'rgba(0, 0, 0, 0.3)';
54
58
  const DEFAULT_GRABBER_WIDTH = 32;
55
59
  const DEFAULT_GRABBER_HEIGHT = 4;
@@ -89,14 +93,14 @@ const TrueSheetComponent = forwardRef<TrueSheetRefMethods, TrueSheetProps>((prop
89
93
  children,
90
94
  scrollable = false,
91
95
  initialDetentIndex = -1,
92
- backgroundColor = '#ffffff',
96
+ backgroundColor: backgroundColorProp,
93
97
  cornerRadius = DEFAULT_CORNER_RADIUS,
94
98
  elevation = DEFAULT_ELEVATION,
95
99
  grabber = true,
96
100
  grabberOptions,
97
101
  maxContentHeight,
98
102
  maxContentWidth,
99
- anchor,
103
+ anchor = 'center',
100
104
  anchorOffset = 16,
101
105
  header,
102
106
  headerStyle,
@@ -120,6 +124,11 @@ const TrueSheetComponent = forwardRef<TrueSheetRefMethods, TrueSheetProps>((prop
120
124
  style,
121
125
  } = props;
122
126
 
127
+ const colorScheme = useColorScheme();
128
+ const backgroundColor =
129
+ backgroundColorProp ??
130
+ (colorScheme === 'dark' ? COLOR_SURFACE_CONTAINER_LOW_DARK : COLOR_SURFACE_CONTAINER_LOW_LIGHT);
131
+
123
132
  const { width: windowWidth, height: windowHeight } = useWindowDimensions();
124
133
  const isLandscapeOrTablet = windowWidth >= 600 || windowWidth > windowHeight;
125
134
  const defaultName = useId();
@@ -54,9 +54,33 @@ export interface NativeProps extends ViewProps {
54
54
  dimmedDetentIndex?: WithDefault<Int32, 0>;
55
55
 
56
56
  // String properties - use empty string as default to avoid nil insertion
57
- backgroundBlur?: WithDefault<string, ''>;
57
+ backgroundBlur?: WithDefault<
58
+ | 'none'
59
+ | 'light'
60
+ | 'dark'
61
+ | 'default'
62
+ | 'extra-light'
63
+ | 'regular'
64
+ | 'prominent'
65
+ | 'system-ultra-thin-material'
66
+ | 'system-thin-material'
67
+ | 'system-material'
68
+ | 'system-thick-material'
69
+ | 'system-chrome-material'
70
+ | 'system-ultra-thin-material-light'
71
+ | 'system-thin-material-light'
72
+ | 'system-material-light'
73
+ | 'system-thick-material-light'
74
+ | 'system-chrome-material-light'
75
+ | 'system-ultra-thin-material-dark'
76
+ | 'system-thin-material-dark'
77
+ | 'system-material-dark'
78
+ | 'system-thick-material-dark'
79
+ | 'system-chrome-material-dark',
80
+ 'none'
81
+ >;
58
82
 
59
- anchor?: WithDefault<string, 'center'>;
83
+ anchor?: WithDefault<'left' | 'center' | 'right', 'center'>;
60
84
  anchorOffset?: WithDefault<Double, 16>;
61
85
  insetAdjustment?: WithDefault<'automatic' | 'never', 'automatic'>;
62
86