@lodev09/react-native-true-sheet 0.9.7 → 0.9.9

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.
@@ -13,7 +13,7 @@ import com.facebook.react.uimanager.events.EventDispatcher
13
13
  import com.google.android.material.bottomsheet.BottomSheetBehavior
14
14
  import com.lodev09.truesheet.core.DismissEvent
15
15
  import com.lodev09.truesheet.core.PresentEvent
16
- import com.lodev09.truesheet.core.RootViewGroup
16
+ import com.lodev09.truesheet.core.RootSheetView
17
17
  import com.lodev09.truesheet.core.SizeChangeEvent
18
18
 
19
19
  class TrueSheetView(context: Context) :
@@ -47,15 +47,10 @@ class TrueSheetView(context: Context) :
47
47
  */
48
48
  private val sheetDialog: TrueSheetDialog
49
49
 
50
- /**
51
- * The custom BottomSheetDialogBehavior instance.
52
- */
53
- private val sheetBehavior: TrueSheetBehavior
54
-
55
50
  /**
56
51
  * React root view placeholder.
57
52
  */
58
- private val sheetRootView: RootViewGroup
53
+ private val rootSheetView: RootSheetView
59
54
 
60
55
  /**
61
56
  * 1st child of the container view.
@@ -71,11 +66,10 @@ class TrueSheetView(context: Context) :
71
66
  reactContext.addLifecycleEventListener(this)
72
67
  eventDispatcher = UIManagerHelper.getEventDispatcherForReactTag(reactContext, id)
73
68
 
74
- sheetRootView = RootViewGroup(context)
75
- sheetRootView.eventDispatcher = eventDispatcher
69
+ rootSheetView = RootSheetView(context)
70
+ rootSheetView.eventDispatcher = eventDispatcher
76
71
 
77
- sheetBehavior = TrueSheetBehavior(reactContext)
78
- sheetDialog = TrueSheetDialog(reactContext, sheetBehavior, sheetRootView)
72
+ sheetDialog = TrueSheetDialog(reactContext, rootSheetView)
79
73
 
80
74
  // Configure Sheet Dialog
81
75
  sheetDialog.apply {
@@ -84,10 +78,8 @@ class TrueSheetView(context: Context) :
84
78
  registerKeyboardManager()
85
79
 
86
80
  // Initialize footer y
87
- footerView?.apply {
88
- UiThreadUtil.runOnUiThread {
89
- y = (sheetBehavior.maxScreenHeight - sheetView.top - height).toFloat()
90
- }
81
+ UiThreadUtil.runOnUiThread {
82
+ positionFooter()
91
83
  }
92
84
 
93
85
  presentPromise?.let { promise ->
@@ -96,12 +88,13 @@ class TrueSheetView(context: Context) :
96
88
  }
97
89
 
98
90
  // dispatch onPresent event
99
- eventDispatcher?.dispatchEvent(PresentEvent(surfaceId, id, sheetBehavior.getSizeInfoForIndex(activeIndex)))
91
+ eventDispatcher?.dispatchEvent(PresentEvent(surfaceId, id, sheetDialog.getSizeInfoForIndex(activeIndex)))
100
92
  }
101
93
 
102
94
  // Setup listener when the dialog has been dismissed.
103
95
  setOnDismissListener {
104
96
  unregisterKeyboardManager()
97
+
105
98
  dismissPromise?.let { promise ->
106
99
  promise()
107
100
  dismissPromise = null
@@ -113,8 +106,8 @@ class TrueSheetView(context: Context) :
113
106
  }
114
107
 
115
108
  // Configure sheet behavior events
116
- sheetBehavior.apply {
117
- addBottomSheetCallback(
109
+ sheetDialog.apply {
110
+ behavior.addBottomSheetCallback(
118
111
  object : BottomSheetBehavior.BottomSheetCallback() {
119
112
  override fun onSlide(sheetView: View, slideOffset: Float) {
120
113
  footerView?.let {
@@ -128,24 +121,18 @@ class TrueSheetView(context: Context) :
128
121
  }
129
122
 
130
123
  override fun onStateChanged(view: View, newState: Int) {
131
- when (newState) {
132
- BottomSheetBehavior.STATE_HIDDEN -> sheetDialog.dismiss()
133
-
134
- else -> {
135
- val sizeInfo = getSizeInfoForState(newState)
136
- if (sizeInfo != null && sizeInfo.index != activeIndex) {
137
- // Invoke promise when sheet resized programmatically
138
- presentPromise?.let { promise ->
139
- promise()
140
- presentPromise = null
141
- }
142
-
143
- activeIndex = sizeInfo.index
144
-
145
- // dispatch onSizeChange event
146
- eventDispatcher?.dispatchEvent(SizeChangeEvent(surfaceId, id, sizeInfo))
147
- }
124
+ val sizeInfo = getSizeInfoForState(newState)
125
+ if (sizeInfo != null && sizeInfo.index != activeIndex) {
126
+ // Invoke promise when sheet resized programmatically
127
+ presentPromise?.let { promise ->
128
+ promise()
129
+ presentPromise = null
148
130
  }
131
+
132
+ activeIndex = sizeInfo.index
133
+
134
+ // dispatch onSizeChange event
135
+ eventDispatcher?.dispatchEvent(SizeChangeEvent(surfaceId, id, sizeInfo))
149
136
  }
150
137
  }
151
138
  }
@@ -154,7 +141,7 @@ class TrueSheetView(context: Context) :
154
141
  }
155
142
 
156
143
  override fun dispatchProvideStructure(structure: ViewStructure) {
157
- sheetRootView.dispatchProvideStructure(structure)
144
+ rootSheetView.dispatchProvideStructure(structure)
158
145
  }
159
146
 
160
147
  override fun onLayout(
@@ -181,29 +168,29 @@ class TrueSheetView(context: Context) :
181
168
  contentView = it.getChildAt(0) as ViewGroup
182
169
  footerView = it.getChildAt(1) as ViewGroup
183
170
 
184
- sheetBehavior.contentView = contentView
185
- sheetBehavior.footerView = footerView
171
+ sheetDialog.contentView = contentView
172
+ sheetDialog.footerView = footerView
186
173
 
187
174
  // rootView's first child is the Container View
188
- sheetRootView.addView(it, index)
175
+ rootSheetView.addView(it, index)
189
176
  }
190
177
  }
191
178
 
192
179
  override fun getChildCount(): Int {
193
180
  // This method may be called by the parent constructor
194
181
  // before rootView is initialized.
195
- return sheetRootView.childCount
182
+ return rootSheetView.childCount
196
183
  }
197
184
 
198
- override fun getChildAt(index: Int): View = sheetRootView.getChildAt(index)
185
+ override fun getChildAt(index: Int): View = rootSheetView.getChildAt(index)
199
186
 
200
187
  override fun removeView(child: View) {
201
- sheetRootView.removeView(child)
188
+ rootSheetView.removeView(child)
202
189
  }
203
190
 
204
191
  override fun removeViewAt(index: Int) {
205
192
  val child = getChildAt(index)
206
- sheetRootView.removeView(child)
193
+ rootSheetView.removeView(child)
207
194
  }
208
195
 
209
196
  override fun addChildrenForAccessibility(outChildren: ArrayList<View>) {
@@ -231,19 +218,28 @@ class TrueSheetView(context: Context) :
231
218
  sheetDialog.dismiss()
232
219
  }
233
220
 
221
+ private fun configureIfPresented() {
222
+ if (sheetDialog.isShowing) {
223
+ UiThreadUtil.runOnUiThread {
224
+ sheetDialog.configure()
225
+ sheetDialog.positionFooter()
226
+ }
227
+ }
228
+ }
229
+
234
230
  fun setMaxHeight(height: Int) {
235
- sheetBehavior.maxSheetHeight = height
236
- sheetBehavior.configure()
231
+ sheetDialog.maxSheetHeight = height
232
+ configureIfPresented()
237
233
  }
238
234
 
239
235
  fun setDismissible(dismissible: Boolean) {
240
- sheetBehavior.isHideable = dismissible
236
+ sheetDialog.behavior.isHideable = dismissible
241
237
  sheetDialog.setCancelable(dismissible)
242
238
  }
243
239
 
244
240
  fun setSizes(newSizes: Array<Any>) {
245
- sheetBehavior.sizes = newSizes
246
- sheetBehavior.configure()
241
+ sheetDialog.sizes = newSizes
242
+ configureIfPresented()
247
243
  }
248
244
 
249
245
  /**
@@ -15,8 +15,8 @@ import com.facebook.react.uimanager.events.EventDispatcher
15
15
  import com.facebook.react.views.view.ReactViewGroup
16
16
 
17
17
  /**
18
- * RootViewGroup is the ViewGroup which contains all the children of a Modal. It gets all
19
- * child information forwarded from ReactModalHostView and uses that to create children. It is
18
+ * RootSheetView is the ViewGroup which contains all the children of a Modal. It gets all
19
+ * child information forwarded from TrueSheetView and uses that to create children. It is
20
20
  * also responsible for acting as a RootView and handling touch events. It does this the same way
21
21
  * as ReactRootView.
22
22
  *
@@ -26,7 +26,7 @@ import com.facebook.react.views.view.ReactViewGroup
26
26
  * styleHeight on the LayoutShadowNode to be the window size. This is done through the
27
27
  * UIManagerModule, and will then cause the children to layout as if they can fill the window.
28
28
  */
