@lodev09/react-native-true-sheet 3.0.0-beta.6 → 3.0.0-beta.7
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 +1 -0
- package/android/src/main/java/com/lodev09/truesheet/TrueSheetContainerView.kt +0 -50
- package/android/src/main/java/com/lodev09/truesheet/TrueSheetContainerViewManager.kt +0 -7
- package/android/src/main/java/com/lodev09/truesheet/TrueSheetView.kt +40 -4
- package/android/src/main/java/com/lodev09/truesheet/TrueSheetViewController.kt +5 -13
- package/android/src/main/java/com/lodev09/truesheet/TrueSheetViewManager.kt +7 -0
- package/android/src/main/jni/TrueSheetSpec.h +1 -1
- package/common/cpp/react/renderer/components/TrueSheetSpec/{TrueSheetContainerViewComponentDescriptor.h → TrueSheetViewComponentDescriptor.h} +5 -5
- package/common/cpp/react/renderer/components/TrueSheetSpec/{TrueSheetContainerViewShadowNode.cpp → TrueSheetViewShadowNode.cpp} +4 -4
- package/common/cpp/react/renderer/components/TrueSheetSpec/{TrueSheetContainerViewShadowNode.h → TrueSheetViewShadowNode.h} +8 -8
- package/common/cpp/react/renderer/components/TrueSheetSpec/{TrueSheetContainerViewState.cpp → TrueSheetViewState.cpp} +2 -2
- package/common/cpp/react/renderer/components/TrueSheetSpec/{TrueSheetContainerViewState.h → TrueSheetViewState.h} +6 -6
- package/ios/TrueSheetContainerView.mm +1 -48
- package/ios/TrueSheetView.mm +40 -5
- package/ios/TrueSheetViewController.h +1 -0
- package/ios/TrueSheetViewController.mm +5 -0
- package/lib/module/TrueSheet.js +0 -1
- package/lib/module/TrueSheet.js.map +1 -1
- package/lib/module/fabric/TrueSheetContainerViewNativeComponent.ts +1 -3
- package/lib/module/fabric/TrueSheetViewNativeComponent.ts +3 -1
- package/lib/typescript/src/fabric/TrueSheetContainerViewNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/fabric/TrueSheetViewNativeComponent.d.ts.map +1 -1
- package/package.json +3 -3
- package/react-native.config.js +1 -1
- package/src/TrueSheet.tsx +0 -1
- package/src/fabric/TrueSheetContainerViewNativeComponent.ts +1 -3
- package/src/fabric/TrueSheetViewNativeComponent.ts +3 -1
package/README.md
CHANGED
|
@@ -13,6 +13,7 @@ The true native bottom sheet experience for your React Native Apps. 💩
|
|
|
13
13
|
* 🎯 **Type-safe** - Full TypeScript support with Codegen-generated native interfaces
|
|
14
14
|
* 🚀 **Blazing fast** - Direct C++ communication, no bridge overhead
|
|
15
15
|
* 🎨 **Native** - Implemented in the native realm
|
|
16
|
+
* ♿ **Accessible** - Native accessibility and screen reader support out of the box
|
|
16
17
|
* 🔄 **Imperative API** - Asynchronus `ref` [methods](https://sheet.lodev09.com/reference/methods#ref-methods)
|
|
17
18
|
|
|
18
19
|
## Installation
|
|
@@ -3,9 +3,6 @@ package com.lodev09.truesheet
|
|
|
3
3
|
import android.annotation.SuppressLint
|
|
4
4
|
import android.view.View
|
|
5
5
|
import androidx.core.view.isNotEmpty
|
|
6
|
-
import com.facebook.react.bridge.WritableNativeMap
|
|
7
|
-
import com.facebook.react.uimanager.PixelUtil.pxToDp
|
|
8
|
-
import com.facebook.react.uimanager.StateWrapper
|
|
9
6
|
import com.facebook.react.uimanager.ThemedReactContext
|
|
10
7
|
import com.facebook.react.views.view.ReactViewGroup
|
|
11
8
|
|
|
@@ -29,53 +26,6 @@ class TrueSheetContainerView(private val reactContext: ThemedReactContext) :
|
|
|
29
26
|
|
|
30
27
|
var delegate: TrueSheetContainerViewDelegate? = null
|
|
31
28
|
|
|
32
|
-
private var stateWrapper: StateWrapper? = null
|
|
33
|
-
|
|
34
|
-
// Pending dimensions to update when stateWrapper becomes available
|
|
35
|
-
private var pendingWidth: Int = 0
|
|
36
|
-
private var pendingHeight: Int = 0
|
|
37
|
-
|
|
38
|
-
fun setStateWrapper(wrapper: StateWrapper?) {
|
|
39
|
-
stateWrapper = wrapper
|
|
40
|
-
|
|
41
|
-
if (wrapper == null) return
|
|
42
|
-
|
|
43
|
-
// Get dimensions from parent controller and update state if we haven't yet
|
|
44
|
-
val controller = parent as? TrueSheetViewController
|
|
45
|
-
if (controller != null && pendingWidth == 0) {
|
|
46
|
-
val w = controller.width
|
|
47
|
-
val h = controller.height
|
|
48
|
-
if (w > 0 && h > 0) {
|
|
49
|
-
updateState(w, h)
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
* Update state with container dimensions.
|
|
56
|
-
* Called by the controller when the dialog size changes.
|
|
57
|
-
*/
|
|
58
|
-
fun updateState(width: Int, height: Int) {
|
|
59
|
-
// Skip if dimensions haven't changed
|
|
60
|
-
if (width == pendingWidth && height == pendingHeight && stateWrapper != null) {
|
|
61
|
-
return
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
// Store dimensions
|
|
65
|
-
pendingWidth = width
|
|
66
|
-
pendingHeight = height
|
|
67
|
-
|
|
68
|
-
val sw = stateWrapper ?: return
|
|
69
|
-
|
|
70
|
-
val realWidth = width.toFloat().pxToDp()
|
|
71
|
-
val realHeight = height.toFloat().pxToDp()
|
|
72
|
-
|
|
73
|
-
val newStateData = WritableNativeMap()
|
|
74
|
-
newStateData.putDouble("containerWidth", realWidth.toDouble())
|
|
75
|
-
newStateData.putDouble("containerHeight", realHeight.toDouble())
|
|
76
|
-
sw.updateState(newStateData)
|
|
77
|
-
}
|
|
78
|
-
|
|
79
29
|
/**
|
|
80
30
|
* Reference to content view (first child)
|
|
81
31
|
*/
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
package com.lodev09.truesheet
|
|
2
2
|
|
|
3
3
|
import com.facebook.react.module.annotations.ReactModule
|
|
4
|
-
import com.facebook.react.uimanager.ReactStylesDiffMap
|
|
5
|
-
import com.facebook.react.uimanager.StateWrapper
|
|
6
4
|
import com.facebook.react.uimanager.ThemedReactContext
|
|
7
5
|
import com.facebook.react.uimanager.ViewGroupManager
|
|
8
6
|
|
|
@@ -17,11 +15,6 @@ class TrueSheetContainerViewManager : ViewGroupManager<TrueSheetContainerView>()
|
|
|
17
15
|
|
|
18
16
|
override fun createViewInstance(reactContext: ThemedReactContext): TrueSheetContainerView = TrueSheetContainerView(reactContext)
|
|
19
17
|
|
|
20
|
-
override fun updateState(view: TrueSheetContainerView, props: ReactStylesDiffMap?, stateWrapper: StateWrapper?): Any? {
|
|
21
|
-
view.setStateWrapper(stateWrapper)
|
|
22
|
-
return null
|
|
23
|
-
}
|
|
24
|
-
|
|
25
18
|
companion object {
|
|
26
19
|
const val REACT_CLASS = "TrueSheetContainerView"
|
|
27
20
|
}
|
|
@@ -6,6 +6,9 @@ import android.view.ViewStructure
|
|
|
6
6
|
import android.view.accessibility.AccessibilityEvent
|
|
7
7
|
import androidx.annotation.UiThread
|
|
8
8
|
import com.facebook.react.bridge.LifecycleEventListener
|
|
9
|
+
import com.facebook.react.bridge.WritableNativeMap
|
|
10
|
+
import com.facebook.react.uimanager.PixelUtil.pxToDp
|
|
11
|
+
import com.facebook.react.uimanager.StateWrapper
|
|
9
12
|
import com.facebook.react.uimanager.ThemedReactContext
|
|
10
13
|
import com.facebook.react.uimanager.UIManagerHelper
|
|
11
14
|
import com.facebook.react.uimanager.events.EventDispatcher
|
|
@@ -48,6 +51,12 @@ class TrueSheetView(private val reactContext: ThemedReactContext) :
|
|
|
48
51
|
var initialDetentIndex: Int = -1
|
|
49
52
|
var initialDetentAnimated: Boolean = true
|
|
50
53
|
|
|
54
|
+
var stateWrapper: StateWrapper? = null
|
|
55
|
+
|
|
56
|
+
// Track last dimensions to avoid unnecessary state updates
|
|
57
|
+
private var lastContainerWidth: Int = 0
|
|
58
|
+
private var lastContainerHeight: Int = 0
|
|
59
|
+
|
|
51
60
|
/**
|
|
52
61
|
* Tracks if initial presentation has been handled
|
|
53
62
|
*/
|
|
@@ -85,10 +94,6 @@ class TrueSheetView(private val reactContext: ThemedReactContext) :
|
|
|
85
94
|
TrueSheetModule.registerView(this, id)
|
|
86
95
|
}
|
|
87
96
|
|
|
88
|
-
override fun onAttachedToWindow() {
|
|
89
|
-
super.onAttachedToWindow()
|
|
90
|
-
}
|
|
91
|
-
|
|
92
97
|
override fun onDetachedFromWindow() {
|
|
93
98
|
super.onDetachedFromWindow()
|
|
94
99
|
onDropInstance()
|
|
@@ -270,6 +275,10 @@ class TrueSheetView(private val reactContext: ThemedReactContext) :
|
|
|
270
275
|
)
|
|
271
276
|
}
|
|
272
277
|
|
|
278
|
+
override fun viewControllerDidChangeSize(width: Int, height: Int) {
|
|
279
|
+
updateState(width, height)
|
|
280
|
+
}
|
|
281
|
+
|
|
273
282
|
// ==================== Property Setters (forward to controller) ====================
|
|
274
283
|
|
|
275
284
|
fun setMaxHeight(height: Int) {
|
|
@@ -325,6 +334,33 @@ class TrueSheetView(private val reactContext: ThemedReactContext) :
|
|
|
325
334
|
viewController.edgeToEdgeFullScreen = edgeToEdgeFullScreen
|
|
326
335
|
}
|
|
327
336
|
|
|
337
|
+
// ==================== State Management ====================
|
|
338
|
+
|
|
339
|
+
/**
|
|
340
|
+
* Update state with container dimensions.
|
|
341
|
+
* Called when the dialog size changes.
|
|
342
|
+
*/
|
|
343
|
+
fun updateState(width: Int, height: Int) {
|
|
344
|
+
// Skip if dimensions haven't changed
|
|
345
|
+
if (width == lastContainerWidth && height == lastContainerHeight) {
|
|
346
|
+
return
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
// Store new dimensions
|
|
350
|
+
lastContainerWidth = width
|
|
351
|
+
lastContainerHeight = height
|
|
352
|
+
|
|
353
|
+
val sw = stateWrapper ?: return
|
|
354
|
+
|
|
355
|
+
val realWidth = width.toFloat().pxToDp()
|
|
356
|
+
val realHeight = height.toFloat().pxToDp()
|
|
357
|
+
|
|
358
|
+
val newStateData = WritableNativeMap()
|
|
359
|
+
newStateData.putDouble("containerWidth", realWidth.toDouble())
|
|
360
|
+
newStateData.putDouble("containerHeight", realHeight.toDouble())
|
|
361
|
+
sw.updateState(newStateData)
|
|
362
|
+
}
|
|
363
|
+
|
|
328
364
|
/**
|
|
329
365
|
* Presents the sheet at the given detent index.
|
|
330
366
|
*
|
|
@@ -12,7 +12,6 @@ import android.view.accessibility.AccessibilityNodeInfo
|
|
|
12
12
|
import android.widget.FrameLayout
|
|
13
13
|
import androidx.core.view.isNotEmpty
|
|
14
14
|
import com.facebook.react.R
|
|
15
|
-
import com.facebook.react.common.annotations.UnstableReactNativeAPI
|
|
16
15
|
import com.facebook.react.uimanager.JSPointerDispatcher
|
|
17
16
|
import com.facebook.react.uimanager.JSTouchDispatcher
|
|
18
17
|
import com.facebook.react.uimanager.PixelUtil.dpToPx
|
|
@@ -41,6 +40,7 @@ interface TrueSheetViewControllerDelegate {
|
|
|
41
40
|
fun viewControllerDidDragChange(index: Int, position: Float)
|
|
42
41
|
fun viewControllerDidDragEnd(index: Int, position: Float)
|
|
43
42
|
fun viewControllerDidChangePosition(index: Int, position: Float, transitioning: Boolean)
|
|
43
|
+
fun viewControllerDidChangeSize(width: Int, height: Int)
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
/**
|
|
@@ -65,9 +65,6 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
|
|
|
65
65
|
private val jSTouchDispatcher = JSTouchDispatcher(this)
|
|
66
66
|
private var jSPointerDispatcher: JSPointerDispatcher? = null
|
|
67
67
|
|
|
68
|
-
private var viewWidth = 0
|
|
69
|
-
private var viewHeight = 0
|
|
70
|
-
|
|
71
68
|
/**
|
|
72
69
|
* Delegate for handling view controller events
|
|
73
70
|
*/
|
|
@@ -798,16 +795,13 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
|
|
|
798
795
|
|
|
799
796
|
override fun onSizeChanged(w: Int, h: Int, oldw: Int, oldh: Int) {
|
|
800
797
|
super.onSizeChanged(w, h, oldw, oldh)
|
|
801
|
-
viewWidth = w
|
|
802
|
-
viewHeight = h
|
|
803
|
-
|
|
804
|
-
// Update container state with new dimensions
|
|
805
|
-
containerView?.updateState(viewWidth, viewHeight)
|
|
806
798
|
|
|
807
799
|
// Only proceed if size actually changed
|
|
808
800
|
if (w == oldw && h == oldh) return
|
|
809
801
|
|
|
810
|
-
//
|
|
802
|
+
// Notify delegate about size change so host view can update state
|
|
803
|
+
delegate?.viewControllerDidChangeSize(w, h)
|
|
804
|
+
|
|
811
805
|
val oldMaxScreenHeight = maxScreenHeight
|
|
812
806
|
maxScreenHeight = ScreenUtils.getScreenHeight(reactContext, edgeToEdgeEnabled)
|
|
813
807
|
|
|
@@ -860,11 +854,9 @@ class TrueSheetViewController(private val reactContext: ThemedReactContext) :
|
|
|
860
854
|
return super.onHoverEvent(event)
|
|
861
855
|
}
|
|
862
856
|
|
|
863
|
-
@OptIn(UnstableReactNativeAPI::class)
|
|
864
|
-
@Suppress("DEPRECATION")
|
|
865
857
|
override fun onChildStartedNativeGesture(childView: View?, ev: MotionEvent) {
|
|
866
858
|
eventDispatcher?.let { eventDispatcher ->
|
|
867
|
-
jSTouchDispatcher.onChildStartedNativeGesture(ev, eventDispatcher
|
|
859
|
+
jSTouchDispatcher.onChildStartedNativeGesture(ev, eventDispatcher)
|
|
868
860
|
jSPointerDispatcher?.onChildStartedNativeGesture(childView, ev, eventDispatcher)
|
|
869
861
|
}
|
|
870
862
|
}
|
|
@@ -4,6 +4,8 @@ import android.view.WindowManager
|
|
|
4
4
|
import com.facebook.react.bridge.ReadableArray
|
|
5
5
|
import com.facebook.react.module.annotations.ReactModule
|
|
6
6
|
import com.facebook.react.uimanager.PixelUtil.dpToPx
|
|
7
|
+
import com.facebook.react.uimanager.ReactStylesDiffMap
|
|
8
|
+
import com.facebook.react.uimanager.StateWrapper
|
|
7
9
|
import com.facebook.react.uimanager.ThemedReactContext
|
|
8
10
|
import com.facebook.react.uimanager.UIManagerHelper
|
|
9
11
|
import com.facebook.react.uimanager.ViewGroupManager
|
|
@@ -43,6 +45,11 @@ class TrueSheetViewManager :
|
|
|
43
45
|
view.eventDispatcher = dispatcher
|
|
44
46
|
}
|
|
45
47
|
|
|
48
|
+
override fun updateState(view: TrueSheetView, props: ReactStylesDiffMap?, stateWrapper: StateWrapper?): Any? {
|
|
49
|
+
view.stateWrapper = stateWrapper
|
|
50
|
+
return null
|
|
51
|
+
}
|
|
52
|
+
|
|
46
53
|
override fun getDelegate(): ViewManagerDelegate<TrueSheetView> = delegate
|
|
47
54
|
|
|
48
55
|
/**
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
#include <ReactCommon/JavaTurboModule.h>
|
|
4
4
|
#include <ReactCommon/TurboModule.h>
|
|
5
5
|
#include <jsi/jsi.h>
|
|
6
|
-
#include <react/renderer/components/TrueSheetSpec/
|
|
6
|
+
#include <react/renderer/components/TrueSheetSpec/TrueSheetViewComponentDescriptor.h>
|
|
7
7
|
|
|
8
8
|
namespace facebook {
|
|
9
9
|
namespace react {
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
#pragma once
|
|
2
2
|
|
|
3
|
-
#include <react/renderer/components/TrueSheetSpec/
|
|
3
|
+
#include <react/renderer/components/TrueSheetSpec/TrueSheetViewShadowNode.h>
|
|
4
4
|
#include <react/renderer/core/ConcreteComponentDescriptor.h>
|
|
5
5
|
|
|
6
6
|
namespace facebook::react {
|
|
7
7
|
|
|
8
8
|
/*
|
|
9
|
-
* Descriptor for <
|
|
9
|
+
* Descriptor for <TrueSheetView> component.
|
|
10
10
|
*/
|
|
11
|
-
class
|
|
12
|
-
: public ConcreteComponentDescriptor<
|
|
11
|
+
class TrueSheetViewComponentDescriptor final
|
|
12
|
+
: public ConcreteComponentDescriptor<TrueSheetViewShadowNode> {
|
|
13
13
|
using ConcreteComponentDescriptor::ConcreteComponentDescriptor;
|
|
14
14
|
|
|
15
15
|
void adopt(ShadowNode &shadowNode) const override {
|
|
16
16
|
auto &concreteShadowNode =
|
|
17
|
-
static_cast<
|
|
17
|
+
static_cast<TrueSheetViewShadowNode &>(shadowNode);
|
|
18
18
|
concreteShadowNode.adjustLayoutWithState();
|
|
19
19
|
|
|
20
20
|
ConcreteComponentDescriptor::adopt(shadowNode);
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
#include "
|
|
1
|
+
#include "TrueSheetViewShadowNode.h"
|
|
2
2
|
|
|
3
3
|
#include <yoga/style/StyleSizeLength.h>
|
|
4
4
|
|
|
5
5
|
namespace facebook::react {
|
|
6
6
|
|
|
7
|
-
extern const char
|
|
7
|
+
extern const char TrueSheetViewComponentName[] = "TrueSheetView";
|
|
8
8
|
|
|
9
|
-
void
|
|
9
|
+
void TrueSheetViewShadowNode::adjustLayoutWithState() {
|
|
10
10
|
ensureUnsealed();
|
|
11
11
|
|
|
12
12
|
auto state = std::static_pointer_cast<
|
|
13
|
-
const
|
|
13
|
+
const TrueSheetViewShadowNode::ConcreteState>(getState());
|
|
14
14
|
auto stateData = state->getData();
|
|
15
15
|
|
|
16
16
|
// If container dimensions are set from native, override Yoga's dimensions
|
|
@@ -3,22 +3,22 @@
|
|
|
3
3
|
#include <jsi/jsi.h>
|
|
4
4
|
#include <react/renderer/components/TrueSheetSpec/EventEmitters.h>
|
|
5
5
|
#include <react/renderer/components/TrueSheetSpec/Props.h>
|
|
6
|
-
#include <react/renderer/components/TrueSheetSpec/
|
|
6
|
+
#include <react/renderer/components/TrueSheetSpec/TrueSheetViewState.h>
|
|
7
7
|
#include <react/renderer/components/view/ConcreteViewShadowNode.h>
|
|
8
8
|
|
|
9
9
|
namespace facebook::react {
|
|
10
10
|
|
|
11
|
-
JSI_EXPORT extern const char
|
|
11
|
+
JSI_EXPORT extern const char TrueSheetViewComponentName[];
|
|
12
12
|
|
|
13
13
|
/*
|
|
14
|
-
* `ShadowNode` for <
|
|
14
|
+
* `ShadowNode` for <TrueSheetView> component.
|
|
15
15
|
*/
|
|
16
|
-
class JSI_EXPORT
|
|
16
|
+
class JSI_EXPORT TrueSheetViewShadowNode final
|
|
17
17
|
: public ConcreteViewShadowNode<
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
18
|
+
TrueSheetViewComponentName,
|
|
19
|
+
TrueSheetViewProps,
|
|
20
|
+
TrueSheetViewEventEmitter,
|
|
21
|
+
TrueSheetViewState> {
|
|
22
22
|
using ConcreteViewShadowNode::ConcreteViewShadowNode;
|
|
23
23
|
|
|
24
24
|
public:
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
#include "
|
|
1
|
+
#include "TrueSheetViewState.h"
|
|
2
2
|
|
|
3
3
|
namespace facebook::react {
|
|
4
4
|
|
|
5
5
|
#ifdef ANDROID
|
|
6
|
-
folly::dynamic
|
|
6
|
+
folly::dynamic TrueSheetViewState::getDynamic() const {
|
|
7
7
|
return folly::dynamic::object("containerWidth", containerWidth)("containerHeight", containerHeight);
|
|
8
8
|
}
|
|
9
9
|
#endif
|
|
@@ -11,18 +11,18 @@
|
|
|
11
11
|
namespace facebook::react {
|
|
12
12
|
|
|
13
13
|
/*
|
|
14
|
-
* State for <
|
|
14
|
+
* State for <TrueSheetView> component.
|
|
15
15
|
* Contains the container dimensions from native.
|
|
16
16
|
*/
|
|
17
|
-
class
|
|
17
|
+
class TrueSheetViewState final {
|
|
18
18
|
public:
|
|
19
|
-
using Shared = std::shared_ptr<const
|
|
19
|
+
using Shared = std::shared_ptr<const TrueSheetViewState>;
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
TrueSheetViewState() = default;
|
|
22
22
|
|
|
23
23
|
#ifdef ANDROID
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
TrueSheetViewState(
|
|
25
|
+
TrueSheetViewState const &previousState,
|
|
26
26
|
folly::dynamic data)
|
|
27
27
|
: containerWidth(static_cast<float>(data["containerWidth"].getDouble())),
|
|
28
28
|
containerHeight(static_cast<float>(data["containerHeight"].getDouble())) {}
|
|
@@ -9,18 +9,15 @@
|
|
|
9
9
|
#ifdef RCT_NEW_ARCH_ENABLED
|
|
10
10
|
|
|
11
11
|
#import "TrueSheetContainerView.h"
|
|
12
|
+
#import <react/renderer/components/TrueSheetSpec/ComponentDescriptors.h>
|
|
12
13
|
#import <react/renderer/components/TrueSheetSpec/EventEmitters.h>
|
|
13
14
|
#import <react/renderer/components/TrueSheetSpec/Props.h>
|
|
14
15
|
#import <react/renderer/components/TrueSheetSpec/RCTComponentViewHelpers.h>
|
|
15
|
-
#import <react/renderer/components/TrueSheetSpec/TrueSheetContainerViewComponentDescriptor.h>
|
|
16
|
-
#import <react/renderer/components/TrueSheetSpec/TrueSheetContainerViewShadowNode.h>
|
|
17
|
-
#import <react/renderer/components/TrueSheetSpec/TrueSheetContainerViewState.h>
|
|
18
16
|
#import "TrueSheetContentView.h"
|
|
19
17
|
#import "TrueSheetFooterView.h"
|
|
20
18
|
|
|
21
19
|
#import <React/RCTConversions.h>
|
|
22
20
|
#import <React/RCTLog.h>
|
|
23
|
-
#import <react/renderer/core/State.h>
|
|
24
21
|
|
|
25
22
|
using namespace facebook::react;
|
|
26
23
|
|
|
@@ -30,8 +27,6 @@ using namespace facebook::react;
|
|
|
30
27
|
@implementation TrueSheetContainerView {
|
|
31
28
|
TrueSheetContentView *_contentView;
|
|
32
29
|
TrueSheetFooterView *_footerView;
|
|
33
|
-
TrueSheetContainerViewShadowNode::ConcreteState::Shared _state;
|
|
34
|
-
CGFloat _lastContainerWidth;
|
|
35
30
|
}
|
|
36
31
|
|
|
37
32
|
+ (ComponentDescriptorProvider)componentDescriptorProvider {
|
|
@@ -47,7 +42,6 @@ using namespace facebook::react;
|
|
|
47
42
|
|
|
48
43
|
_contentView = nil;
|
|
49
44
|
_footerView = nil;
|
|
50
|
-
_lastContainerWidth = 0;
|
|
51
45
|
}
|
|
52
46
|
return self;
|
|
53
47
|
}
|
|
@@ -61,37 +55,9 @@ using namespace facebook::react;
|
|
|
61
55
|
if (!CGRectEqualToRect(self.frame, parentBounds)) {
|
|
62
56
|
self.frame = parentBounds;
|
|
63
57
|
}
|
|
64
|
-
|
|
65
|
-
// Update state with container width so Yoga can use it for children layout
|
|
66
|
-
[self updateStateIfNeeded];
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
- (void)updateStateIfNeeded {
|
|
71
|
-
if (!self.superview) {
|
|
72
|
-
return;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
CGFloat containerWidth = self.superview.bounds.size.width;
|
|
76
|
-
if (containerWidth > 0 && fabs(containerWidth - _lastContainerWidth) > 0.5) {
|
|
77
|
-
_lastContainerWidth = containerWidth;
|
|
78
|
-
[self updateState];
|
|
79
58
|
}
|
|
80
59
|
}
|
|
81
60
|
|
|
82
|
-
- (void)updateState {
|
|
83
|
-
if (!_state) {
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
_state->updateState([=](TrueSheetContainerViewShadowNode::ConcreteState::Data const &oldData)
|
|
88
|
-
-> TrueSheetContainerViewShadowNode::ConcreteState::SharedData {
|
|
89
|
-
auto newData = oldData;
|
|
90
|
-
newData.containerWidth = static_cast<float>(_lastContainerWidth);
|
|
91
|
-
return std::make_shared<TrueSheetContainerViewShadowNode::ConcreteState::Data const>(newData);
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
|
|
95
61
|
- (CGFloat)contentHeight {
|
|
96
62
|
return _contentView ? _contentView.frame.size.height : 0;
|
|
97
63
|
}
|
|
@@ -153,19 +119,6 @@ using namespace facebook::react;
|
|
|
153
119
|
[super updateProps:props oldProps:oldProps];
|
|
154
120
|
}
|
|
155
121
|
|
|
156
|
-
- (void)updateState:(const State::Shared &)state oldState:(const State::Shared &)oldState {
|
|
157
|
-
_state = std::static_pointer_cast<TrueSheetContainerViewShadowNode::ConcreteState const>(state);
|
|
158
|
-
|
|
159
|
-
// Reset last width when state is updated to ensure we push the correct width
|
|
160
|
-
// This handles re-presentation of the sheet where state is recreated
|
|
161
|
-
_lastContainerWidth = 0;
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
- (void)finalizeUpdates:(RNComponentViewUpdateMask)updateMask {
|
|
165
|
-
[super finalizeUpdates:updateMask];
|
|
166
|
-
[self updateStateIfNeeded];
|
|
167
|
-
}
|
|
168
|
-
|
|
169
122
|
#pragma mark - TrueSheetContentViewDelegate
|
|
170
123
|
|
|
171
124
|
- (void)contentViewDidChangeSize:(CGSize)newSize {
|
package/ios/TrueSheetView.mm
CHANGED
|
@@ -27,16 +27,19 @@
|
|
|
27
27
|
#import "utils/LayoutUtil.h"
|
|
28
28
|
#import "utils/WindowUtil.h"
|
|
29
29
|
|
|
30
|
-
#import <react/renderer/components/TrueSheetSpec/ComponentDescriptors.h>
|
|
31
30
|
#import <react/renderer/components/TrueSheetSpec/EventEmitters.h>
|
|
32
31
|
#import <react/renderer/components/TrueSheetSpec/Props.h>
|
|
33
32
|
#import <react/renderer/components/TrueSheetSpec/RCTComponentViewHelpers.h>
|
|
33
|
+
#import <react/renderer/components/TrueSheetSpec/TrueSheetViewComponentDescriptor.h>
|
|
34
|
+
#import <react/renderer/components/TrueSheetSpec/TrueSheetViewShadowNode.h>
|
|
35
|
+
#import <react/renderer/components/TrueSheetSpec/TrueSheetViewState.h>
|
|
34
36
|
|
|
35
37
|
#import <React/RCTConversions.h>
|
|
36
38
|
#import <React/RCTFabricComponentsPlugins.h>
|
|
37
39
|
#import <React/RCTLog.h>
|
|
38
40
|
#import <React/RCTSurfaceTouchHandler.h>
|
|
39
41
|
#import <React/RCTUtils.h>
|
|
42
|
+
#import <react/renderer/core/State.h>
|
|
40
43
|
|
|
41
44
|
using namespace facebook::react;
|
|
42
45
|
|
|
@@ -47,6 +50,8 @@ using namespace facebook::react;
|
|
|
47
50
|
TrueSheetContainerView *_containerView;
|
|
48
51
|
TrueSheetViewController *_controller;
|
|
49
52
|
RCTSurfaceTouchHandler *_touchHandler;
|
|
53
|
+
TrueSheetViewShadowNode::ConcreteState::Shared _state;
|
|
54
|
+
CGFloat _lastContainerWidth;
|
|
50
55
|
NSInteger _initialDetentIndex;
|
|
51
56
|
BOOL _fitScrollView;
|
|
52
57
|
BOOL _initialDetentAnimated;
|
|
@@ -66,6 +71,7 @@ using namespace facebook::react;
|
|
|
66
71
|
|
|
67
72
|
_containerView = nil;
|
|
68
73
|
|
|
74
|
+
_lastContainerWidth = 0;
|
|
69
75
|
_initialDetentIndex = -1;
|
|
70
76
|
_initialDetentAnimated = YES;
|
|
71
77
|
_fitScrollView = NO;
|
|
@@ -238,6 +244,35 @@ using namespace facebook::react;
|
|
|
238
244
|
_fitScrollView = newProps.fitScrollView;
|
|
239
245
|
}
|
|
240
246
|
|
|
247
|
+
- (void)updateState:(const State::Shared &)state oldState:(const State::Shared &)oldState {
|
|
248
|
+
_state = std::static_pointer_cast<TrueSheetViewShadowNode::ConcreteState const>(state);
|
|
249
|
+
[self updateStateIfNeeded];
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
- (void)updateStateIfNeeded {
|
|
253
|
+
if (!_state) {
|
|
254
|
+
return;
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
CGFloat containerWidth = _controller.view.bounds.size.width;
|
|
258
|
+
|
|
259
|
+
if (containerWidth <= 0) {
|
|
260
|
+
return;
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
BOOL widthChanged = fabs(containerWidth - _lastContainerWidth) > 0.5;
|
|
264
|
+
|
|
265
|
+
if (widthChanged) {
|
|
266
|
+
_lastContainerWidth = containerWidth;
|
|
267
|
+
_state->updateState([=](TrueSheetViewShadowNode::ConcreteState::Data const &oldData)
|
|
268
|
+
-> TrueSheetViewShadowNode::ConcreteState::SharedData {
|
|
269
|
+
auto newData = oldData;
|
|
270
|
+
newData.containerWidth = static_cast<float>(containerWidth);
|
|
271
|
+
return std::make_shared<TrueSheetViewShadowNode::ConcreteState::Data const>(newData);
|
|
272
|
+
});
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
|
|
241
276
|
- (void)finalizeUpdates:(RNComponentViewUpdateMask)updateMask {
|
|
242
277
|
[super finalizeUpdates:updateMask];
|
|
243
278
|
|
|
@@ -292,10 +327,6 @@ using namespace facebook::react;
|
|
|
292
327
|
// Ensure container is above background view
|
|
293
328
|
[_controller.view bringSubviewToFront:_containerView];
|
|
294
329
|
|
|
295
|
-
// Force layout pass immediately so container gets correct width on mount
|
|
296
|
-
// This pushes the width to Yoga before the sheet is presented
|
|
297
|
-
[_controller.view layoutIfNeeded];
|
|
298
|
-
|
|
299
330
|
// Get initial content height from container
|
|
300
331
|
CGFloat contentHeight = [_containerView contentHeight];
|
|
301
332
|
if (contentHeight > 0) {
|
|
@@ -421,6 +452,10 @@ using namespace facebook::react;
|
|
|
421
452
|
[OnPositionChangeEvent emit:_eventEmitter index:index position:position transitioning:transitioning];
|
|
422
453
|
}
|
|
423
454
|
|
|
455
|
+
- (void)viewControllerDidChangeSize:(CGSize)size {
|
|
456
|
+
[self updateStateIfNeeded];
|
|
457
|
+
}
|
|
458
|
+
|
|
424
459
|
#pragma mark - Private Helpers
|
|
425
460
|
|
|
426
461
|
- (UIViewController *)findPresentingViewController {
|
|
@@ -26,6 +26,7 @@ NS_ASSUME_NONNULL_BEGIN
|
|
|
26
26
|
- (void)viewControllerDidChangeDetent:(NSInteger)index position:(CGFloat)position;
|
|
27
27
|
- (void)viewControllerDidDrag:(UIGestureRecognizerState)state index:(NSInteger)index position:(CGFloat)position;
|
|
28
28
|
- (void)viewControllerDidChangePosition:(NSInteger)index position:(CGFloat)position transitioning:(BOOL)transitioning;
|
|
29
|
+
- (void)viewControllerDidChangeSize:(CGSize)size;
|
|
29
30
|
|
|
30
31
|
@end
|
|
31
32
|
|
|
@@ -164,6 +164,11 @@
|
|
|
164
164
|
completion:^(id<UIViewControllerTransitionCoordinatorContext> context) {
|
|
165
165
|
// After rotation completes
|
|
166
166
|
[self setupSheetDetents];
|
|
167
|
+
|
|
168
|
+
// Notify delegate of size change for state update
|
|
169
|
+
if ([self.delegate respondsToSelector:@selector(viewControllerDidChangeSize:)]) {
|
|
170
|
+
[self.delegate viewControllerDidChangeSize:size];
|
|
171
|
+
}
|
|
167
172
|
}];
|
|
168
173
|
}
|
|
169
174
|
|
package/lib/module/TrueSheet.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["PureComponent","createRef","isValidElement","createElement","TrueSheetViewNativeComponent","TrueSheetContainerViewNativeComponent","TrueSheetContentViewNativeComponent","TrueSheetFooterViewNativeComponent","TrueSheetModule","Platform","processColor","StyleSheet","findNodeHandle","jsx","_jsx","jsxs","_jsxs","LINKING_ERROR","select","ios","default","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","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","grabber","dimmed","initialDetentAnimated","keyboardMode","dimmedDetentIndex","blurTint","cornerRadius","maxHeight","edgeToEdgeFullScreen","fitScrollView","pageSizing","children","style","footer","testID","resolvedDetents","slice","map","ref","styles","sheetView","background","collapsable","create","position","width","zIndex","left","right"],"sourceRoot":"../../src","sources":["TrueSheet.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["PureComponent","createRef","isValidElement","createElement","TrueSheetViewNativeComponent","TrueSheetContainerViewNativeComponent","TrueSheetContentViewNativeComponent","TrueSheetFooterViewNativeComponent","TrueSheetModule","Platform","processColor","StyleSheet","findNodeHandle","jsx","_jsx","jsxs","_jsxs","LINKING_ERROR","select","ios","default","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","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","grabber","dimmed","initialDetentAnimated","keyboardMode","dimmedDetentIndex","blurTint","cornerRadius","maxHeight","edgeToEdgeFullScreen","fitScrollView","pageSizing","children","style","footer","testID","resolvedDetents","slice","map","ref","styles","sheetView","background","collapsable","create","position","zIndex","left","right"],"sourceRoot":"../../src","sources":["TrueSheet.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,6 +5,4 @@ export interface NativeProps extends ViewProps {
|
|
|
5
5
|
// No props needed - container accesses props from parent TrueSheetView
|
|
6
6
|
}
|
|
7
7
|
|
|
8
|
-
export default codegenNativeComponent<NativeProps>('TrueSheetContainerView'
|
|
9
|
-
interfaceOnly: true,
|
|
10
|
-
});
|
|
8
|
+
export default codegenNativeComponent<NativeProps>('TrueSheetContainerView');
|
|
@@ -56,4 +56,6 @@ export interface NativeProps extends ViewProps {
|
|
|
56
56
|
onPositionChange?: DirectEventHandler<PositionChangeEventPayload>;
|
|
57
57
|
}
|
|
58
58
|
|
|
59
|
-
export default codegenNativeComponent<NativeProps>('TrueSheetView'
|
|
59
|
+
export default codegenNativeComponent<NativeProps>('TrueSheetView', {
|
|
60
|
+
interfaceOnly: true,
|
|
61
|
+
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TrueSheetContainerViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../../src/fabric/TrueSheetContainerViewNativeComponent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,MAAM,WAAW,WAAY,SAAQ,SAAS;CAE7C;;AAED,
|
|
1
|
+
{"version":3,"file":"TrueSheetContainerViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../../src/fabric/TrueSheetContainerViewNativeComponent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,MAAM,WAAW,WAAY,SAAQ,SAAS;CAE7C;;AAED,wBAA6E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TrueSheetViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../../src/fabric/TrueSheetViewNativeComponent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EACV,kBAAkB,EAClB,MAAM,EACN,KAAK,EACL,WAAW,EACX,KAAK,EACN,MAAM,2CAA2C,CAAC;AAGnD,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,WAAY,SAAQ,SAAS;IAE5C,OAAO,CAAC,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IAG/B,SAAS,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACnC,UAAU,CAAC,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACnC,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IACvC,kBAAkB,CAAC,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5C,iBAAiB,CAAC,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAG1C,QAAQ,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACnC,YAAY,CAAC,EAAE,WAAW,CAAC,QAAQ,GAAG,KAAK,EAAE,QAAQ,CAAC,CAAC;IAGvD,OAAO,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACrC,WAAW,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACzC,MAAM,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACpC,qBAAqB,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACnD,oBAAoB,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACnD,aAAa,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC5C,UAAU,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAGxC,OAAO,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACnC,aAAa,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IAC3D,YAAY,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IAC1D,aAAa,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACzC,YAAY,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACxC,cAAc,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IAC5D,WAAW,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IACzD,YAAY,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IAC1D,SAAS,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IACvD,gBAAgB,CAAC,EAAE,kBAAkB,CAAC,0BAA0B,CAAC,CAAC;CACnE;;AAED,
|
|
1
|
+
{"version":3,"file":"TrueSheetViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../../src/fabric/TrueSheetViewNativeComponent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EACV,kBAAkB,EAClB,MAAM,EACN,KAAK,EACL,WAAW,EACX,KAAK,EACN,MAAM,2CAA2C,CAAC;AAGnD,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,WAAY,SAAQ,SAAS;IAE5C,OAAO,CAAC,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IAG/B,SAAS,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACnC,UAAU,CAAC,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACnC,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IACvC,kBAAkB,CAAC,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5C,iBAAiB,CAAC,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAG1C,QAAQ,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACnC,YAAY,CAAC,EAAE,WAAW,CAAC,QAAQ,GAAG,KAAK,EAAE,QAAQ,CAAC,CAAC;IAGvD,OAAO,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACrC,WAAW,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACzC,MAAM,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACpC,qBAAqB,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACnD,oBAAoB,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACnD,aAAa,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC5C,UAAU,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAGxC,OAAO,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACnC,aAAa,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IAC3D,YAAY,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IAC1D,aAAa,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACzC,YAAY,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACxC,cAAc,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IAC5D,WAAW,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IACzD,YAAY,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IAC1D,SAAS,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IACvD,gBAAgB,CAAC,EAAE,kBAAkB,CAAC,0BAA0B,CAAC,CAAC;CACnE;;AAED,wBAEG"}
|
package/package.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lodev09/react-native-true-sheet",
|
|
3
|
-
"version": "3.0.0-beta.
|
|
3
|
+
"version": "3.0.0-beta.7",
|
|
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",
|
|
7
7
|
"types": "./lib/typescript/src/index.d.ts",
|
|
8
8
|
"exports": {
|
|
9
9
|
".": {
|
|
10
|
-
"source": "./src/index.
|
|
10
|
+
"source": "./src/index.ts",
|
|
11
11
|
"types": "./lib/typescript/src/index.d.ts",
|
|
12
12
|
"default": "./lib/module/index.js"
|
|
13
13
|
},
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"typecheck": "tsc",
|
|
39
39
|
"lint": "eslint --fix \"**/*.{ts,tsx}\"",
|
|
40
40
|
"format": "prettier --write \"**/*.{ts,tsx}\"",
|
|
41
|
-
"tidy": "yarn typecheck && yarn lint && yarn format && scripts/
|
|
41
|
+
"tidy": "yarn typecheck && yarn lint && yarn format && scripts/objclint.sh && scripts/ktlint.sh",
|
|
42
42
|
"clean": "scripts/clean.sh",
|
|
43
43
|
"prepare": "bob build",
|
|
44
44
|
"release": "yarn tidy && release-it --only-version",
|
package/react-native.config.js
CHANGED
package/src/TrueSheet.tsx
CHANGED
|
@@ -5,6 +5,4 @@ export interface NativeProps extends ViewProps {
|
|
|
5
5
|
// No props needed - container accesses props from parent TrueSheetView
|
|
6
6
|
}
|
|
7
7
|
|
|
8
|
-
export default codegenNativeComponent<NativeProps>('TrueSheetContainerView'
|
|
9
|
-
interfaceOnly: true,
|
|
10
|
-
});
|
|
8
|
+
export default codegenNativeComponent<NativeProps>('TrueSheetContainerView');
|
|
@@ -56,4 +56,6 @@ export interface NativeProps extends ViewProps {
|
|
|
56
56
|
onPositionChange?: DirectEventHandler<PositionChangeEventPayload>;
|
|
57
57
|
}
|
|
58
58
|
|
|
59
|
-
export default codegenNativeComponent<NativeProps>('TrueSheetView'
|
|
59
|
+
export default codegenNativeComponent<NativeProps>('TrueSheetView', {
|
|
60
|
+
interfaceOnly: true,
|
|
61
|
+
});
|