New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@codegateinc/react-form-builder-v2

Package Overview
Dependencies
Maintainers
3
Versions
58
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@codegateinc/react-form-builder-v2 - npm Package Compare versions

Comparing version 1.3.3 to 1.3.4

src/tests/isValid.test.ts

18

dist/react-form-builder-v2.cjs.development.js

@@ -35,3 +35,3 @@ 'use strict';

var computeErrorMessage = function computeErrorMessage(value, forceCheck) {
var _computeErrorMessage4 = function computeErrorMessage(value, forceCheck) {
var _firstError$errorMess;

@@ -95,3 +95,3 @@

isPristine: prevState != null && prevState.isPristine ? (_fieldConfig$validate2 = fieldConfig.validateOnBlur) != null ? _fieldConfig$validate2 : false : prevState == null ? void 0 : prevState.isPristine
}, fieldConfig.validateOnBlur && !prevState.hasError ? {} : computeErrorMessage(newValue, true));
}, fieldConfig.validateOnBlur && !prevState.hasError ? {} : _computeErrorMessage4(newValue, true));
});

@@ -104,3 +104,3 @@ },

var _computeErrorMessage = computeErrorMessage(field == null ? void 0 : field.value, true),
var _computeErrorMessage = _computeErrorMessage4(field == null ? void 0 : field.value, true),
hasError = _computeErrorMessage.hasError,

@@ -119,3 +119,3 @@ errorMessage = _computeErrorMessage.errorMessage;

