@digifi-los/form-creator
v0.0.4
Published
DigiFi Form Creator
Downloads
9
Keywords
Readme
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 form
addOnSubmit(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.md
Testing
Make sure you have grunt installed
Run the following command to test and return coverage
$ grunt test