UNPKG

formsy-semantic-ui-react

Version:

Formsy-React wrappers for Semantic-Ui-React's form Components

95 lines (67 loc) 2.33 kB
# formsy-semantic-ui-react ![CI](https://github.com/zabute/formsy-semantic-ui-react/workflows/CI/badge.svg) [![npm version](https://badge.fury.io/js/formsy-semantic-ui-react.svg)](https://badge.fury.io/js/formsy-semantic-ui-react) Quicky create [formsy-react](https://github.com/formsy/formsy-react) forms with [Semantic-Ui-React's](https://github.com/Semantic-Org/Semantic-UI-React) Form Components. ## Installation ``` npm install (or yarn add) formsy-semantic-ui-react ``` You will also need formsy-react ``` npm install (or yarn add) formsy-react ``` ## Usage ```jsx // ES6 import { Form, Input, TextArea, Checkbox, Radio, RadioGroup, Dropdown, Select } from 'formsy-semantic-ui-react'; ``` ```jsx // ES5 var Form = require('formsy-semantic-ui-react').Form; /** and so on for the rest of the Components **/ ``` ```jsx const App = (props) => { const errorLabel = <Label color="red" pointing />; return ( <Form onValidSubmit={props.onValidSubmit} loading={props.isLoading}> <Form.Input name="email" label="Email" validations="isEmail" validationErrors={{ isEmail: 'Email not valid' }} errorLabel={errorLabel} /> </Form> ); }; ``` ## Props This library defines a couple of (non-required) props for more control over behavior/markup: - `errorLabel` (type: `Node` default: `none`) Used to Show validation errors next to the inputs. Any `children` get replaced by `getErrorMessage()` ```jsx <Checkbox errorLabel={ <Label color="red" pointing="left"/> }/> /> ``` - `instantValidation` (type: `bool` default: `false`) Whether or not to show validation errors as soon as user starts typing. Only available on `Input` and `Form.Input` ```jsx <Input instantValidation /> ``` ## Examples Go to the [example](/example) folder to see more examples of how the components are used. To run the example app: ``` npm/yarn install npm/yarn run example-app ``` Then go to `localhost:8080` For more information on building and validating `formsy-react` forms, take a look at [Formsy-React's Documentation](https://github.com/formsy/formsy-react/blob/master/API.md) ## Tests Tests are done using Mocha, chai, sinon, and enzyme on jsdom. To run the tests, ``` npm/yarn install npm/yarn run test (or test:watch) ``` License: [MIT](/LICENSE)