import React from 'react';
import dataful from 'react-dataful';
const MyForm = ({ data, children }) =>
(<Form>{children}</Form>);
const EmailInput = ({ data, update }) => (
<input
type="email"
value={data}
onChange={e => update({ $set: e.target.value })}
/>
);
const DatafulEmailInput = dataful({ editable: true })(EmailInput);
const MyDatafulForm = dataful({ editable: true })(MyForm)
ReactDOM.render(
<MyDatafulForm
data={{ email: 'abc@xyz.com' }}
onChange={data => console.log('Data changed:', data)}
/>
<EmailInput scope={['email']} />
</MyDatafulForm>
);