29
- class RootViewGroup(context: Context?) :
29
+ class RootSheetView(context: Context?) :
30
30
  ReactViewGroup(context),
31
31
  RootView {
32
32
  private var hasAdjustedSize = false
@@ -34,7 +34,6 @@ class RootViewGroup(context: Context?) :
34
34
  private var viewHeight = 0
35
35
 
36
36
  private val mJSTouchDispatcher = JSTouchDispatcher(this)
37
-
38
37
  private var mJSPointerDispatcher: JSPointerDispatcher? = null
39
38
 
40
39
  var eventDispatcher: EventDispatcher? = null
@@ -134,8 +133,4 @@ class RootViewGroup(context: Context?) :
134
133
  // No-op - override in order to still receive events to onInterceptTouchEvent
135
134
  // even when some other view disallow that
136
135
  }
137
-
138
- companion object {
139
- const val TAG = "TrueSheetView"
140
- }
141
136
  }
@@ -299,9 +299,6 @@ class TrueSheetView: UIView, RCTInvalidating, TrueSheetViewControllerDelegate {
299
299
  return
300
300
  }
301
301
 
302
- // Dismiss the keyboard
303
- contentView?.endEditing(true)
304
-
305
302
  viewController.dismiss(animated: true) {
306
303
  promise.resolve(nil)
307
304
  }