validateOnSubmit: function validateOnSubmit() {
var _computeErrorMessage2 = computeErrorMessage(field == null ? void 0 : field.value),
var _computeErrorMessage2 = _computeErrorMessage4(field == null ? void 0 : field.value),
hasError = _computeErrorMessage2.hasError,

@@ -165,3 +165,3 @@ errorMessage = _computeErrorMessage2.errorMessage;

validate: function validate() {
var _computeErrorMessage3 = computeErrorMessage(field == null ? void 0 : field.value, true),
var _computeErrorMessage3 = _computeErrorMessage4(field == null ? void 0 : field.value, true),
hasError = _computeErrorMessage3.hasError,

@@ -177,2 +177,5 @@ errorMessage = _computeErrorMessage3.errorMessage;

return hasError;
},
computeErrorMessage: function computeErrorMessage(value) {
return _computeErrorMessage4(value, true);
}

@@ -296,2 +299,7 @@ });

}),
isValid: Object.values(form).filter(function (item) {
return item.isRequired;
}).every(function (item) {
return Boolean(item.value) && !ramda.isEmpty(item.value) && item.computeErrorMessage(item.value).hasError === false;
}),
formHasChanges: function formHasChanges() {

@@ -298,0 +306,0 @@ return Object.values(form).some(function (field) {

@@ -1,2 +0,2 @@

"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("ramda");function n(){return(n=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var n=arguments[r];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}var i=function(e){var i,t,u,a,l,o,s,c=e.fieldConfig,f=e.field,v=e.setField,d=e.parentKey,h=function(e,n){var i,t,u;if(void 0===n&&(n=!1),!n&&null!=f&&f.isPristine&&!c.isRequired||!c.validationRules)return{errorMessage:"",hasError:!1};if(c.isRequired&&r.isEmpty(e))return{errorMessage:null!=(t=null==(u=c.validationRules[0])?void 0:u.errorMessage)?t:"",hasError:!0};if(!c.isRequired&&!Boolean(e)&&!c.validationRules)return{errorMessage:"",hasError:!1};var a=c.validationRules.find((function(r){return!r.validate(e)}));return{errorMessage:null!=(i=null==a?void 0:a.errorMessage)?i:"",hasError:Boolean(null==a?void 0:a.errorMessage)}};return n({},c,{validationRules:null!=(i=c.validationRules)?i:[],value:f?f.value:c.initialValue,hasChange:(null==f?void 0:f.value)!==(null==f?void 0:f.localInitialValue),isPristine:null==(t=null==f?void 0:f.isPristine)||t,parentKey:void 0===d?"":d,hasError:null!=(u=null==f?void 0:f.hasError)&&u,isRequired:null!=(a=c.isRequired)&&a,validateOnBlur:null!=(l=c.validateOnBlur)&&l,localInitialValue:null!=(o=c.initialValue)?o:"",errorMessage:null!=(s=null==f?void 0:f.errorMessage)?s:"",onChangeValue:function(e){return v((function(r){var i,t=c.liveParser?c.liveParser(e):e;return n({},r,{value:t,hasChange:e!==(null==r?void 0:r.localInitialValue),isPristine:null!=r&&r.isPristine?null!=(i=c.validateOnBlur)&&i:null==r?void 0:r.isPristine},c.validateOnBlur&&!r.hasError?{}:h(t,!0))}))},onBlur:function(){if(c.validateOnBlur){var e=h(null==f?void 0:f.value,!0),i=e.hasError,t=e.errorMessage,u=!c.isRequired&&r.isEmpty(null==f?void 0:f.value);v((function(e){return n({},e,{isPristine:u,errorMessage:u?"":t,hasError:!u&&i})}))}},validateOnSubmit:function(){var e=h(null==f?void 0:f.value),r=e.hasError,i=e.errorMessage;return v((function(e){return n({},e,{errorMessage:i,hasError:r})})),{hasError:r,errorMessage:i}},onChangeInitialValue:function(e){(null==f?void 0:f.localInitialValue)!==e&&v((function(r){return n({},r,{localInitialValue:e})}))},setError:function(e){return v((function(r){return n({},r,{errorMessage:e,hasError:Boolean(e)})}))},resetState:function(){return v((function(e){return n({},e,{isPristine:!0,hasError:!1,errorMessage:"",value:e.localInitialValue})}))},validate:function(){var e=h(null==f?void 0:f.value,!0),r=e.hasError,i=e.errorMessage;return v((function(e){return n({},e,{errorMessage:i,hasError:r})})),r}})},t=function(e,r){return function(e){return null!=e}(e)&&r(e)};exports.useField=function(r){var n=e.useState({value:r.initialValue,localInitialValue:r.initialValue,isPristine:!0,errorMessage:"",hasError:!1});return i({fieldConfig:r,field:n[0],setField:n[1]})},exports.useForm=function(u,a){var l=Object.entries(u).reduce((function(e,r){var i;return n({},e,((i={})[r[0]]=r[1],i))}),{}),o=e.useState({}),s=o[0],c=o[1],f=e.useRef(s),v=n({},l,Object.entries(s).reduce((function(e,r){var i,t=r[0],u=r[1],a=u.parentKey.split(".").filter(Boolean);if(a.length>0){var l=a.reduce((function(r,i,t){var l,o;return n({},e,r,((o={})[i]=n({},e[i],r[i]||{},t===a.length-1?{children:[].concat((null==(l=r[i])?void 0:l.children)||[],[u])}:{}),o))}),{}),o=Object.keys(l).filter((function(e){return Object.keys(l[e]).length})).reduce((function(e,r){var i;return n({},e,((i={})[r]=l[r],i))}),{});return n({},e,o)}return n({},e,((i={})[t]=u,i))}),{})),d=Object.values(v).filter((function(e){return e.isRequired})).some((function(e){return Boolean(e.errorMessage)}));return e.useEffect((function(){f.current=s}),[s]),{form:v,hasError:d,isFilled:Object.values(v).filter((function(e){return e.isRequired})).every((function(e){return Boolean(e.value)&&!r.isEmpty(e.value)})),formHasChanges:function(){return Object.values(v).some((function(e){return e.hasChange}))},setError:function(e,r){v[e].setError(r),t(a.onError,(function(n){var i;return n(((i={})[e]=r,i))}))},setFieldValue:function(e,r){v[e].onChangeValue(r)},setFieldInitialValue:function(e,r){v[e].onChangeInitialValue(r)},addFields:function(e){return c((function(r){return n({},r,e.reduce((function(e,r){return n({},e,function e(r,t){var u;return r.children?r.children.reduce((function(i,u){return n({},i,e(u,t+"."+r.key))}),{}):((u={})[r.key]=i({fieldConfig:r,field:f[r.key],parentKey:t,setField:function(e){"function"==typeof e&&c((function(i){var t;return n({},i,((t={})[r.key]=n({},f.current[r.key],e(f.current[r.key])),t))}))}}),u)}(r,""))}),{}))}))},removeFieldIds:function(e){return c((function(r){return Object.keys(r).reduce((function(i,t){var u;return e.includes(t)?i:n({},i,((u={})[t]=r[t],u))}),{})}))},resetForm:function(){return Object.keys(v).forEach((function(e){return v[e].resetState()}))},submit:function(){var e=Object.keys(v).reduce((function(e,r){var i,t=v[r].validateOnSubmit(),u=t.errorMessage;return u?n({},e,((i={})[r]=u||(t.hasError?"This field is required":""),i)):e}),{});if(Object.values(e).length>0)return t(a.onError,(function(r){return r(e)}));var r=Object.keys(v).reduce((function(e,r){var i,t=v[r],u=t.value,a=t.submitParser;return n({},e,((i={})[r]=a?a(u):u,i))}),{});a.onSuccess(r)},validateAll:function(){return Object.values(v).some((function(e){return e.validate()}))}}};
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("ramda");function n(){return(n=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var n=arguments[r];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}var i=function(e){var i,u,t,a,l,o,s,c=e.fieldConfig,f=e.field,v=e.setField,d=e.parentKey,h=function(e,n){var i,u,t;if(void 0===n&&(n=!1),!n&&null!=f&&f.isPristine&&!c.isRequired||!c.validationRules)return{errorMessage:"",hasError:!1};if(c.isRequired&&r.isEmpty(e))return{errorMessage:null!=(u=null==(t=c.validationRules[0])?void 0:t.errorMessage)?u:"",hasError:!0};if(!c.isRequired&&!Boolean(e)&&!c.validationRules)return{errorMessage:"",hasError:!1};var a=c.validationRules.find((function(r){return!r.validate(e)}));return{errorMessage:null!=(i=null==a?void 0:a.errorMessage)?i:"",hasError:Boolean(null==a?void 0:a.errorMessage)}};return n({},c,{validationRules:null!=(i=c.validationRules)?i:[],value:f?f.value:c.initialValue,hasChange:(null==f?void 0:f.value)!==(null==f?void 0:f.localInitialValue),isPristine:null==(u=null==f?void 0:f.isPristine)||u,parentKey:void 0===d?"":d,hasError:null!=(t=null==f?void 0:f.hasError)&&t,isRequired:null!=(a=c.isRequired)&&a,validateOnBlur:null!=(l=c.validateOnBlur)&&l,localInitialValue:null!=(o=c.initialValue)?o:"",errorMessage:null!=(s=null==f?void 0:f.errorMessage)?s:"",onChangeValue:function(e){return v((function(r){var i,u=c.liveParser?c.liveParser(e):e;return n({},r,{value:u,hasChange:e!==(null==r?void 0:r.localInitialValue),isPristine:null!=r&&r.isPristine?null!=(i=c.validateOnBlur)&&i:null==r?void 0:r.isPristine},c.validateOnBlur&&!r.hasError?{}:h(u,!0))}))},onBlur:function(){if(c.validateOnBlur){var e=h(null==f?void 0:f.value,!0),i=e.hasError,u=e.errorMessage,t=!c.isRequired&&r.isEmpty(null==f?void 0:f.value);v((function(e){return n({},e,{isPristine:t,errorMessage:t?"":u,hasError:!t&&i})}))}},validateOnSubmit:function(){var e=h(null==f?void 0:f.value),r=e.hasError,i=e.errorMessage;return v((function(e){return n({},e,{errorMessage:i,hasError:r})})),{hasError:r,errorMessage:i}},onChangeInitialValue:function(e){(null==f?void 0:f.localInitialValue)!==e&&v((function(r){return n({},r,{localInitialValue:e})}))},setError:function(e){return v((function(r){return n({},r,{errorMessage:e,hasError:Boolean(e)})}))},resetState:function(){return v((function(e){return n({},e,{isPristine:!0,hasError:!1,errorMessage:"",value:e.localInitialValue})}))},validate:function(){var e=h(null==f?void 0:f.value,!0),r=e.hasError,i=e.errorMessage;return v((function(e){return n({},e,{errorMessage:i,hasError:r})})),r},computeErrorMessage:function(e){return h(e,!0)}})},u=function(e,r){return function(e){return null!=e}(e)&&r(e)};exports.useField=function(r){var n=e.useState({value:r.initialValue,localInitialValue:r.initialValue,isPristine:!0,errorMessage:"",hasError:!1});return i({fieldConfig:r,field:n[0],setField:n[1]})},exports.useForm=function(t,a){var l=Object.entries(t).reduce((function(e,r){var i;return n({},e,((i={})[r[0]]=r[1],i))}),{}),o=e.useState({}),s=o[0],c=o[1],f=e.useRef(s),v=n({},l,Object.entries(s).reduce((function(e,r){var i,u=r[0],t=r[1],a=t.parentKey.split(".").filter(Boolean);if(a.length>0){var l=a.reduce((function(r,i,u){var l,o;return n({},e,r,((o={})[i]=n({},e[i],r[i]||{},u===a.length-1?{children:[].concat((null==(l=r[i])?void 0:l.children)||[],[t])}:{}),o))}),{}),o=Object.keys(l).filter((function(e){return Object.keys(l[e]).length})).reduce((function(e,r){var i;return n({},e,((i={})[r]=l[r],i))}),{});return n({},e,o)}return n({},e,((i={})[u]=t,i))}),{})),d=Object.values(v).filter((function(e){return e.isRequired})).some((function(e){return Boolean(e.errorMessage)}));return e.useEffect((function(){f.current=s}),[s]),{form:v,hasError:d,isFilled:Object.values(v).filter((function(e){return e.isRequired})).every((function(e){return Boolean(e.value)&&!r.isEmpty(e.value)})),isValid:Object.values(v).filter((function(e){return e.isRequired})).every((function(e){return Boolean(e.value)&&!r.isEmpty(e.value)&&!1===e.computeErrorMessage(e.value).hasError})),formHasChanges:function(){return Object.values(v).some((function(e){return e.hasChange}))},setError:function(e,r){v[e].setError(r),u(a.onError,(function(n){var i;return n(((i={})[e]=r,i))}))},setFieldValue:function(e,r){v[e].onChangeValue(r)},setFieldInitialValue:function(e,r){v[e].onChangeInitialValue(r)},addFields:function(e){return c((function(r){return n({},r,e.reduce((function(e,r){return n({},e,function e(r,u){var t;return r.children?r.children.reduce((function(i,t){return n({},i,e(t,u+"."+r.key))}),{}):((t={})[r.key]=i({fieldConfig:r,field:f[r.key],parentKey:u,setField:function(e){"function"==typeof e&&c((function(i){var u;return n({},i,((u={})[r.key]=n({},f.current[r.key],e(f.current[r.key])),u))}))}}),t)}(r,""))}),{}))}))},removeFieldIds:function(e){return c((function(r){return Object.keys(r).reduce((function(i,u){var t;return e.includes(u)?i:n({},i,((t={})[u]=r[u],t))}),{})}))},resetForm:function(){return Object.keys(v).forEach((function(e){return v[e].resetState()}))},submit:function(){var e=Object.keys(v).reduce((function(e,r){var i,u=v[r].validateOnSubmit(),t=u.errorMessage;return t?n({},e,((i={})[r]=t||(u.hasError?"This field is required":""),i)):e}),{});if(Object.values(e).length>0)return u(a.onError,(function(r){return r(e)}));var r=Object.keys(v).reduce((function(e,r){var i,u=v[r],t=u.value,a=u.submitParser;return n({},e,((i={})[r]=a?a(t):t,i))}),{});a.onSuccess(r)},validateAll:function(){return Object.values(v).some((function(e){return e.validate()}))}}};
//# sourceMappingURL=react-form-builder-v2.cjs.production.min.js.map

@@ -31,3 +31,3 @@ import { useState, useRef, useEffect } from 'react';

var computeErrorMessage = function computeErrorMessage(value, forceCheck) {
var _computeErrorMessage4 = function computeErrorMessage(value, forceCheck) {
var _firstError$errorMess;

@@ -91,3 +91,3 @@

isPristine: prevState != null && prevState.isPristine ? (_fieldConfig$validate2 = fieldConfig.validateOnBlur) != null ? _fieldConfig$validate2 : false : prevState == null ? void 0 : prevState.isPristine
}, fieldConfig.validateOnBlur && !prevState.hasError ? {} : computeErrorMessage(newValue, true));
}, fieldConfig.validateOnBlur && !prevState.hasError ? {} : _computeErrorMessage4(newValue, true));
});

