0.0.4 • Published 6 years ago
@digifi-los/form-creator v0.0.4
DigiFi Form Creator
Form Creator is a class that helps with creating a Responsive Form manifest. By using the given class methods, you can easily add formElements (as well as other fields) to the Responsive Form.
Class Methods
addFormElements(options) - Allows you to add form elements to form
| Options Properties | Type | Required | Example |
|---|---|---|---|
| gridProps | Object | N | { className: 'test' } |
| validations | Object | N | { full_name: { constraint: 'presence', message: '^Required', } } |
| < Any Property Name > | Object | Y | { type: 'text', name: 'full_name', placeholder: 'Full Name', hasValidations: true, } |
Example Code
instance.addFormElements({
gridProps: {
key: 'randomKey()',
},
validations: {
'address_street': [{
constraint: 'presence',
message: '^Your home address is required.',
}, {
constraint: 'length',
maximum: 100,
}]
},
group1: {
type: 'text',
label: 'Home Address',
name: 'address_street',
placeholder: 'Street Address',
hasValidations: true,
},
});addFields(property, value) - Allows you to add properties directly to the form. Will unflatten nested objects
| Parameters | Type | Required | Example |
|---|---|---|---|
| property | String | Y | 'props.ref' |
| value | Any | Y | true |
Example Code
instance.addFields('props.ref', true); // sets unflattened props.ref to true on the formaddOnSubmit(options)- Allows you to directly modify the onSubmit property for the form
| Options Properties | Type | Required | Example |
|---|---|---|---|
| url | String | Y | '/application/form_submission' |
| method | String | Y | 'post' |
| successCallback | String | N | 'func:this.props.loginUser' |
| errorCallback | String | N | 'func:this.props.reduxRouter.push' |
Example Code
instance.addOnSubmit({
url: '/application/form_submission',
method: 'post',
successCallback: 'func:this.props.loginUser',
errorCallback: 'func:this.props.reduxRouter.push',
});getForm - Returns the form manifest
Example Code
instance.getForm();Install
To install
$ npm install @digifi-los/form-creator --save
To uninstall
$ npm uninstall @digifi-los/form-creator --save
Development
Make sure you have grunt installed
$ npm install -g grunt-cli jsdoc-to-markdown
For generating markdown documentation
$ grunt doc
$ jsdoc2md lib/*.js index.js > doc/api.mdTesting
Make sure you have grunt installed
Run the following command to test and return coverage
$ grunt test