![Oracle Drags Its Feet in the JavaScript Trademark Dispute](https://cdn.sanity.io/images/cgdhsj6q/production/919c3b22c24f93884c548d60cbb338e819ff2435-1024x1024.webp?w=400&fit=max&auto=format)
Security News
Oracle Drags Its Feet in the JavaScript Trademark Dispute
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
react-native-progress-steps
Advanced tools
A simple and fully customizable React Native component that implements a progress stepper UI.
A simple and fully customizable React Native component that implements a progress stepper UI.
Example One | Example Two |
---|---|
![]() | ![]() |
If using yarn:
yarn add react-native-progress-steps
If using npm:
npm i react-native-progress-steps
import { ProgressSteps, ProgressStep } from 'react-native-progress-steps';
Simply place a <ProgressStep />
tag for each desired step within the <ProgressSteps />
wrapper.
<View style={{flex: 1}}>
<ProgressSteps>
<ProgressStep label="First Step">
<View style={{ alignItems: 'center' }}>
<Text>This is the content within step 1!</Text>
</View>
</ProgressStep>
<ProgressStep label="Second Step">
<View style={{ alignItems: 'center' }}>
<Text>This is the content within step 2!</Text>
</View>
</ProgressStep>
<ProgressStep label="Third Step">
<View style={{ alignItems: 'center' }}>
<Text>This is the content within step 3!</Text>
</View>
</ProgressStep>
</ProgressSteps>
</View>
Button container and text are fully customizable using the nextBtnStyle, nextBtnTextStyle, previousBtnStyle, and previousBtnTextStyle
props.
Example usage to change a buttons text color:
const buttonTextStyle = {
color: '#393939'
};
return (
<View style={{flex: 1}}>
<ProgressSteps>
<ProgressStep label="First Step" nextBtnTextStyle={buttonTextStyle} previousBtnTextStyle={buttonTextStyle}>
<View style={{ alignItems: 'center' }}>
<Text>This is the content within step 1!</Text>
</View>
</ProgressStep>
<ProgressStep label="Second Step" nextBtnTextStyle={buttonTextStyle} previousBtnTextStyle={buttonTextStyle}>
<View style={{ alignItems: 'center' }}>
<Text>This is the content within step 2!</Text>
</View>
</ProgressStep>
</ProgressSteps>
</View>
)
The errors
prop should be used if there's a need for validation and error handling when clicking the next button. If you would like to prevent the next step from being rendered, set the errors
prop to true
. By default, it will be false
.
Example usage of validation check:
state = {
isValid: false,
errors: false
};
onNextStep = () => {
if (!this.state.isValid) {
this.setState({ errors: true });
} else {
this.setState({ errors: false });
}
};
render() {
return (
<View style={{ flex: 1 }}>
<ProgressSteps>
<ProgressStep label="First Step" onNext={this.onNextStep} errors={this.state.errors}>
<View style={{ alignItems: 'center' }}>
<Text>This is the content within step 1!</Text>
</View>
</ProgressStep>
<ProgressStep label="Second Step">
<View style={{ alignItems: 'center' }}>
<Text>This is the content within step 2!</Text>
</View>
</ProgressStep>
</ProgressSteps>
</View>
);
}
Name | Description | Default | Type |
---|---|---|---|
borderWidth | Width of the progress bar between steps | 6 | Number |
borderStyle | Type of border for the progress bar | solid | String |
activeStepIconBorderColor | Outside border color for the active step | #4bb543 | String |
progressBarColor | Color of the default progress bar | #ebebe4 | String |
completedProgressBarColor | Color of the completed progress bar | #4bb543 | String |
activeStepIconColor | Color of the active step icon | transparent | String |
completedStepIconColor | Color of the completed step icon | #4bb543 | String |
disabledStepIconColor | Color of the disabled step icon | #ebebe4 | String |
labelFontFamily | Font family for the step icon label | iOS/Android default font | String |
labelColor | Color of the default label | lightgray | String |
labelFontSize | Font size for the step icon label | 14 | Number |
activeLabelColor | Color of the active label | #4bb543 | String |
activeLabelFontSize | Optional font size for the active step icon label | null | Number |
completedLabelColor | Color of the completed label | lightgray | String |
activeStepNumColor | Color of the active step number | black | String |
completedStepNumColor | Color of the completed step number | black | String |
disabledStepNumColor | Color of the disabled step number | white | String |
completedCheckColor | Color of the completed step checkmark | white | String |
activeStep | Manually specify the active step | 0 | Number |
isComplete | Set all Steps to active state | false | Boolean |
topOffset | Set progress bar top offset | 30 | Number |
marginBottom | Set progress bar bottom margin | 50 | Number |
Name | Description | Default | Type |
---|---|---|---|
label | Title of the current step to be displayed | null | String |
onNext | Function called when the next step button is pressed | null | Func |
onPrevious | Function called when the previous step button is pressed | null | Func |
onSubmit | Function called when the submit step button is pressed | null | Func |
nextBtnText | Text to display inside the next button | Next | String |
previousBtnText | Text to display inside the previous button | Previous | String |
finishBtnText | Text to display inside the button on the last step | Submit | String |
nextBtnStyle | Style object to provide to the next/finish buttons | { textAlign: 'center', padding: 8 } | Object |
nextBtnTextStyle | Style object to provide to the next/finish button text | { color: '#007aff', fontSize: 18 } | Object |
nextBtnDisabled | Value to disable/enable next button | false | Boolean |
previousBtnStyle | Style object to provide to the previous button | { textAlign: 'center', padding: 8 } | Object |
previousBtnTextStyle | Style object to provide to the previous button text | { color: '#007aff', fontSize: 18 } | Object |
previousBtnDisabled | Value to disable/enable previous button | false | Boolean |
scrollViewProps | Object to provide props to ScrollView component | {} | Object |
scrollable | The content of the Progress Step should be scrollable | true | Boolean |
viewProps | Object to provide props to view component if scrollable is false | {} | Object |
errors | Used to assist with current step validation. If true, the next step won't be rendered | false | Boolean |
removeBtnRow | Used to render the progress step without the button row | false | Boolean |
Pull requests are always welcome! Feel free to open a new GitHub issue for any changes that can be made.
Working on your first Pull Request? You can learn how from this free series How to Contribute to an Open Source Project on GitHub
Colby Miller | https://colbymillerdev.com
FAQs
A simple and fully customizable React Native component that implements a progress stepper UI.
The npm package react-native-progress-steps receives a total of 1,195 weekly downloads. As such, react-native-progress-steps popularity was classified as popular.
We found that react-native-progress-steps demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Security News
The Linux Foundation is warning open source developers that compliance with global sanctions is mandatory, highlighting legal risks and restrictions on contributions.
Security News
Maven Central now validates Sigstore signatures, making it easier for developers to verify the provenance of Java packages.