2.2.6 • Published 4 years ago

@comparaonline/ui-form-fields v2.2.6

Weekly downloads
29
License
-
Repository
-
Last release
4 years ago

@comparaonline/ui-form-fields

Installation

yarn add @comparaonline/ui-form-fields

Usage

TextField

import { TextField } from '@comparaonline/ui-form-fields';
<TextField
  label="Text Field Demo"
  name="text-field-demo"
  placeholder="Demo placeholder"
/>

The only required prop is name, all the other can be any of the MUI's Text Field props.

RadioGroupField

import { RadioGroupField } from '@comparaonline/ui-form-fields';
<RadioGroupField
  name="radioGroupDemo"
  validate={validateWith(required)}
  errorMessage="Error"
  helperText="Radio button family"
  renderLabel={<span>Demo with emoji 🇨🇱</span>}
  options={[
    { label: 'Masculino', value: '99' },
    { label: 'Feminino', value: '100' }
  ]}
/>

CheckboxField

import { CheckboxField } from '@comparaonline/ui-form-fields';

Boolean List

<CheckboxField
  name="feature"
  validate={validateList}
  errorMessage="Error validating the Check List"
  helperText="Boolean approach"
  renderLabel={<span>Checkbox Field List ✅</span>}
  options={[
    { name: 'feature.a', label: 'A' },
    { name: 'feature.b', label: 'B' },
    { name: 'feature.c', label: 'C' },
    { name: 'feature.d', label: 'D' }
  ]}
/>

This will create a value like this

{
  "feature": {
    "a": true,
    "d": true
  }
}

Values Array

<CheckboxField
  name="feature"
  validate={validateList}
  errorMessage="Error validating the Check List"
  helperText="Boolean approach"
  renderLabel={<span>Checkbox Field List ✅</span>}
  options={[
    { name: 'feature', label: 'A', value: 'A' },
    { name: 'feature', label: 'B', value: 'B' },
    { name: 'feature', label: 'C', value: 'C' },
    { name: 'feature', label: 'D', value: 'D' }
  ]}
/>

This will create a value like this

{
  "feature": [
    "D",
    "B"
  ]
}

Input Listener

The input listener actually renders a Field component from react-final-form with the same input name that the field that we want to change and uses the onChange function to update its value.

import { Form } from 'react-final-form';
import { TextField } from '@comparaonline/ui-form-fields';
import { InputListener } from '@comparaonline/ui-input-listener';

const onSubmit = () => undefined;

<Form onSubmit={onSubmit}>
  {({ handleSubmit }) => (
    <form onSubmit={handleSubmit}>
      <TextField
        name="inputA"
        label="Placa"
      />
      <TextField
        name="inputB"
        label="Placa"
      />
      <InputListener field="inputA" when={value => value === 'foo'} set="inputB" to={new Promise(resolve => resolve('new value'))} />
    </form>}
</Form>;
2.2.6

4 years ago

2.2.2

4 years ago

2.1.2-alpha.0

4 years ago

2.0.0

4 years ago

1.2.4

4 years ago

1.2.2

4 years ago

1.0.27

5 years ago

1.0.26

5 years ago

1.0.10

5 years ago

1.0.10-alpha.1

5 years ago

1.0.0

5 years ago

0.8.9-alpha.132

5 years ago

0.8.7-next.87

5 years ago

0.9.0-alpha.87

5 years ago

0.9.0-alpha.86

5 years ago

0.9.0-alpha.85

5 years ago

0.9.0-alpha.81

5 years ago

0.9.0-alpha.79

5 years ago

0.8.3

5 years ago

0.8.1

5 years ago

0.8.0

5 years ago

0.7.14

5 years ago

0.7.14-alpha.1

5 years ago

0.7.8

5 years ago

0.7.2

5 years ago

0.7.0

5 years ago

0.6.24

5 years ago

0.6.16

5 years ago

0.6.15

5 years ago

0.6.9

5 years ago

0.6.8

5 years ago

0.6.6

5 years ago

0.6.5

5 years ago

0.6.1

5 years ago

0.6.0

5 years ago

0.5.0

5 years ago

0.4.0

5 years ago

0.3.1

5 years ago

0.3.0

5 years ago

0.2.0

5 years ago

0.1.2

5 years ago

0.1.1

5 years ago

0.1.0

5 years ago

0.0.36-alpha.0

5 years ago

0.0.35-alpha.0

5 years ago

0.0.34-alpha.0

5 years ago

0.0.33-alpha.0

5 years ago

0.0.32-alpha.0

5 years ago

0.0.31-alpha.0

5 years ago

0.0.30-alpha.0

5 years ago

0.0.29-alpha.0

5 years ago

0.0.28-alpha.0

5 years ago

0.0.27-alpha.0

5 years ago

0.0.26-alpha.0

5 years ago

0.0.25-alpha.0

5 years ago

0.0.24-alpha.0

5 years ago

0.0.23-alpha.0

5 years ago

0.0.22-alpha.0

5 years ago

0.0.21-alpha.0

5 years ago

0.0.20-alpha.0

5 years ago

0.0.19-alpha.0

5 years ago

0.0.18-alpha.0

5 years ago

0.0.17-alpha.0

5 years ago

0.0.16-alpha.0

5 years ago

0.0.15-alpha.0

5 years ago

0.0.14-alpha.0

5 years ago

0.0.13-alpha.0

5 years ago

0.0.12-alpha.0

5 years ago

0.0.11-alpha.0

5 years ago

0.0.10-alpha.0

5 years ago

0.0.9-alpha.0

5 years ago

0.0.8-alpha.0

5 years ago

0.0.7-alpha.0

5 years ago

0.0.6-alpha.0

5 years ago

0.0.5-alpha.0

5 years ago

0.0.4-alpha.0

5 years ago

0.0.3-alpha.0

5 years ago

0.0.2-alpha.0

5 years ago