@digifi-los/form-creator

0.0.4 • Public • Published

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

Readme

Keywords

none

Package Sidebar

Install

npm i @digifi-los/form-creator

Weekly Downloads

3

Version

0.0.4

License

UNLICENSED

Unpacked Size

1.21 MB

Total Files

58

Last publish

Collaborators

  • alexey.maslovsky
  • promisefinorg
  • ilya.tishonok
  • dvovna