1 | import React from 'react';
|
2 | import { FieldRender } from './FieldRender';
|
3 | import FieldBuilder from './utils/builders/FieldBuilder';
|
4 | export class FieldsRender extends React.PureComponent {
|
5 | constructor() {
|
6 | super(...arguments);
|
7 | this.changeField = (event, callback) => {
|
8 | const { changeField } = this.props;
|
9 | changeField && changeField(event, callback);
|
10 | };
|
11 | }
|
12 | |
13 |
|
14 |
|
15 |
|
16 |
|
17 |
|
18 | render() {
|
19 | const { getSteps, fields, globalProps, grid } = this.props;
|
20 | return (React.createElement(React.Fragment, null, fields.map(field => {
|
21 | if (field instanceof FieldBuilder && globalProps)
|
22 | field.globalProps = globalProps;
|
23 | return (React.createElement(FieldRender, Object.assign({ key: field.name, field: (field instanceof FieldBuilder && field) ||
|
24 | new FieldBuilder(field) }, {
|
25 | getSteps,
|
26 | changeField: this.changeField,
|
27 | getFields: () => this.props.fields,
|
28 | grid,
|
29 | })));
|
30 | })));
|
31 | }
|
32 | }
|
33 | FieldsRender.defaultProps = {
|
34 | ns: 'inputs',
|
35 | transPosition: '',
|
36 | };
|
37 | export default FieldsRender;
|
38 |
|
\ | No newline at end of file |