@@ -100,3 +100,3 @@ },

var _computeErrorMessage = computeErrorMessage(field == null ? void 0 : field.value, true),
var _computeErrorMessage = _computeErrorMessage4(field == null ? void 0 : field.value, true),
hasError = _computeErrorMessage.hasError,

@@ -115,3 +115,3 @@ errorMessage = _computeErrorMessage.errorMessage;

validateOnSubmit: function validateOnSubmit() {
var _computeErrorMessage2 = computeErrorMessage(field == null ? void 0 : field.value),
var _computeErrorMessage2 = _computeErrorMessage4(field == null ? void 0 : field.value),
hasError = _computeErrorMessage2.hasError,

@@ -161,3 +161,3 @@ errorMessage = _computeErrorMessage2.errorMessage;

validate: function validate() {
var _computeErrorMessage3 = computeErrorMessage(field == null ? void 0 : field.value, true),
var _computeErrorMessage3 = _computeErrorMessage4(field == null ? void 0 : field.value, true),
hasError = _computeErrorMessage3.hasError,

@@ -173,2 +173,5 @@ errorMessage = _computeErrorMessage3.errorMessage;

return hasError;
},
computeErrorMessage: function computeErrorMessage(value) {
return _computeErrorMessage4(value, true);
}

@@ -292,2 +295,7 @@ });

}),
isValid: Object.values(form).filter(function (item) {
return item.isRequired;
}).every(function (item) {
return Boolean(item.value) && !isEmpty(item.value) && item.computeErrorMessage(item.value).hasError === false;
}),
formHasChanges: function formHasChanges() {

@@ -294,0 +302,0 @@ return Object.values(form).some(function (field) {

@@ -34,3 +34,3 @@ (function (global, factory) {

var computeErrorMessage = function computeErrorMessage(value, forceCheck) {
var _computeErrorMessage4 = function computeErrorMessage(value, forceCheck) {
var _firstError$errorMess;

@@ -94,3 +94,3 @@

isPristine: prevState != null && prevState.isPristine ? (_fieldConfig$validate2 = fieldConfig.validateOnBlur) != null ? _fieldConfig$validate2 : false : prevState == null ? void 0 : prevState.isPristine
}, fieldConfig.validateOnBlur && !prevState.hasError ? {} : computeErrorMessage(newValue, true));
}, fieldConfig.validateOnBlur && !prevState.hasError ? {} : _computeErrorMessage4(newValue, true));
});

@@ -103,3 +103,3 @@ },

