0.7.2 • Published 3 years ago

@setur/rn-setur-ui-kit v0.7.2

Weekly downloads
-
License
ISC
Repository
-
Last release
3 years ago

React-Native Setur UI Kit

Installation:

npm install @Setur/rn-setur-ui-kit
//or
yarn add @Setur/rn-setur-ui-kit

This framework assumes you have already installed react-native-svg, but if not - you should install it too.

Usage

ThemeProvider

import { ThemeProvider } from '@setur/rn-setur-ui-kit';

const App = ({ children }) => (
  <ThemeProvider>
    {children}
  </ThemeProvider>
);

Components

Text

Usage

import { Text } from '@setur/rn-setur-ui-kit';

const YourExampleTextComponent = props => (
  <Text status='primary' type='h3'>Your Text</Text>
);
propTypeRequiredDefaultOptions
childrenStringFalse
statusStringFalsedefaultdefault, disabled, hint, primary, success, info, warning, danger, alternative
typeString False p1h1, h2, h3, h4, h5, h6, s1, s2, p1, p2, c1, c2, label

TextButton

Usage

import { TextButton } from '@setur/rn-setur-ui-kit';

const YourTextButtonComponent = props => (
  <TextButton>Example Text</TextButton>
);
propTypeRequiredDefaultOptions
onPressFunctionTrue
childStringTrue
typeStringTrueprimaryprimary, basic

Button

Usage

import { Button } from '@setur/rn-setur-ui-kit';

const YourButtonComponent = props => (
  <Button status='primary'>Example Text</Button>
);
propTypeRequiredDefaultOptions
onPressFunctionTrue
textStringTrue
sizeStringTruemediumtiny, small, medium, large, giant
statusStringFalseprimarydefault, disabled, hint, primary, success, info, warning, danger, alternative

TextBox

Usage

import { TextBox } from '@setur/rn-setur-ui-kit';

const YourTextBoxComponent = props => (
  <TextBox />
);
propTypeRequiredDefaultOptions
inputStyleObjectFalse
containerStyleObjectFalse
placeholderStyleObjectFalse
iconStyleObjectFalse
statusStringFalsedefaultdisabled, hint, primary, success, info, warning, danger, default
typeStringFalsedefaultpassword, email, numeric, phone, default
iconNameStringFalsehttps://akveo.github.io/eva-icons/#/

ListItem

Usage

import { ListItem } from '@setur/rn-setur-ui-kit';

const YourListItemComponent = props => (
  <ListItem
    title= 'Title'
    subTitle= 'Example subtitle text'
    iconName='checkmark-outline'
  />
);
propTypeRequiredDefaultOptions
onPressFunctionFalse
titleStringFalse
subTitleStringFalse
rightTextStringFalse
iconNameStringFalsehttps://akveo.github.io/eva-icons/#/
iconStyleObjectFalse

RadioButton

Usage

import { RadioButton } from '@setur/rn-setur-ui-kit';

const YourRadioButtonComponent = props => {
  const [ value, setValue ] = React.useState(0); // initial value index

  return (
    <RadioButton
      valueIndex={value.index}
      onSelect={(value) => setValue(value) }
      radioItems={[ { label: 'example' }, { label: 'example2' } ]}
    />
  );
}
propTypeRequiredDefaultOptions
onSelectFunctionFalse
valueIndexStringFalse
radioItemsArrayTrue[ { label: 'example' } ]
disabledBoolenFalsefalsetrue, false

Alert

Usage

import React, { useState } from 'react';
import { Alert } from '@setur/rn-setur-ui-kit';

const YourAlertComponent = props => (

  const [ modal, setModal ] = useState(false)

  <Alert isVisible={modal}
  toggleModal={() => setModal(!modal)}
  header="Alert Header"
  body="Alert Body"
  okText="OK"
  okFunc={() => alert("OK")}
  cancelText="Cancel"
  cancelFunc={() => alert("Cancel")}


/>
);

Simple

  <Alert isVisible={modal}
  toggleModal={() => setModal(!modal)}
  header="Alert Header"
  body="Alert Body"
  />

Custom Footer

  <Alert isVisible={modal}
    toggleModal={() => setModal(!modal)}
    header="Alert With Custom Footer"
    body="Alert Body"
    CustomFooterComponent={<SomeJSXElement/>}
  />
propTypeRequiredDefaultOptions
isVisibleBooleanTruefalsetrue, false
toggleModalFunctionTrue() => {}
headerStringTrue
bodyStringFalse
okTextStringFalseOk
okFuncFunctionFalse
okStatusStringFalseprimaryButton Statuses
cancelTextStringFalseCancel
cancelFuncFunctionFalse
cancelStatusStringFalsehintButton Statuses
CustomFooterComponentElementFalseReact.Elements

Selector

Usage

import { Selector } from '@setur/rn-setur-ui-kit';

const YourSelectorComponent = props => {
  const [ selected, setSelected ] = React.useState(1); // initial value 1
  const [ visible, setVisible ] = React.useState(false);

  return (
    <Selector
      data={[ { value: 1, label: 'option1' }, { value: 2, label: 'option2' } ]}
      onChange={val => setSelected(val)}
      isVisible={visible}
      toggleSelector={() => setVisible(prev => !prev)}
    />
  );
}
propTypeRequiredDefaultOptionsDetail
toggleSelectorFunctionTrue() => {}
isVisibleBooleanTruefalsetrue, false
dataObjectFalse[] { value: 1, label: 'option1' }, { value: 2, label: 'option2' }
selectedString NumberTrue
onChangeFunctionTrue() => {}
titleStringFalseHeader Title
searchBooleanFalsetruetrue, falseSearch Component visible,
onChangeSearchFunctionFalse() => {}CallBack Function triggered when search text changes
filterBooleanFalsetruetrue, falseFilter data with search query

Accordion

Usage

import { Accordion } from '@setur/rn-setur-ui-kit';

const YourAccordionComponent = props => (
  <Accordion title= 'Title'>
    ...Blocks, Elements, Contents
  </Accordion>
);
propTypeRequiredDefaultOptions
showBooleanFalsefalsetrue, false
titleStringTrue
childrenElementTrue
contentPaddingHorizontalStringFalselTheme.sizes
contentPaddingverticalStringFalselTheme.sizes
closeIconStringFalsearrow-ios-downward-outlinehttps://akveo.github.io/eva-icons/#/
openIconStringFalsearrow-ios-upward-outlinehttps://akveo.github.io/eva-icons/#/

FullScreenModal

Usage

import { FullScreenModal } from '@setur/rn-setur-ui-kit';

const YourFullScreenModalComponent = props => {
  const [ visible, setVisible ] = React.useState(false);

  return (
    <FullScreenModal
      title={props.title}
      isVisible={visible}
      toggleModal={() => setVisible(prev => !prev)}
    > 
    {children} 
   </FullScreenModal>
  );
}
propTypeRequiredDefaultOptionsDetail
toggleModalFunctionTrue() => {}
isVisibleBooleanTruefalsetrue, false
childrenchildren
titleStringFalseHeader Title
0.7.2

3 years ago

0.7.1

4 years ago

0.7.0

4 years ago

0.6.5

4 years ago

0.6.4

4 years ago

0.6.2

4 years ago

0.6.1

4 years ago

0.6.0

4 years ago

0.5.0

4 years ago

0.4.0

4 years ago

0.3.0

4 years ago

0.2.1-rc1

4 years ago

0.2.0

4 years ago

0.1.1-rc1

4 years ago

0.1.0

4 years ago