@lodev09/react-native-true-sheet 0.9.3 → 0.9.5
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 +61 -11
- package/android/src/main/java/com/lodev09/truesheet/core/RootViewGroup.kt +5 -0
- package/lib/commonjs/TrueSheet.js +2 -2
- package/lib/commonjs/TrueSheet.js.map +1 -1
- package/lib/commonjs/TrueSheetGrabber.js +9 -11
- package/lib/commonjs/TrueSheetGrabber.js.map +1 -1
- package/lib/module/TrueSheet.js +2 -2
- package/lib/module/TrueSheet.js.map +1 -1
- package/lib/module/TrueSheetGrabber.js +9 -11
- package/lib/module/TrueSheetGrabber.js.map +1 -1
- package/lib/typescript/src/TrueSheetGrabber.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/TrueSheet.tsx +2 -2
- package/src/TrueSheetGrabber.tsx +5 -9
package/README.md
CHANGED
|
@@ -12,8 +12,12 @@ The true native bottom sheet 💩
|
|
|
12
12
|
* ✅ Implemented in the native realm.
|
|
13
13
|
* ✅ **_NOT_** your pure JS, (re)animated view (might integrate in the future 👀)
|
|
14
14
|
* ✅ Clean, fast, and lightweight.
|
|
15
|
-
* ✅ Handles your
|
|
16
|
-
* ✅
|
|
15
|
+
* ✅ Handles your _Scrolling_ needs, natively.
|
|
16
|
+
* ✅ Handles your _Footer_ needs, natively.
|
|
17
|
+
* ✅ Handles your _Keyboard_ needs, natively.
|
|
18
|
+
* ✅ Asynchronus `ref` [methods](#methods).
|
|
19
|
+
* ✅ Works with Expo by default.
|
|
20
|
+
* ✅ Bonus! [Blur](#blurtint) support on iOS 😎
|
|
17
21
|
|
|
18
22
|
## Installation
|
|
19
23
|
|
|
@@ -34,8 +38,9 @@ import { TrueSheet } from "@lodev09/react-native-true-sheet"
|
|
|
34
38
|
|
|
35
39
|
const sheet = useRef<TrueSheet>(null)
|
|
36
40
|
|
|
37
|
-
const openSheet = () => {
|
|
38
|
-
sheet.current?.present()
|
|
41
|
+
const openSheet = async () => {
|
|
42
|
+
await sheet.current?.present()
|
|
43
|
+
console.log('horray! sheet has been presented 💩')
|
|
39
44
|
}
|
|
40
45
|
|
|
41
46
|
return (
|
|
@@ -59,17 +64,17 @@ Extends `ViewProps`
|
|
|
59
64
|
|
|
60
65
|
| Prop | Type | Default | Description | 🍎 | 🤖 |
|
|
61
66
|
| - | - | - | - | - | - |
|
|
62
|
-
| sizes | [`SheetSize`](#sheetsize) | `[
|
|
63
|
-
| backgroundColor | `ColorValue` | `white` |
|
|
67
|
+
| sizes | [`SheetSize[]`](#sheetsize) | `["medium", "large"]` | Array of sizes you want the sheet to support. Maximum of _**3 sizes**_ only! **_collapsed_**, **_half-expanded_**, and **_expanded_**. Example: `size={["auto", "60%", "large"]}`| ✅ | ✅ |
|
|
68
|
+
| backgroundColor | `ColorValue` | `"white"` | The sheet's background color. | ✅ | ✅ |
|
|
64
69
|
| cornerRadius | `number` | - | the sheet corner radius. | ✅ | ✅ |
|
|
65
|
-
| maxHeight | `number` | - | Overrides `large` or `100
|
|
70
|
+
| maxHeight | `number` | - | Overrides `"large"` or `"100%"` height. | ✅ | ✅ |
|
|
66
71
|
| contentContainerStyle | `StyleProp<ViewStyle>` | - | Optional content container styles. | ✅ | ✅ |
|
|
67
72
|
| FooterComponent | `ComponentType<...> \| ReactElement` | - | A component that floats at the bottom of the sheet. Accepts a functional `Component` or `ReactElement`. | ✅ | ✅ |
|
|
68
73
|
| dismissible | `boolean` | `true` | If set to `false`, the sheet will prevent interactive dismissal via dragging or clicking outside of it. | ✅ | ✅ |
|
|
69
74
|
| grabber | `boolean` | `true` | Shows a grabber (or handle). Native on IOS and styled `View` on Android. | ✅ | ✅ |
|
|
70
75
|
| grabberProps | [`TrueSheetGrabberProps`](#truesheetgrabberprops) | - | Overrides the grabber props for android. | | ✅ |
|
|
71
|
-
| blurTint | [`BlurTint`](#
|
|
72
|
-
| scrollRef | `RefObject<...>` | - | The main scrollable ref that
|
|
76
|
+
| blurTint | [`BlurTint`](#blurtint) | - | The blur effect style on iOS. Overrides `backgroundColor` if set. Example: `"light"`, `"dark"`, etc. | ✅ | |
|
|
77
|
+
| scrollRef | `RefObject<...>` | - | The main scrollable ref that the sheet should handle on iOS. | ✅ | |
|
|
73
78
|
|
|
74
79
|
## Methods
|
|
75
80
|
|
|
@@ -155,7 +160,7 @@ Grabber props to be used for android grabber or handle.
|
|
|
155
160
|
| color | `ColorValue` | `"rgba(73,69,79,0.4)"` | Grabber color according to M3 specs. |
|
|
156
161
|
| height | `number` | `4` | Grabber height according to M3 specs. |
|
|
157
162
|
| width | `number` | `32` | Grabber width according to M3 specs. |
|
|
158
|
-
| topOffset | `number` | `
|
|
163
|
+
| topOffset | `number` | `0` | Grabber top position offset. |
|
|
159
164
|
|
|
160
165
|
### `BlurTint`
|
|
161
166
|
|
|
@@ -207,11 +212,56 @@ Blur tint that is mapped into native values in iOS.
|
|
|
207
212
|
| index | `number` | The size index from the provided sizes. See `sizes` prop. |
|
|
208
213
|
| value | `number` | The actual height value of the size. |
|
|
209
214
|
|
|
215
|
+
## Troubleshooting
|
|
216
|
+
|
|
217
|
+
### Using `react-native-gesture-handler` on **Android**
|
|
218
|
+
|
|
219
|
+
On Android, RNGH does not work by default because modals are not located under React Native Root view in native hierarchy. To fix that, components need to be wrapped with `GestureHandlerRootView`.
|
|
220
|
+
|
|
221
|
+
Example:
|
|
222
|
+
```ts
|
|
223
|
+
import { GestureHandlerRootView } from 'react-native-gesture-handler'
|
|
224
|
+
```
|
|
225
|
+
```ts
|
|
226
|
+
return (
|
|
227
|
+
<TrueSheet ref={sheet}>
|
|
228
|
+
<GestureHandlerRootView>
|
|
229
|
+
<MyComponent />
|
|
230
|
+
</GestureHandlerRootView>
|
|
231
|
+
</TrueSheet>
|
|
232
|
+
)
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
### Integrating `@react-navigation/native` on iOS
|
|
236
|
+
|
|
237
|
+
On iOS, navigating to a [React Navigation](https://reactnavigation.org) screen from within the Sheet can cause issues. To resolve this, dismiss the sheet before navigating!
|
|
238
|
+
|
|
239
|
+
Example:
|
|
240
|
+
```ts
|
|
241
|
+
const sheet = useRef<TrueSheet>(null)
|
|
242
|
+
|
|
243
|
+
const navigate = async () => {
|
|
244
|
+
await sheet.current?.dismiss() // wait for the sheet to dismiss ✅
|
|
245
|
+
navigation.navigate('SomeScreen') // navigate to the screen 🎉
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
return (
|
|
249
|
+
<TrueSheet ref={sheet}>
|
|
250
|
+
<Button onPress={navigate} title="Navigate to SomeScreen" />
|
|
251
|
+
// ...
|
|
252
|
+
</TrueSheet>
|
|
253
|
+
)
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
### Weird layout render
|
|
257
|
+
|
|
258
|
+
The sheet does not have control over how React Native renders components and may lead to rendering issues. To resolve this, try to minimize the use of `flex=1` in your content styles. Instead, use fixed `height` or employ `flexGrow`, `flexBasis`, etc., to manage your layout requirements.
|
|
259
|
+
|
|
210
260
|
## v1 Roadmap
|
|
211
261
|
|
|
212
262
|
- [ ] Inline sheet
|
|
263
|
+
- [ ] Test with RN new architecture
|
|
213
264
|
- [ ] Reanimated integration(?)
|
|
214
|
-
- [ ] Any ideas?
|
|
215
265
|
|
|
216
266
|
## Contributing
|
|
217
267
|
|
|
@@ -115,6 +115,11 @@ class RootViewGroup(context: Context?) :
|
|
|
115
115
|
return super.onHoverEvent(event)
|
|
116
116
|
}
|
|
117
117
|
|
|
118
|
+
@Deprecated("Deprecated in Java")
|
|
119
|
+
override fun onChildStartedNativeGesture(ev: MotionEvent?) {
|
|
120
|
+
mJSTouchDispatcher.onChildStartedNativeGesture(ev, eventDispatcher)
|
|
121
|
+
}
|
|
122
|
+
|
|
118
123
|
override fun onChildStartedNativeGesture(childView: View, ev: MotionEvent) {
|
|
119
124
|
mJSTouchDispatcher.onChildStartedNativeGesture(ev, eventDispatcher)
|
|
120
125
|
mJSPointerDispatcher?.onChildStartedNativeGesture(childView, ev, eventDispatcher)
|
|
@@ -88,7 +88,7 @@ class TrueSheet extends _react.PureComponent {
|
|
|
88
88
|
}
|
|
89
89
|
render() {
|
|
90
90
|
const {
|
|
91
|
-
sizes,
|
|
91
|
+
sizes = ['medium', 'large'],
|
|
92
92
|
backgroundColor = 'white',
|
|
93
93
|
dismissible = true,
|
|
94
94
|
grabber = true,
|
|
@@ -106,7 +106,7 @@ class TrueSheet extends _react.PureComponent {
|
|
|
106
106
|
ref: this.ref,
|
|
107
107
|
style: $nativeSheet,
|
|
108
108
|
scrollableHandle: this.state.scrollableHandle,
|
|
109
|
-
sizes: sizes
|
|
109
|
+
sizes: sizes,
|
|
110
110
|
blurTint: blurTint,
|
|
111
111
|
cornerRadius: cornerRadius,
|
|
112
112
|
grabber: grabber,
|
|
@@ -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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
|
|
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":[]}
|
|
@@ -7,10 +7,8 @@ exports.TrueSheetGrabber = void 0;
|
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
8
|
var _reactNative = require("react-native");
|
|
9
9
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
-
const GRABBER_WRAPPER_HEIGHT = 24;
|
|
11
10
|
const GRABBER_DEFAULT_HEIGHT = 4;
|
|
12
11
|
const GRABBER_DEFAULT_WIDTH = 32;
|
|
13
|
-
const GRABBER_DEFAULT_TOP_OFFSET = 6;
|
|
14
12
|
|
|
15
13
|
// M3 spec: #49454F 0.4 alpha
|
|
16
14
|
const GRABBER_DEFAULT_COLOR = 'rgba(73,69,79,0.4)';
|
|
@@ -24,30 +22,30 @@ const TrueSheetGrabber = props => {
|
|
|
24
22
|
color = GRABBER_DEFAULT_COLOR,
|
|
25
23
|
width = GRABBER_DEFAULT_WIDTH,
|
|
26
24
|
height = GRABBER_DEFAULT_HEIGHT,
|
|
27
|
-
topOffset =
|
|
25
|
+
topOffset = 0,
|
|
28
26
|
style
|
|
29
27
|
} = props;
|
|
30
28
|
if (!visible) return null;
|
|
31
29
|
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
32
|
-
style: $wrapper
|
|
30
|
+
style: [$wrapper, style, {
|
|
31
|
+
height: GRABBER_DEFAULT_HEIGHT * 4,
|
|
32
|
+
top: topOffset
|
|
33
|
+
}]
|
|
33
34
|
}, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
34
35
|
style: [$grabber, {
|
|
35
36
|
height,
|
|
36
37
|
width,
|
|
37
|
-
backgroundColor: color
|
|
38
|
-
|
|
39
|
-
}, style]
|
|
38
|
+
backgroundColor: color
|
|
39
|
+
}]
|
|
40
40
|
}));
|
|
41
41
|
};
|
|
42
42
|
exports.TrueSheetGrabber = TrueSheetGrabber;
|
|
43
43
|
const $wrapper = {
|
|
44
44
|
position: 'absolute',
|
|
45
|
-
top: 0,
|
|
46
|
-
left: 0,
|
|
47
|
-
right: 0,
|
|
48
45
|
alignSelf: 'center',
|
|
49
|
-
|
|
46
|
+
paddingHorizontal: 12,
|
|
50
47
|
alignItems: 'center',
|
|
48
|
+
justifyContent: 'center',
|
|
51
49
|
zIndex: 9999
|
|
52
50
|
};
|
|
53
51
|
const $grabber = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","obj","__esModule","default","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","obj","__esModule","default","GRABBER_DEFAULT_HEIGHT","GRABBER_DEFAULT_WIDTH","GRABBER_DEFAULT_COLOR","TrueSheetGrabber","props","visible","color","width","height","topOffset","style","createElement","View","$wrapper","top","$grabber","backgroundColor","exports","position","alignSelf","paddingHorizontal","alignItems","justifyContent","zIndex","borderRadius"],"sourceRoot":"../../src","sources":["TrueSheetGrabber.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAAoF,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEpF,MAAMG,sBAAsB,GAAG,CAAC;AAChC,MAAMC,qBAAqB,GAAG,EAAE;;AAEhC;AACA,MAAMC,qBAAqB,GAAG,oBAAoB;AAwClD;AACA;AACA;AACA;AACO,MAAMC,gBAAgB,GAAIC,KAA4B,IAAK;EAChE,MAAM;IACJC,OAAO,GAAG,IAAI;IACdC,KAAK,GAAGJ,qBAAqB;IAC7BK,KAAK,GAAGN,qBAAqB;IAC7BO,MAAM,GAAGR,sBAAsB;IAC/BS,SAAS,GAAG,CAAC;IACbC;EACF,CAAC,GAAGN,KAAK;EAET,IAAI,CAACC,OAAO,EAAE,OAAO,IAAI;EAEzB,oBACEZ,MAAA,CAAAM,OAAA,CAAAY,aAAA,CAACf,YAAA,CAAAgB,IAAI;IAACF,KAAK,EAAE,CAACG,QAAQ,EAAEH,KAAK,EAAE;MAAEF,MAAM,EAAER,sBAAsB,GAAG,CAAC;MAAEc,GAAG,EAAEL;IAAU,CAAC;EAAE,gBACrFhB,MAAA,CAAAM,OAAA,CAAAY,aAAA,CAACf,YAAA,CAAAgB,IAAI;IAACF,KAAK,EAAE,CAACK,QAAQ,EAAE;MAAEP,MAAM;MAAED,KAAK;MAAES,eAAe,EAAEV;IAAM,CAAC;EAAE,CAAE,CACjE,CAAC;AAEX,CAAC;AAAAW,OAAA,CAAAd,gBAAA,GAAAA,gBAAA;AAED,MAAMU,QAAmB,GAAG;EAC1BK,QAAQ,EAAE,UAAU;EACpBC,SAAS,EAAE,QAAQ;EACnBC,iBAAiB,EAAE,EAAE;EACrBC,UAAU,EAAE,QAAQ;EACpBC,cAAc,EAAE,QAAQ;EACxBC,MAAM,EAAE;AACV,CAAC;AAED,MAAMR,QAAmB,GAAG;EAC1BS,YAAY,EAAExB,sBAAsB,GAAG;AACzC,CAAC","ignoreList":[]}
|
package/lib/module/TrueSheet.js
CHANGED
|
@@ -80,7 +80,7 @@ export class TrueSheet extends PureComponent {
|
|
|
80
80
|
}
|
|
81
81
|
render() {
|
|
82
82
|
const {
|
|
83
|
-
sizes,
|
|
83
|
+
sizes = ['medium', 'large'],
|
|
84
84
|
backgroundColor = 'white',
|
|
85
85
|
dismissible = true,
|
|
86
86
|
grabber = true,
|
|
@@ -98,7 +98,7 @@ export class TrueSheet extends PureComponent {
|
|
|
98
98
|
ref: this.ref,
|
|
99
99
|
style: $nativeSheet,
|
|
100
100
|
scrollableHandle: this.state.scrollableHandle,
|
|
101
|
-
sizes: sizes
|
|
101
|
+
sizes: sizes,
|
|
102
102
|
blurTint: blurTint,
|
|
103
103
|
cornerRadius: cornerRadius,
|
|
104
104
|
grabber: grabber,
|
|
@@ -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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
|
|
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,9 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { View } from 'react-native';
|
|
3
|
-
const GRABBER_WRAPPER_HEIGHT = 24;
|
|
4
3
|
const GRABBER_DEFAULT_HEIGHT = 4;
|
|
5
4
|
const GRABBER_DEFAULT_WIDTH = 32;
|
|
6
|
-
const GRABBER_DEFAULT_TOP_OFFSET = 6;
|
|
7
5
|
|
|
8
6
|
// M3 spec: #49454F 0.4 alpha
|
|
9
7
|
const GRABBER_DEFAULT_COLOR = 'rgba(73,69,79,0.4)';
|
|
@@ -17,29 +15,29 @@ export const TrueSheetGrabber = props => {
|
|
|
17
15
|
color = GRABBER_DEFAULT_COLOR,
|
|
18
16
|
width = GRABBER_DEFAULT_WIDTH,
|
|
19
17
|
height = GRABBER_DEFAULT_HEIGHT,
|
|
20
|
-
topOffset =
|
|
18
|
+
topOffset = 0,
|
|
21
19
|
style
|
|
22
20
|
} = props;
|
|
23
21
|
if (!visible) return null;
|
|
24
22
|
return /*#__PURE__*/React.createElement(View, {
|
|
25
|
-
style: $wrapper
|
|
23
|
+
style: [$wrapper, style, {
|
|
24
|
+
height: GRABBER_DEFAULT_HEIGHT * 4,
|
|
25
|
+
top: topOffset
|
|
26
|
+
}]
|
|
26
27
|
}, /*#__PURE__*/React.createElement(View, {
|
|
27
28
|
style: [$grabber, {
|
|
28
29
|
height,
|
|
29
30
|
width,
|
|
30
|
-
backgroundColor: color
|
|
31
|
-
|
|
32
|
-
}, style]
|
|
31
|
+
backgroundColor: color
|
|
32
|
+
}]
|
|
33
33
|
}));
|
|
34
34
|
};
|
|
35
35
|
const $wrapper = {
|
|
36
36
|
position: 'absolute',
|
|
37
|
-
top: 0,
|
|
38
|
-
left: 0,
|
|
39
|
-
right: 0,
|
|
40
37
|
alignSelf: 'center',
|
|
41
|
-
|
|
38
|
+
paddingHorizontal: 12,
|
|
42
39
|
alignItems: 'center',
|
|
40
|
+
justifyContent: 'center',
|
|
43
41
|
zIndex: 9999
|
|
44
42
|
};
|
|
45
43
|
const $grabber = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","
|
|
1
|
+
{"version":3,"names":["React","View","GRABBER_DEFAULT_HEIGHT","GRABBER_DEFAULT_WIDTH","GRABBER_DEFAULT_COLOR","TrueSheetGrabber","props","visible","color","width","height","topOffset","style","createElement","$wrapper","top","$grabber","backgroundColor","position","alignSelf","paddingHorizontal","alignItems","justifyContent","zIndex","borderRadius"],"sourceRoot":"../../src","sources":["TrueSheetGrabber.tsx"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAyD,cAAc;AAEpF,MAAMC,sBAAsB,GAAG,CAAC;AAChC,MAAMC,qBAAqB,GAAG,EAAE;;AAEhC;AACA,MAAMC,qBAAqB,GAAG,oBAAoB;AAwClD;AACA;AACA;AACA;AACA,OAAO,MAAMC,gBAAgB,GAAIC,KAA4B,IAAK;EAChE,MAAM;IACJC,OAAO,GAAG,IAAI;IACdC,KAAK,GAAGJ,qBAAqB;IAC7BK,KAAK,GAAGN,qBAAqB;IAC7BO,MAAM,GAAGR,sBAAsB;IAC/BS,SAAS,GAAG,CAAC;IACbC;EACF,CAAC,GAAGN,KAAK;EAET,IAAI,CAACC,OAAO,EAAE,OAAO,IAAI;EAEzB,oBACEP,KAAA,CAAAa,aAAA,CAACZ,IAAI;IAACW,KAAK,EAAE,CAACE,QAAQ,EAAEF,KAAK,EAAE;MAAEF,MAAM,EAAER,sBAAsB,GAAG,CAAC;MAAEa,GAAG,EAAEJ;IAAU,CAAC;EAAE,gBACrFX,KAAA,CAAAa,aAAA,CAACZ,IAAI;IAACW,KAAK,EAAE,CAACI,QAAQ,EAAE;MAAEN,MAAM;MAAED,KAAK;MAAEQ,eAAe,EAAET;IAAM,CAAC;EAAE,CAAE,CACjE,CAAC;AAEX,CAAC;AAED,MAAMM,QAAmB,GAAG;EAC1BI,QAAQ,EAAE,UAAU;EACpBC,SAAS,EAAE,QAAQ;EACnBC,iBAAiB,EAAE,EAAE;EACrBC,UAAU,EAAE,QAAQ;EACpBC,cAAc,EAAE,QAAQ;EACxBC,MAAM,EAAE;AACV,CAAC;AAED,MAAMP,QAAmB,GAAG;EAC1BQ,YAAY,EAAEtB,sBAAsB,GAAG;AACzC,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TrueSheetGrabber.d.ts","sourceRoot":"","sources":["../../../src/TrueSheetGrabber.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAQ,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"TrueSheetGrabber.d.ts","sourceRoot":"","sources":["../../../src/TrueSheetGrabber.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAQ,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAA;AAQpF,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;IAEjB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;IAE5B;;;OAGG;IACH,KAAK,CAAC,EAAE,UAAU,CAAA;IAElB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,UAAW,qBAAqB,6BAiB5D,CAAA"}
|
package/package.json
CHANGED
package/src/TrueSheet.tsx
CHANGED
|
@@ -128,7 +128,7 @@ export class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetState> {
|
|
|
128
128
|
|
|
129
129
|
render(): ReactNode {
|
|
130
130
|
const {
|
|
131
|
-
sizes,
|
|
131
|
+
sizes = ['medium', 'large'],
|
|
132
132
|
backgroundColor = 'white',
|
|
133
133
|
dismissible = true,
|
|
134
134
|
grabber = true,
|
|
@@ -148,7 +148,7 @@ export class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetState> {
|
|
|
148
148
|
ref={this.ref}
|
|
149
149
|
style={$nativeSheet}
|
|
150
150
|
scrollableHandle={this.state.scrollableHandle}
|
|
151
|
-
sizes={sizes
|
|
151
|
+
sizes={sizes}
|
|
152
152
|
blurTint={blurTint}
|
|
153
153
|
cornerRadius={cornerRadius}
|
|
154
154
|
grabber={grabber}
|
package/src/TrueSheetGrabber.tsx
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
import React from 'react'
|
|
2
2
|
import { View, type ColorValue, type ViewStyle, type StyleProp } from 'react-native'
|
|
3
3
|
|
|
4
|
-
const GRABBER_WRAPPER_HEIGHT = 24
|
|
5
4
|
const GRABBER_DEFAULT_HEIGHT = 4
|
|
6
5
|
const GRABBER_DEFAULT_WIDTH = 32
|
|
7
|
-
const GRABBER_DEFAULT_TOP_OFFSET = 6
|
|
8
6
|
|
|
9
7
|
// M3 spec: #49454F 0.4 alpha
|
|
10
8
|
const GRABBER_DEFAULT_COLOR = 'rgba(73,69,79,0.4)'
|
|
@@ -57,27 +55,25 @@ export const TrueSheetGrabber = (props: TrueSheetGrabberProps) => {
|
|
|
57
55
|
color = GRABBER_DEFAULT_COLOR,
|
|
58
56
|
width = GRABBER_DEFAULT_WIDTH,
|
|
59
57
|
height = GRABBER_DEFAULT_HEIGHT,
|
|
60
|
-
topOffset =
|
|
58
|
+
topOffset = 0,
|
|
61
59
|
style,
|
|
62
60
|
} = props
|
|
63
61
|
|
|
64
62
|
if (!visible) return null
|
|
65
63
|
|
|
66
64
|
return (
|
|
67
|
-
<View style={$wrapper}>
|
|
68
|
-
<View style={[$grabber, { height, width, backgroundColor: color
|
|
65
|
+
<View style={[$wrapper, style, { height: GRABBER_DEFAULT_HEIGHT * 4, top: topOffset }]}>
|
|
66
|
+
<View style={[$grabber, { height, width, backgroundColor: color }]} />
|
|
69
67
|
</View>
|
|
70
68
|
)
|
|
71
69
|
}
|
|
72
70
|
|
|
73
71
|
const $wrapper: ViewStyle = {
|
|
74
72
|
position: 'absolute',
|
|
75
|
-
top: 0,
|
|
76
|
-
left: 0,
|
|
77
|
-
right: 0,
|
|
78
73
|
alignSelf: 'center',
|
|
79
|
-
|
|
74
|
+
paddingHorizontal: 12,
|
|
80
75
|
alignItems: 'center',
|
|
76
|
+
justifyContent: 'center',
|
|
81
77
|
zIndex: 9999,
|
|
82
78
|
}
|
|
83
79
|
|