@@ -8,20 +8,25 @@ var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  var _TrueSheetModule = require("./TrueSheetModule");
10
10
  var _TrueSheetGrabber = require("./TrueSheetGrabber");
11
+ var _TrueSheetFooter = require("./TrueSheetFooter");
11
12
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
12
13
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
13
14
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
15
+ const NATIVE_COMPONENT_NAME = 'TrueSheetView';
14
16
  const LINKING_ERROR = `The package '@lodev09/react-native-true-sheet' doesn't seem to be linked. Make sure: \n\n` + _reactNative.Platform.select({
15
17
  ios: "- You have run 'pod install'\n",
16
18
  default: ''
17
19
  }) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n';
18
- const ComponentName = 'TrueSheetView';
19
- const TrueSheetNativeView = (0, _reactNative.requireNativeComponent)(ComponentName);
20
+ const TrueSheetNativeView = (0, _reactNative.requireNativeComponent)(NATIVE_COMPONENT_NAME);
20
21
  if (!TrueSheetNativeView) {
21
22
  throw new Error(LINKING_ERROR);
22
23
  }
23
24
  class TrueSheet extends _react.PureComponent {
24
25
  displayName = 'TrueSheet';
26
+ /**
27
+ * Map of sheet names against their handle.
28
+ */
29
+ static handles = {};
25
30
  constructor(props) {
26
31
  super(props);
27
32
  this.ref = /*#__PURE__*/(0, _react.createRef)();
@@ -32,15 +37,54 @@ class TrueSheet extends _react.PureComponent {
32
37
  scrollableHandle: null
33
38
  };
34
39
  }
40
+ static getHandle(name) {
41
+ const handle = TrueSheet.handles[name];
42
+ if (!handle) {
43
+ console.warn(`Could not get native view tag from "${name}". Check your name prop.`);
44
+ return;
45
+ }
46
+ return handle;
47
+ }
48
+
49
+ /**
50
+ * Present the sheet by given `name`.
51
+ * See `name` prop.
52
+ */
53
+ static async present(name, index = 0) {
54
+ const handle = TrueSheet.getHandle(name);
55
+ if (!handle) return;
56
+ await _TrueSheetModule.TrueSheetModule.present(handle, index);
57
+ }
58
+
59
+ /**
60
+ * Dismiss the sheet by given `name`.
61
+ * See `name` prop.
62
+ */
63
+ static async dismiss(name) {
64
+ const handle = TrueSheet.getHandle(name);
65
+ if (!handle) return;
66
+ await _TrueSheetModule.TrueSheetModule.dismiss(handle);
67
+ }
68
+
69
+ /**
70
+ * Resize the sheet by given `name`.
71
+ * See `name` prop.
72
+ */
73
+ static async resize(name, index) {
74
+ await TrueSheet.present(name, index);
75
+ }
35
76
  get handle() {
36
77
  const nodeHandle = (0, _reactNative.findNodeHandle)(this.ref.current);
37
78
  if (nodeHandle == null || nodeHandle === -1) {
38
- throw new Error(`Could not get native view tag`);
79
+ throw new Error('Could not get native view tag');
39
80
  }
40
81
  return nodeHandle;
41
82
  }
42
83
  updateState() {
43
84
  const scrollableHandle = this.props.scrollRef?.current ? (0, _reactNative.findNodeHandle)(this.props.scrollRef.current) : null;
85
+ if (this.props.name) {
86
+ TrueSheet.handles[this.props.name] = this.handle;
87
+ }
44
88
  this.setState({
45
89
  scrollableHandle
46
90
  });
@@ -54,18 +98,9 @@ class TrueSheet extends _react.PureComponent {
54
98
  onDismiss() {
55
99
  this.props.onDismiss?.();
56
100
  }
57
- componentDidMount() {
58
- if (this.props.sizes && this.props.sizes.length > 3) {
59
- console.warn('TrueSheet only supports a maximum of 3 sizes; collapsed, half-expanded and expanded. Check your `sizes` prop.');
60
- }
61
- this.updateState();
62
- }
63
- componentDidUpdate() {
64
- this.updateState();
65
- }
66
101
 
67
102
  /**
68
- * Present the modal sheet. Optionally accepts a size `index`.
103
+ * Present the sheet. Optionally accepts a size `index`.
69
104
  * See `sizes` prop
70
105
  */
71
106
  async present(index = 0) {
@@ -86,6 +121,15 @@ class TrueSheet extends _react.PureComponent {
86
121
  async dismiss() {
87
122
  await _TrueSheetModule.TrueSheetModule.dismiss(this.handle);
88
123
  }
124
+ componentDidMount() {
125
+ if (this.props.sizes && this.props.sizes.length > 3) {
126
+ console.warn('TrueSheet only supports a maximum of 3 sizes; collapsed, half-expanded and expanded. Check your `sizes` prop.');
127
+ }
128
+ this.updateState();
129
+ }
130
+ componentDidUpdate() {
131
+ this.updateState();
132
+ }
89
133
  render() {
90
134
  const {
91
135
  sizes = ['medium', 'large'],
@@ -135,24 +179,14 @@ class TrueSheet extends _react.PureComponent {
135
179
  style: contentContainerStyle
136
180
  }, children), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
137
181
  collapsable: false
138
- }, /*#__PURE__*/_react.default.createElement(TrueSheetFooter, {
139
- FooterComponent: FooterComponent
182
+ }, /*#__PURE__*/_react.default.createElement(_TrueSheetFooter.TrueSheetFooter, {
183
+ Component: FooterComponent
140
184
  })), _reactNative.Platform.OS === 'android' && /*#__PURE__*/_react.default.createElement(_TrueSheetGrabber.TrueSheetGrabber, _extends({
141
185
  visible: grabber
142
186
  }, grabberProps))));
143
187
  }
144
188
  }
145
189
  exports.TrueSheet = TrueSheet;
146
- const TrueSheetFooter = props => {
147
- const {
148
- FooterComponent
149
- } = props;
150
- if (!FooterComponent) return null;
151
- if (typeof FooterComponent !== 'function') {
152
- return FooterComponent;
153
- }
154
- return /*#__PURE__*/_react.default.createElement(FooterComponent, null);
155
- };
156
190
  const $nativeSheet = {
157
191
  position: 'absolute',
158
192
  left: -9999,
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_TrueSheetModule","_TrueSheetGrabber","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","LINKING_ERROR","Platform","select","ios","ComponentName","TrueSheetNativeView","requireNativeComponent","Error","TrueSheet","PureComponent","displayName","constructor","props","ref","createRef","onDismiss","onPresent","onSizeChange","state","scrollableHandle","handle","nodeHandle","findNodeHandle","current","updateState","scrollRef","setState","event","nativeEvent","componentDidMount","sizes","console","warn","componentDidUpdate","present","index","TrueSheetModule","resize","dismiss","render","backgroundColor","dismissible","grabber","grabberProps","blurTint","cornerRadius","maxHeight","FooterComponent","style","contentContainerStyle","children","rest","createElement","$nativeSheet","View","collapsable","overflow","undefined","android","borderTopLeftRadius","borderTopRightRadius","TrueSheetFooter","OS","TrueSheetGrabber","visible","exports","position","left","zIndex"],"sourceRoot":"../../src","sources":["TrueSheet.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_TrueSheetModule","_TrueSheetGrabber","_TrueSheetFooter","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","NATIVE_COMPONENT_NAME","LINKING_ERROR","Platform","select","ios","TrueSheetNativeView","requireNativeComponent","Error","TrueSheet","PureComponent","displayName","handles","constructor","props","ref","createRef","onDismiss","onPresent","onSizeChange","state","scrollableHandle","getHandle","name","handle","console","warn","present","index","TrueSheetModule","dismiss","resize","nodeHandle","findNodeHandle","current","updateState","scrollRef","setState","event","nativeEvent","componentDidMount","sizes","componentDidUpdate","render","backgroundColor","dismissible","grabber","grabberProps","blurTint","cornerRadius","maxHeight","FooterComponent","style","contentContainerStyle","children","rest","createElement","$nativeSheet","View","collapsable","overflow","undefined","android","borderTopLeftRadius","borderTopRightRadius","TrueSheetFooter","Component","OS","TrueSheetGrabber","visible","exports","position","left","zIndex"],"sourceRoot":"../../src","sources":["TrueSheet.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.TrueSheetFooter = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ const TrueSheetFooter = props => {
10
+ const {
11
+ Component
12
+ } = props;
13
+ if (!Component) return null;
14
+ if (typeof Component !== 'function') {
15
+ return Component;
16
+ }
17
+ return /*#__PURE__*/_react.default.createElement(Component, null);
18
+ };
19
+ exports.TrueSheetFooter = TrueSheetFooter;
20
+ //# sourceMappingURL=TrueSheetFooter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","obj","__esModule","default","TrueSheetFooter","props","Component","createElement","exports"],"sourceRoot":"../../src","sources":["TrueSheetFooter.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAyB,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAOlB,MAAMG,eAAe,GAAIC,KAA2B,IAAK;EAC9D,MAAM;IAAEC;EAAU,CAAC,GAAGD,KAAK;EAE3B,IAAI,CAACC,SAAS,EAAE,OAAO,IAAI;EAE3B,IAAI,OAAOA,SAAS,KAAK,UAAU,EAAE;IACnC,OAAOA,SAAS;EAClB;EAEA,oBAAOR,MAAA,CAAAK,OAAA,CAAAI,aAAA,CAACD,SAAS,MAAE,CAAC;AACtB,CAAC;AAAAE,OAAA,CAAAJ,eAAA,GAAAA,eAAA","ignoreList":[]}
@@ -23,6 +23,9 @@ Object.keys(_TrueSheetGrabber).forEach(function (key) {
23
23
  });
24
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
25
  class TrueSheet extends _react.default.Component {
26
+ static dismiss = jest.fn();
27
+ static present = jest.fn();
28
+ static resize = jest.fn();
26
29
  dismiss = jest.fn();
27
30
  present = jest.fn();
28
31
  resize = jest.fn();
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_TrueSheetGrabber","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","obj","__esModule","default","TrueSheet","React","Component","dismiss","jest","fn","present","resize","render","createElement","View","props"],"sourceRoot":"../../../src","sources":["__mocks__/index.js"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,iBAAA,GAAAF,OAAA;AAAAG,MAAA,CAAAC,IAAA,CAAAF,iBAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,iBAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,iBAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AAAmC,SAAAP,uBAAAgB,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAE5B,MAAMG,SAAS,SAASC,cAAK,CAACC,SAAS,CAAC;EAC7CC,OAAO,GAAGC,IAAI,CAACC,EAAE,CAAC,CAAC;EACnBC,OAAO,GAAGF,IAAI,CAACC,EAAE,CAAC,CAAC;EACnBE,MAAM,GAAGH,IAAI,CAACC,EAAE,CAAC,CAAC;EAElBG,MAAMA,CAAA,EAAG;IACP,oBAAO5B,MAAA,CAAAmB,OAAA,CAAAU,aAAA,CAAC1B,YAAA,CAAA2B,IAAI,EAAK,IAAI,CAACC,KAAQ,CAAC;EACjC;AACF;AAAClB,OAAA,CAAAO,SAAA,GAAAA,SAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_TrueSheetGrabber","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","obj","__esModule","default","TrueSheet","React","Component","dismiss","jest","fn","present","resize","render","createElement","View","props"],"sourceRoot":"../../../src","sources":["__mocks__/index.js"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,iBAAA,GAAAF,OAAA;AAAAG,MAAA,CAAAC,IAAA,CAAAF,iBAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,iBAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,iBAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AAAmC,SAAAP,uBAAAgB,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAE5B,MAAMG,SAAS,SAASC,cAAK,CAACC,SAAS,CAAC;EAC7C,OAAOC,OAAO,GAAGC,IAAI,CAACC,EAAE,CAAC,CAAC;EAC1B,OAAOC,OAAO,GAAGF,IAAI,CAACC,EAAE,CAAC,CAAC;EAC1B,OAAOE,MAAM,GAAGH,IAAI,CAACC,EAAE,CAAC,CAAC;EAEzBF,OAAO,GAAGC,IAAI,CAACC,EAAE,CAAC,CAAC;EACnBC,OAAO,GAAGF,IAAI,CAACC,EAAE,CAAC,CAAC;EACnBE,MAAM,GAAGH,IAAI,CAACC,EAAE,CAAC,CAAC;EAElBG,MAAMA,CAAA,EAAG;IACP,oBAAO5B,MAAA,CAAAmB,OAAA,CAAAU,aAAA,CAAC1B,YAAA,CAAA2B,IAAI,EAAK,IAAI,CAACC,KAAQ,CAAC;EACjC;AACF;AAAClB,OAAA,CAAAO,SAAA,GAAAA,SAAA","ignoreList":[]}
@@ -3,17 +3,22 @@ import React, { PureComponent, createRef } from 'react';
3
3
  import { requireNativeComponent, Platform, findNodeHandle, View } from 'react-native';
4
4
  import { TrueSheetModule } from './TrueSheetModule';
5
5
  import { TrueSheetGrabber } from './TrueSheetGrabber';
6
+ import { TrueSheetFooter } from './TrueSheetFooter';
7
+ const NATIVE_COMPONENT_NAME = 'TrueSheetView';
6
8
  const LINKING_ERROR = `The package '@lodev09/react-native-true-sheet' doesn't seem to be linked. Make sure: \n\n` + Platform.select({
7
9
  ios: "- You have run 'pod install'\n",
8
10
  default: ''
9
11
  }) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n';
10
- const ComponentName = 'TrueSheetView';
11
- const TrueSheetNativeView = requireNativeComponent(ComponentName);
12
+ const TrueSheetNativeView = requireNativeComponent(NATIVE_COMPONENT_NAME);
12
13
  if (!TrueSheetNativeView) {
13
14
  throw new Error(LINKING_ERROR);
14
15
  }
15
16
  export class TrueSheet extends PureComponent {
16
17
  displayName = 'TrueSheet';
18
+ /**
19
+ * Map of sheet names against their handle.
20
+ */
21
+ static handles = {};
17
22
  constructor(props) {
18
23
  super(props);
19
24
  this.ref = /*#__PURE__*/createRef();
@@ -24,15 +29,54 @@ export class TrueSheet extends PureComponent {
24
29
  scrollableHandle: null
25
30
  };
26
31
  }
32
+ static getHandle(name) {
33
+ const handle = TrueSheet.handles[name];
34
+ if (!handle) {
35
+ console.warn(`Could not get native view tag from "${name}". Check your name prop.`);
36
+ return;
37
+ }
38
+ return handle;
39
+ }
40
+
41
+ /**
42
+ * Present the sheet by given `name`.
43
+ * See `name` prop.
44
+ */
45
+ static async present(name, index = 0) {
46
+ const handle = TrueSheet.getHandle(name);
47
+ if (!handle) return;
48
+ await TrueSheetModule.present(handle, index);
49
+ }
50
+
51
+ /**
52
+ * Dismiss the sheet by given `name`.
53
+ * See `name` prop.
54
+ */
55
+ static async dismiss(name) {
56
+ const handle = TrueSheet.getHandle(name);
57
+ if (!handle) return;
58
+ await TrueSheetModule.dismiss(handle);
59
+ }
60
+
61
+ /**
62
+ * Resize the sheet by given `name`.
63
+ * See `name` prop.
64
+ */
65
+ static async resize(name, index) {
66
+ await TrueSheet.present(name, index);
67
+ }
27
68
  get handle() {
28
69
  const nodeHandle = findNodeHandle(this.ref.current);
29
70
  if (nodeHandle == null || nodeHandle === -1) {
30
- throw new Error(`Could not get native view tag`);
71
+ throw new Error('Could not get native view tag');
31
72
  }
32
73
  return nodeHandle;
33
74
  }
34
75
  updateState() {
35
76
  const scrollableHandle = this.props.scrollRef?.current ? findNodeHandle(this.props.scrollRef.current) : null;
77
+ if (this.props.name) {
78
+ TrueSheet.handles[this.props.name] = this.handle;
79
+ }
36
80
  this.setState({
37
81
  scrollableHandle
38
82
  });
@@ -46,18 +90,9 @@ export class TrueSheet extends PureComponent {
46
90
  onDismiss() {
47
91
  this.props.onDismiss?.();
48
92
  }
49
- componentDidMount() {
50
- if (this.props.sizes && this.props.sizes.length > 3) {
51
- console.warn('TrueSheet only supports a maximum of 3 sizes; collapsed, half-expanded and expanded. Check your `sizes` prop.');
52
- }
53
- this.updateState();
54
- }
55
- componentDidUpdate() {
56
- this.updateState();
57
- }
58
93
 
59
94
  /**
60
- * Present the modal sheet. Optionally accepts a size `index`.
95
+ * Present the sheet. Optionally accepts a size `index`.
61
96
  * See `sizes` prop
62
97
  */
63
98
  async present(index = 0) {
@@ -78,6 +113,15 @@ export class TrueSheet extends PureComponent {
78
113
  async dismiss() {
79
114
  await TrueSheetModule.dismiss(this.handle);
80
115
  }
116
+ componentDidMount() {
117
+ if (this.props.sizes && this.props.sizes.length > 3) {
118
+ console.warn('TrueSheet only supports a maximum of 3 sizes; collapsed, half-expanded and expanded. Check your `sizes` prop.');
119
+ }
120
+ this.updateState();
121
+ }
122
+ componentDidUpdate() {
123
+ this.updateState();
124
+ }
81
125
  render() {
82
126
  const {
83
127
  sizes = ['medium', 'large'],
@@ -128,22 +172,12 @@ export class TrueSheet extends PureComponent {
128
172
  }, children), /*#__PURE__*/React.createElement(View, {
129
173
  collapsable: false
130
174
  }, /*#__PURE__*/React.createElement(TrueSheetFooter, {
131
- FooterComponent: FooterComponent
175
+ Component: FooterComponent
132
176
  })), Platform.OS === 'android' && /*#__PURE__*/React.createElement(TrueSheetGrabber, _extends({
133
177
  visible: grabber
134
178
  }, grabberProps))));
135
179
  }
136
180
  }
137
- const TrueSheetFooter = props => {
138
- const {
139
- FooterComponent
140
- } = props;
141
- if (!FooterComponent) return null;
142
- if (typeof FooterComponent !== 'function') {
143
- return FooterComponent;
144
- }
145
- return /*#__PURE__*/React.createElement(FooterComponent, null);
146
- };
147
181
  const $nativeSheet = {
148
182
  position: 'absolute',
149
183
  left: -9999,
@@ -1 +1 @@
1
- {"version":3,"names":["React","PureComponent","createRef","requireNativeComponent","Platform","findNodeHandle","View","TrueSheetModule","TrueSheetGrabber","LINKING_ERROR","select","ios","default","ComponentName","TrueSheetNativeView","Error","TrueSheet","displayName","constructor","props","ref","onDismiss","bind","onPresent","onSizeChange","state","scrollableHandle","handle","nodeHandle","current","updateState","scrollRef","setState","event","nativeEvent","componentDidMount","sizes","length","console","warn","componentDidUpdate","present","index","resize","dismiss","render","backgroundColor","dismissible","grabber","grabberProps","blurTint","cornerRadius","maxHeight","FooterComponent","style","contentContainerStyle","children","rest","createElement","$nativeSheet","_extends","collapsable","overflow","undefined","android","borderTopLeftRadius","borderTopRightRadius","TrueSheetFooter","OS","visible","position","left","zIndex"],"sourceRoot":"../../src","sources":["TrueSheet.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","PureComponent","createRef","requireNativeComponent","Platform","findNodeHandle","View","TrueSheetModule","TrueSheetGrabber","TrueSheetFooter","NATIVE_COMPONENT_NAME","LINKING_ERROR","select","ios","default","TrueSheetNativeView","Error","TrueSheet","displayName","handles","constructor","props","ref","onDismiss","bind","onPresent","onSizeChange","state","scrollableHandle","getHandle","name","handle","console","warn","present","index","dismiss","resize","nodeHandle","current","updateState","scrollRef","setState","event","nativeEvent","componentDidMount","sizes","length","componentDidUpdate","render","backgroundColor","dismissible","grabber","grabberProps","blurTint","cornerRadius","maxHeight","FooterComponent","style","contentContainerStyle","children","rest","createElement","$nativeSheet","_extends","collapsable","overflow","undefined","android","borderTopLeftRadius","borderTopRightRadius","Component","OS","visible","position","left","zIndex"],"sourceRoot":"../../src","sources":["TrueSheet.tsx"],"mappings":"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","ignoreList":[]}