Gathering detailed insights and metrics for myfork-react-native-actions-sheet
Gathering detailed insights and metrics for myfork-react-native-actions-sheet
Gathering detailed insights and metrics for myfork-react-native-actions-sheet
Gathering detailed insights and metrics for myfork-react-native-actions-sheet
npm install myfork-react-native-actions-sheet
Typescript
Module System
Node Version
NPM Version
72.3
Supply Chain
98.4
Quality
75.5
Maintenance
100
Vulnerability
100
License
Cumulative downloads
Total Downloads
Last day
0%
1
Compared to previous day
Last week
-50%
2
Compared to previous week
Last month
-26.7%
11
Compared to previous month
Last year
53.8%
240
Compared to previous year
3
A highly customizable cross platform ActionSheet for react native.
❶ Native Animations & Performance ❷ Cross Platform (iOS and Android) ❸ Identical Working on Android and iOS ❹ Gesture Control ❺ Raw ActionSheet - You can Add Anything ❻ Allow ActionSheet to be partially shown when opened ➐ Support TextInputs ❽ Cool bounce effect on open.
git clone https://github.com/ammarahm-ed/react-native-actions-sheet.git
then run yarn or npm install
in the example folder and finally to run the example app:
react-native run-android
npm install react-native-actions-sheet --save
or if you use yarn:
yarn add react-native-actions-sheet
1import ActionSheet from 'react-native-actions-sheet'; 2 3const App = () => { 4 let actionSheet; 5 6 return ( 7 <View 8 style={{ 9 justifyContent: 'center', 10 flex: 1, 11 }}> 12 <TouchableOpacity 13 onPress={() => { 14 actionSheet.setModalVisible(); 15 }}> 16 <Text>Open ActionSheet</Text> 17 </TouchableOpacity> 18 19 <ActionSheet ref={ref => (actionSheet = ref)}> 20 <View> 21 <Text>YOUR CUSTOM COMPONENT INSIDE THE ACTIONSHEET</Text> 22 </View> 23 </ActionSheet> 24 </View> 25 ); 26}; 27 28export default App; 29 30
ref
Assigns a ref to ActionSheet component to use methods.
Type | Required |
---|---|
ref | Yes |
initialOffsetFromBottom
Use if you want to show the ActionSheet Partially on Opening. Requires gestureEnabled=true
Type | Required |
---|---|
boolean | no |
Default:1
extraScroll
Normally when the ActionSheet is fully opened, a small portion from the bottom is hidden by default. Use this prop if you want the ActionSheet to hover over the bottom of screen and not hide a little behind it.
Type | Required |
---|---|
number | no |
Default:0
containerStyle
Any custom styles for the container.
Type | Required |
---|---|
Object | no |
CustomHeaderComponent
Your custom header component. Using this will hide the default indicator.
Type | Required |
---|---|
React.Component | no |
headerAlwaysVisible
Keep the header always visible even when gestures are disabled.
Type | Required |
---|---|
boolean | no |
Default: false
CustomFooterComponent
A footer component if you want to add some info at the bottom.
Type | Required |
---|---|
React.Component | no |
Note: Remember to give footer a fixed height and provide ActionSheet the footerHeight
prop with same value. If you have added margins etc, add those values to footerHeight
also.
footerHeight
Height of the footer
Type | Required |
---|---|
number | no |
Default: 80 |
footerStyle
Custom Styles for the footer container.
Type | Required |
---|---|
Object | no |
footerAlwaysVisible
Keep footer visible. Currently when you overdraw, the footer appears, however you can change this by setting this to true
.
Type | Required |
---|---|
boolean | no |
Default: false
animated
Keep footer visible. Currently when you overdraw, the footer appears, however you can change this by setting this to true
.
Type | Required |
---|---|
boolean | no |
Default: true
openAnimationSpeed
Speed of opening animation. Higher means the ActionSheet will open more quickly.
Type | Required |
---|---|
number | no |
Default: 12
closeAnimationDuration
Duration of closing animation.
Type | Required |
---|---|
number | no |
Default: 300
gestureEnabled
Enables gesture control of ActionSheet
Type | Required |
---|---|
boolean | no |
Default: false
closeOnTouchBackdrop
Control closing ActionSheet by touching on backdrop.
Type | Required |
---|---|
boolean | no |
Default: true
bounceOnOpen
Bounces the ActionSheet on open.
Type | Required |
---|---|
boolean | no |
Default: false
bounciness
How much you want the ActionSheet to bounce when it is opened.
Type | Required |
---|---|
number | no |
Default: 8
springOffset
When touch ends and user has not moved farther from the set springOffset, the ActionSheet will return to previous position.
Type | Required |
---|---|
number | no |
Default: 50
elevation
Add elevation to the ActionSheet container.
Type | Required |
---|---|
number | no |
Default: 0
indicatorColor
Color of the gestureEnabled Indicator.
Type | Required |
---|---|
string | no |
Default: "#f0f0f0"
overlayColor
Color of the overlay/backdrop.
Type | Required |
---|---|
string | no |
Default: "black"
defaultOverlayOpacity
Default opacity of the overlay/backdrop.
Type | Required |
---|---|
number 0 - 1 | no |
Default: 0.3
closeOnPressBack
Will the ActionSheet close on hardwareBackPress
event.
Type | Required |
---|---|
boolean | no |
Default: true
onClose
Event called when the ActionSheet closes.
Type | Required |
---|---|
function | no |
onOpen
An event called when the ActionSheet Opens.
Type | Required |
---|---|
function | no |
Methods require you to set a ref on ActionSheet Component.
setModalVisible
ActionSheet can be opened or closed using its ref.
1// First create a ref on your <ActionSheet/> Component. 2 3<ActionSheet 4ref={ref => this.actionSheet = ref} 5/> 6 7// then later in your function to open the ActionSheet: 8 9this.actionSheet.setModalVisible();
Listen to changes in ActionSheet State.
addHasReachedTopListener
Attach a listener to know when ActionSheet is fully opened and has reached top. Use this if you want to use a ScrollView inside the ActionSheet. Check the example for demonstration on how to use nested ScrollViews inside ActionSheet.
1import ActionSheet, {addHasReachedTopListener, removeHasReachedTopListener} from 'react-native-actions-sheet 2 3 4// In your Component 5 6 const _onHasReachedTop = () => { 7 // handle the event 8 } 9 10 useEffect(() => { 11 addHasReachedTopListener(_onHasReachedTop) 12 return () => { 13 removeHasReachedTopListener(_onHasReachedTop) 14 } 15 },[]) 16 17
Support it by joining stargazers for this repository. ⭐️ and follow me for my next creations!
No vulnerabilities found.
No security vulnerabilities found.