@@ -11,7 +11,7 @@ import Validator from 'validate-framework-utils';
1111 * @param methods Extended Validation Method
1212 * @return Component
1313 */
14- export default ( schemas = { } , methods ) => FormComponent => (
14+ export default ( schemas , methods ) => FormComponent => (
1515
1616 /**
1717 * Returns a react form
@@ -145,11 +145,17 @@ export default (schemas = {}, methods) => FormComponent => (
145145 Object . assign ( classNames , classes ) ;
146146 // Initialize
147147 Object . keys ( values ) . forEach ( ( name ) => {
148+ const value = values [ name ] ;
148149 fields [ name ] = {
149150 className : classNames . static ,
150- value : values [ name ] ,
151+ value,
151152 } ;
153+ // Synchronize values external state
154+ if ( this . props . values ) {
155+ this . props . values [ name ] = value ;
156+ }
152157 } ) ;
158+ return this ;
153159 } ;
154160
155161 /**
@@ -255,17 +261,13 @@ export default (schemas = {}, methods) => FormComponent => (
255261 // Initializes
256262 this . init ( values ) ;
257263 Object . keys ( values ) . forEach ( ( name ) => {
258- const value = values [ name ] ;
259- // Synchronize values external state
260- if ( this . props . values ) {
261- this . props . values [ name ] = value ;
262- }
263- this . validateField ( name , value ) ;
264+ this . validateField ( name , values [ name ] ) ;
264265 } ) ;
265266 // Update
266267 this . setState ( {
267268 fields,
268269 } ) ;
270+ return this ;
269271 } ;
270272
271273 /**
@@ -274,6 +276,7 @@ export default (schemas = {}, methods) => FormComponent => (
274276 */
275277 addSchemas = ( schema ) => {
276278 Object . assign ( this . schemas , schema ) ;
279+ return this ;
277280 } ;
278281
279282 /**
@@ -291,32 +294,29 @@ export default (schemas = {}, methods) => FormComponent => (
291294 this . setState ( {
292295 fields,
293296 } ) ;
297+ return this ;
294298 } ;
295299
296300 /**
297301 * Add one or more fields
298- * @param newFields
302+ * @param values
299303 */
300- addFields = ( newFields ) => {
301- const { classNames } = this . props ;
304+ addValues = ( values ) => {
302305 const { fields } = this . state ;
303- Object . keys ( newFields ) . forEach ( ( name ) => {
304- Object . assign ( newFields [ name ] , {
305- className : classNames . static ,
306- } ) ;
307- } ) ;
308- Object . assign ( fields , newFields ) ;
306+ // Initializes
307+ this . init ( values ) ;
309308 // Update
310309 this . setState ( {
311310 fields,
312311 } ) ;
312+ return this ;
313313 } ;
314314
315315 /**
316316 * Deletes one or more fields
317317 * @param names
318318 */
319- removeFields = ( ...names ) => {
319+ removeValues = ( ...names ) => {
320320 const { fields } = this . state ;
321321 names . forEach ( ( name ) => {
322322 delete fields [ name ] ;
@@ -325,6 +325,7 @@ export default (schemas = {}, methods) => FormComponent => (
325325 this . setState ( {
326326 fields,
327327 } ) ;
328+ return this ;
328329 } ;
329330
330331 /**
0 commit comments