UNPKG

@ticmakers-react-native/onboarding

Version:

TIC Makers - React Native Onboarding

106 lines (85 loc) 4.21 kB
# TIC Makers - React Native Onboarding React native component for onboarding. Powered by [TIC Makers](https://ticmakers.com) ## Demo [Onboarding Expo's snack]() ## Install Install `@ticmakers-react-native/onboarding` package and save into `package.json`: NPM ```shell $ npm install @ticmakers-react-native/onboarding --save ``` Yarn ```shell $ yarn add @ticmakers-react-native/onboarding ``` ## How to use? ```javascript import React from 'react' import Onboarding from '@ticmakers-react-native/onboarding' export default class App extends React.Component { render() { // Define the pages, it will be displayed in order let pages = [ { backgroundColor: '#fff', image: <Image source={ require('assets/circle.png') } />, subtitle: 'Done with React Native Onboarding Swiper', title: 'Onboarding', }, { backgroundColor: '#fe6e58', image: <Image source={ require('assets/square.png') } />, subtitle: 'This is the subtitle that sumplements the title.', title: 'The Title', }, { backgroundColor: '#999', image: <Image source={ require('assets/triangle.png') } />, subtitle: 'Beautiful, isn\'t it?', title: 'Triangle', } ] return ( <Onboarding pages={ pages } onDone={ () => this.props.navigation.navigate('RouteName') } /> ) } } ``` ## Properties | Name | Type | Default Value | Definition | | ---- | ---- | ------------- | ---------- | | bottomBarHeight `(optional)` | number | 60 | A number for the height of the bottom bar | bottomBarHighlight `(optional)` | boolean | true | A bool flag indicating whether the bottom bar should be highlighted | containerStyles `(optional)` | object { ...styles } | - | Override the default container styles | controlStatusBar `(optional)` | boolean | true | A bool flag indicating whether the status bar should change with the background color | defaultPages `(optional)` | boolean | false | Use 3 pages generated by default | imageContainerStyles `(optional)` | object { ...styles } | - | Override the default image container styles | nextLabel `(optional)` | string / Element | Next | A string or a React-Native component for the Next label | onDone | function | - | A callback that is fired after the OnBoarding is completed | onSkip `(optional)` | function | - | A callback that is fired if the OnBoarding is skipped | pages | array of object { pagesProperties } | - | A array of pages to show in the component. `Show below pagesProperties` | pageIndexCallback `(optional)` | function(indexPage: number) | - | A function that receives the page index as a parameter on page change | skipLabel `(optional)` | string / Element | Skip | A string OR a React-Native component for the Skip label | skipToPage `(optional)` | number | - | When pressing skip, go to that page (ex. skipToPage={2}). `If this prop is provided, ignores onSkip` | subtitleStyles `(optional)` | object { ...styles } | - | Override the default subtitle styles | titleStyles `(optional)` | object { ...styles } | - | Override the default title styles | transitionAnimationDuration `(optional)` | number | 500 | The duration in milliseconds for the animation of the background color for the page transition ## Pages properties | Name | Type | Default Value | Definition | | ---- | ---- | ------------- | ---------- | | backgroundColor | string(hex,rgb,etc) | - | A background color. The color of the font and dots adapts to the background color | image | Element | - | A React-Native component to display at the top of the page | title | string / Element | - | A string OR a React-Native component | titleStyles `(optional)` | object { ...styles } | - | Modify styles of a specific page's title | subtitle | string / Element | - | A string OR a React-Native component | subtitleStyles `(optional)` | object { ...styles } | - | Modify styles of a specific page's subtitle ## Todo - Test on Android & iOS - Improve and add new features - Add more styles - Create tests - Add new props and components in readme ## Version 1.2.1 ([Changelog]) [Changelog]: https://bitbucket.org/ticmakers/rn-onboarding/src/master/CHANGELOG.md