2018-05-21 15:03:46 -05:00
|
|
|
// License: LGPL-3.0-or-later
|
|
|
|
import * as React from 'react';
|
|
|
|
import {observer} from "mobx-react";
|
|
|
|
import {Field} from "../../../../types/mobx-react-form";
|
|
|
|
import LabeledFieldComponent from "./LabeledFieldComponent";
|
|
|
|
import {injectIntl, InjectedIntl} from 'react-intl';
|
2018-06-29 12:42:56 -05:00
|
|
|
import {HoudiniField} from "../../lib/houdini_form";
|
2018-05-21 15:03:46 -05:00
|
|
|
|
|
|
|
|
|
|
|
export const BasicField = injectIntl(observer((props:{field:Field, intl?:InjectedIntl, wrapperClassName?:string}) =>{
|
2018-06-29 12:42:56 -05:00
|
|
|
let field = props.field as HoudiniField
|
2018-05-21 15:03:46 -05:00
|
|
|
return <LabeledFieldComponent
|
2018-06-29 12:42:56 -05:00
|
|
|
inputId={props.field.id} labelText={field.label} inError={field.hasError} error={field.error}
|
|
|
|
inStickyError={field.hasServerError} stickyError={field.serverError}
|
|
|
|
className={props.wrapperClassName} >
|
2018-05-21 15:03:46 -05:00
|
|
|
|
2018-07-06 15:51:58 -05:00
|
|
|
<input {...props.field.bind()} placeholder={field.placeholder ? props.intl.formatMessage({id:field.placeholder}) : undefined} className="form-control"/>
|
2018-05-21 15:03:46 -05:00
|
|
|
</LabeledFieldComponent>
|
|
|
|
}))
|