var _computeErrorMessage = computeErrorMessage(field == null ? void 0 : field.value, true),
var _computeErrorMessage = _computeErrorMessage4(field == null ? void 0 : field.value, true),
hasError = _computeErrorMessage.hasError,

@@ -118,3 +118,3 @@ errorMessage = _computeErrorMessage.errorMessage;

validateOnSubmit: function validateOnSubmit() {
var _computeErrorMessage2 = computeErrorMessage(field == null ? void 0 : field.value),
var _computeErrorMessage2 = _computeErrorMessage4(field == null ? void 0 : field.value),
hasError = _computeErrorMessage2.hasError,

@@ -164,3 +164,3 @@ errorMessage = _computeErrorMessage2.errorMessage;

validate: function validate() {
var _computeErrorMessage3 = computeErrorMessage(field == null ? void 0 : field.value, true),
var _computeErrorMessage3 = _computeErrorMessage4(field == null ? void 0 : field.value, true),
hasError = _computeErrorMessage3.hasError,

@@ -176,2 +176,5 @@ errorMessage = _computeErrorMessage3.errorMessage;

return hasError;
},
computeErrorMessage: function computeErrorMessage(value) {
return _computeErrorMessage4(value, true);
}

@@ -295,2 +298,7 @@ });

}),
isValid: Object.values(form).filter(function (item) {
return item.isRequired;
}).every(function (item) {
return Boolean(item.value) && !ramda.isEmpty(item.value) && item.computeErrorMessage(item.value).hasError === false;
}),
formHasChanges: function formHasChanges() {

@@ -297,0 +305,0 @@ return Object.values(form).some(function (field) {

@@ -1,2 +0,2 @@

!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("react"),require("ramda")):"function"==typeof define&&define.amd?define(["exports","react","ramda"],r):r((e=e||self)["@codegateinc/react-form-builder-v2"]={},e.React,e.ramda)}(this,(function(e,r,n){"use strict";function i(){return(i=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var n=arguments[r];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}var t=function(e){var r,t,u,a,l,o,s,c=e.fieldConfig,f=e.field,d=e.setField,v=e.parentKey,h=function(e,r){var i,t,u;if(void 0===r&&(r=!1),!r&&null!=f&&f.isPristine&&!c.isRequired||!c.validationRules)return{errorMessage:"",hasError:!1};if(c.isRequired&&n.isEmpty(e))return{errorMessage:null!=(t=null==(u=c.validationRules[0])?void 0:u.errorMessage)?t:"",hasError:!0};if(!c.isRequired&&!Boolean(e)&&!c.validationRules)return{errorMessage:"",hasError:!1};var a=c.validationRules.find((function(r){return!r.validate(e)}));return{errorMessage:null!=(i=null==a?void 0:a.errorMessage)?i:"",hasError:Boolean(null==a?void 0:a.errorMessage)}};return i({},c,{validationRules:null!=(r=c.validationRules)?r:[],value:f?f.value:c.initialValue,hasChange:(null==f?void 0:f.value)!==(null==f?void 0:f.localInitialValue),isPristine:null==(t=null==f?void 0:f.isPristine)||t,parentKey:void 0===v?"":v,hasError:null!=(u=null==f?void 0:f.hasError)&&u,isRequired:null!=(a=c.isRequired)&&a,validateOnBlur:null!=(l=c.validateOnBlur)&&l,localInitialValue:null!=(o=c.initialValue)?o:"",errorMessage:null!=(s=null==f?void 0:f.errorMessage)?s:"",onChangeValue:function(e){return d((function(r){var n,t=c.liveParser?c.liveParser(e):e;return i({},r,{value:t,hasChange:e!==(null==r?void 0:r.localInitialValue),isPristine:null!=r&&r.isPristine?null!=(n=c.validateOnBlur)&&n:null==r?void 0:r.isPristine},c.validateOnBlur&&!r.hasError?{}:h(t,!0))}))},onBlur:function(){if(c.validateOnBlur){var e=h(null==f?void 0:f.value,!0),r=e.hasError,t=e.errorMessage,u=!c.isRequired&&n.isEmpty(null==f?void 0:f.value);d((function(e){return i({},e,{isPristine:u,errorMessage:u?"":t,hasError:!u&&r})}))}},validateOnSubmit:function(){var e=h(null==f?void 0:f.value),r=e.hasError,n=e.errorMessage;return d((function(e){return i({},e,{errorMessage:n,hasError:r})})),{hasError:r,errorMessage:n}},onChangeInitialValue:function(e){(null==f?void 0:f.localInitialValue)!==e&&d((function(r){return i({},r,{localInitialValue:e})}))},setError:function(e){return d((function(r){return i({},r,{errorMessage:e,hasError:Boolean(e)})}))},resetState:function(){return d((function(e){return i({},e,{isPristine:!0,hasError:!1,errorMessage:"",value:e.localInitialValue})}))},validate:function(){var e=h(null==f?void 0:f.value,!0),r=e.hasError,n=e.errorMessage;return d((function(e){return i({},e,{errorMessage:n,hasError:r})})),r}})},u=function(e,r){return function(e){return null!=e}(e)&&r(e)};e.useField=function(e){var n=r.useState({value:e.initialValue,localInitialValue:e.initialValue,isPristine:!0,errorMessage:"",hasError:!1});return t({fieldConfig:e,field:n[0],setField:n[1]})},e.useForm=function(e,a){var l=Object.entries(e).reduce((function(e,r){var n;return i({},e,((n={})[r[0]]=r[1],n))}),{}),o=r.useState({}),s=o[0],c=o[1],f=r.useRef(s),d=i({},l,Object.entries(s).reduce((function(e,r){var n,t=r[0],u=r[1],a=u.parentKey.split(".").filter(Boolean);if(a.length>0){var l=a.reduce((function(r,n,t){var l,o;return i({},e,r,((o={})[n]=i({},e[n],r[n]||{},t===a.length-1?{children:[].concat((null==(l=r[n])?void 0:l.children)||[],[u])}:{}),o))}),{}),o=Object.keys(l).filter((function(e){return Object.keys(l[e]).length})).reduce((function(e,r){var n;return i({},e,((n={})[r]=l[r],n))}),{});return i({},e,o)}return i({},e,((n={})[t]=u,n))}),{})),v=Object.values(d).filter((function(e){return e.isRequired})).some((function(e){return Boolean(e.errorMessage)}));return r.useEffect((function(){f.current=s}),[s]),{form:d,hasError:v,isFilled:Object.values(d).filter((function(e){return e.isRequired})).every((function(e){return Boolean(e.value)&&!n.isEmpty(e.value)})),formHasChanges:function(){return Object.values(d).some((function(e){return e.hasChange}))},setError:function(e,r){d[e].setError(r),u(a.onError,(function(n){var i;return n(((i={})[e]=r,i))}))},setFieldValue:function(e,r){d[e].onChangeValue(r)},setFieldInitialValue:function(e,r){d[e].onChangeInitialValue(r)},addFields:function(e){return c((function(r){return i({},r,e.reduce((function(e,r){return i({},e,function e(r,n){var u;return r.children?r.children.reduce((function(t,u){return i({},t,e(u,n+"."+r.key))}),{}):((u={})[r.key]=t({fieldConfig:r,field:f[r.key],parentKey:n,setField:function(e){"function"==typeof e&&c((function(n){var t;return i({},n,((t={})[r.key]=i({},f.current[r.key],e(f.current[r.key])),t))}))}}),u)}(r,""))}),{}))}))},removeFieldIds:function(e){return c((function(r){return Object.keys(r).reduce((function(n,t){var u;return e.includes(t)?n:i({},n,((u={})[t]=r[t],u))}),{})}))},resetForm:function(){return Object.keys(d).forEach((function(e){return d[e].resetState()}))},submit:function(){var e=Object.keys(d).reduce((function(e,r){var n,t=d[r].validateOnSubmit(),u=t.errorMessage;return u?i({},e,((n={})[r]=u||(t.hasError?"This field is required":""),n)):e}),{});if(Object.values(e).length>0)return u(a.onError,(function(r){return r(e)}));var r=Object.keys(d).reduce((function(e,r){var n,t=d[r],u=t.value,a=t.submitParser;return i({},e,((n={})[r]=a?a(u):u,n))}),{});a.onSuccess(r)},validateAll:function(){return Object.values(d).some((function(e){return e.validate()}))}}},Object.defineProperty(e,"__esModule",{value:!0})}));
!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("react"),require("ramda")):"function"==typeof define&&define.amd?define(["exports","react","ramda"],r):r((e=e||self)["@codegateinc/react-form-builder-v2"]={},e.React,e.ramda)}(this,(function(e,r,n){"use strict";function i(){return(i=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var n=arguments[r];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}var t=function(e){var r,t,u,a,l,o,s,c=e.fieldConfig,f=e.field,d=e.setField,v=e.parentKey,h=function(e,r){var i,t,u;if(void 0===r&&(r=!1),!r&&null!=f&&f.isPristine&&!c.isRequired||!c.validationRules)return{errorMessage:"",hasError:!1};if(c.isRequired&&n.isEmpty(e))return{errorMessage:null!=(t=null==(u=c.validationRules[0])?void 0:u.errorMessage)?t:"",hasError:!0};if(!c.isRequired&&!Boolean(e)&&!c.validationRules)return{errorMessage:"",hasError:!1};var a=c.validationRules.find((function(r){return!r.validate(e)}));return{errorMessage:null!=(i=null==a?void 0:a.errorMessage)?i:"",hasError:Boolean(null==a?void 0:a.errorMessage)}};return i({},c,{validationRules:null!=(r=c.validationRules)?r:[],value:f?f.value:c.initialValue,hasChange:(null==f?void 0:f.value)!==(null==f?void 0:f.localInitialValue),isPristine:null==(t=null==f?void 0:f.isPristine)||t,parentKey:void 0===v?"":v,hasError:null!=(u=null==f?void 0:f.hasError)&&u,isRequired:null!=(a=c.isRequired)&&a,validateOnBlur:null!=(l=c.validateOnBlur)&&l,localInitialValue:null!=(o=c.initialValue)?o:"",errorMessage:null!=(s=null==f?void 0:f.errorMessage)?s:"",onChangeValue:function(e){return d((function(r){var n,t=c.liveParser?c.liveParser(e):e;return i({},r,{value:t,hasChange:e!==(null==r?void 0:r.localInitialValue),isPristine:null!=r&&r.isPristine?null!=(n=c.validateOnBlur)&&n:null==r?void 0:r.isPristine},c.validateOnBlur&&!r.hasError?{}:h(t,!0))}))},onBlur:function(){if(c.validateOnBlur){var e=h(null==f?void 0:f.value,!0),r=e.hasError,t=e.errorMessage,u=!c.isRequired&&n.isEmpty(null==f?void 0:f.value);d((function(e){return i({},e,{isPristine:u,errorMessage:u?"":t,hasError:!u&&r})}))}},validateOnSubmit:function(){var e=h(null==f?void 0:f.value),r=e.hasError,n=e.errorMessage;return d((function(e){return i({},e,{errorMessage:n,hasError:r})})),{hasError:r,errorMessage:n}},onChangeInitialValue:function(e){(null==f?void 0:f.localInitialValue)!==e&&d((function(r){return i({},r,{localInitialValue:e})}))},setError:function(e){return d((function(r){return i({},r,{errorMessage:e,hasError:Boolean(e)})}))},resetState:function(){return d((function(e){return i({},e,{isPristine:!0,hasError:!1,errorMessage:"",value:e.localInitialValue})}))},validate:function(){var e=h(null==f?void 0:f.value,!0),r=e.hasError,n=e.errorMessage;return d((function(e){return i({},e,{errorMessage:n,hasError:r})})),r},computeErrorMessage:function(e){return h(e,!0)}})},u=function(e,r){return function(e){return null!=e}(e)&&r(e)};e.useField=function(e){var n=r.useState({value:e.initialValue,localInitialValue:e.initialValue,isPristine:!0,errorMessage:"",hasError:!1});return t({fieldConfig:e,field:n[0],setField:n[1]})},e.useForm=function(e,a){var l=Object.entries(e).reduce((function(e,r){var n;return i({},e,((n={})[r[0]]=r[1],n))}),{}),o=r.useState({}),s=o[0],c=o[1],f=r.useRef(s),d=i({},l,Object.entries(s).reduce((function(e,r){var n,t=r[0],u=r[1],a=u.parentKey.split(".").filter(Boolean);if(a.length>0){var l=a.reduce((function(r,n,t){var l,o;return i({},e,r,((o={})[n]=i({},e[n],r[n]||{},t===a.length-1?{children:[].concat((null==(l=r[n])?void 0:l.children)||[],[u])}:{}),o))}),{}),o=Object.keys(l).filter((function(e){return Object.keys(l[e]).length})).reduce((function(e,r){var n;return i({},e,((n={})[r]=l[r],n))}),{});return i({},e,o)}return i({},e,((n={})[t]=u,n))}),{})),v=Object.values(d).filter((function(e){return e.isRequired})).some((function(e){return Boolean(e.errorMessage)}));return r.useEffect((function(){f.current=s}),[s]),{form:d,hasError:v,isFilled:Object.values(d).filter((function(e){return e.isRequired})).every((function(e){return Boolean(e.value)&&!n.isEmpty(e.value)})),isValid:Object.values(d).filter((function(e){return e.isRequired})).every((function(e){return Boolean(e.value)&&!n.isEmpty(e.value)&&!1===e.computeErrorMessage(e.value).hasError})),formHasChanges:function(){return Object.values(d).some((function(e){return e.hasChange}))},setError:function(e,r){d[e].setError(r),u(a.onError,(function(n){var i;return n(((i={})[e]=r,i))}))},setFieldValue:function(e,r){d[e].onChangeValue(r)},setFieldInitialValue:function(e,r){d[e].onChangeInitialValue(r)},addFields:function(e){return c((function(r){return i({},r,e.reduce((function(e,r){return i({},e,function e(r,n){var u;return r.children?r.children.reduce((function(t,u){return i({},t,e(u,n+"."+r.key))}),{}):((u={})[r.key]=t({fieldConfig:r,field:f[r.key],parentKey:n,setField:function(e){"function"==typeof e&&c((function(n){var t;return i({},n,((t={})[r.key]=i({},f.current[r.key],e(f.current[r.key])),t))}))}}),u)}(r,""))}),{}))}))},removeFieldIds:function(e){return c((function(r){return Object.keys(r).reduce((function(n,t){var u;return e.includes(t)?n:i({},n,((u={})[t]=r[t],u))}),{})}))},resetForm:function(){return Object.keys(d).forEach((function(e){return d[e].resetState()}))},submit:function(){var e=Object.keys(d).reduce((function(e,r){var n,t=d[r].validateOnSubmit(),u=t.errorMessage;return u?i({},e,((n={})[r]=u||(t.hasError?"This field is required":""),n)):e}),{});if(Object.values(e).length>0)return u(a.onError,(function(r){return r(e)}));var r=Object.keys(d).reduce((function(e,r){var n,t=d[r],u=t.value,a=t.submitParser;return i({},e,((n={})[r]=a?a(u):u,n))}),{});a.onSuccess(r)},validateAll:function(){return Object.values(d).some((function(e){return e.validate()}))}}},Object.defineProperty(e,"__esModule",{value:!0})}));
//# sourceMappingURL=react-form-builder-v2.umd.production.min.js.map

@@ -6,3 +6,3 @@ {

"typings": "index.d.ts",
"version": "1.3.3",
"version": "1.3.4",
"main": "dist/index.js",

@@ -9,0 +9,0 @@ "scripts": {

@@ -136,4 +136,5 @@ import { isEmpty } from 'ramda'

return hasError
}
},
computeErrorMessage: (value: T) => computeErrorMessage(value, true)
} as unknown as ExtendedConfig<T>
}

@@ -37,2 +37,7 @@ import { VoidFunction } from 'lib/types'

type ComputedErrorMessage = {
hasError: boolean,
errorMessage: string
}
export type GateField<T> = {

@@ -54,3 +59,4 @@ value: T | string,

resetState(): void,
setError(errorMessage: string): void
setError(errorMessage: string): void,
computeErrorMessage(value: T): ComputedErrorMessage
}

@@ -62,3 +68,3 @@

validationRules: Array<ValidationRule<T>>,
validateOnBlur: boolean
validateOnBlur: boolean,
}

@@ -65,0 +71,0 @@

@@ -118,2 +118,6 @@ import { useEffect, useRef, useState } from 'react'

.every(item => Boolean(item.value) && !isEmpty(item.value)),
isValid: Object
.values<GateField<any>>(form)
.filter(item => item.isRequired)
.every(item => Boolean(item.value) && !isEmpty(item.value) && item.computeErrorMessage(item.value).hasError === false),
formHasChanges: () => Object

@@ -120,0 +124,0 @@ .values<GateField<any>>(form)

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc