feature-form 0.0.24 → 0.0.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/create-form.js +1 -1
- package/dist/cjs/form-field/create-form-field.js +1 -1
- package/dist/esm/create-form.js +1 -1
- package/dist/esm/form-field/create-form-field.js +1 -1
- package/dist/types/create-form.d.ts.map +1 -1
- package/dist/types/types/form.d.ts +6 -2
- package/dist/types/types/form.d.ts.map +1 -1
- package/package.json +3 -3
package/dist/cjs/create-form.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var y=require("feature-state"),M=require("@blgc/utils"),C=require("./form-field/create-form-field.js"),u=require("./types/form-field.js"),E=Object.defineProperty,j=Object.getOwnPropertySymbols,P=Object.prototype.hasOwnProperty,I=Object.prototype.propertyIsEnumerable,k=(s,l,i)=>l in s?E(s,l,{enumerable:!0,configurable:!0,writable:!0,value:i}):s[l]=i,w=(s,l)=>{for(var i in l||(l={}))P.call(l,i)&&k(s,i,l[i]);if(j)for(var i of j(l))I.call(l,i)&&k(s,i,l[i]);return s},g=(s,l,i)=>new Promise((V,S)=>{var F=o=>{try{c(i.next(o))}catch(d){S(d)}},p=o=>{try{c(i.throw(o))}catch(d){S(d)}},c=o=>o.done?V(o.value):Promise.resolve(o.value).then(F,p);c((i=i.apply(s,l)).next())});function D(s){const{fields:l,collectErrorMode:i="firstError",disabled:V=!1,validateMode:S=M.bitwiseFlag(u.FormFieldValidateMode.OnSubmit),reValidateMode:F=M.bitwiseFlag(u.FormFieldReValidateMode.OnBlur),onValidSubmit:p,onInvalidSubmit:c,notifyOnStatusChange:o=!0}=s,d={_:null,_features:["base"],_config:{collectErrorMode:i,disabled:V},_validSubmitCallbacks:p!=null?[p]:[],_invalidSubmitCallbacks:c!=null?[c]:[],fields:Object.fromEntries(Object.entries(l).map(([e,t])=>{var r,h,v,b;return[e,C.createFormField(t.defaultValue,{key:e,validator:t.validator,collectErrorMode:(r=t.collectErrorMode)!=null?r:i,validateMode:(h=t.validateMode)!=null?h:S,reValidateMode:(v=t.reValidateMode)!=null?v:F,editable:(b=t.editable)!=null?b:!0,notifyOnStatusChange:o})]})),isValid:y.createState(!1),isValidating:y.createState(!1),isSubmitted:y.createState(!1),isSubmitting:y.createState(!1),_revalidate(e=!1){return g(this,null,function*(){const t=Object.values(this.fields);return e||(this.isValidating.set(!0),yield Promise.all(t.map(r=>r.validate())),this.isValidating.set(!1)),this.isValid.set(t.every(r=>r.isValid())),this.isValid.get()})},submit(){return g(this,arguments,function*(e={}){const{additionalData:t,assignToInitial:r=!1,onInvalidSubmit:h,onValidSubmit:v,postSubmitCallback:b}=e;this.isSubmitting.set(!0);const _=[];for(const a of Object.values(this.fields))a.isSubmitting=!0,(a.isSubmitted&&a._config.reValidateMode.has(u.FormFieldReValidateMode.OnSubmit)||!a.isSubmitted&&a._config.validateMode.has(u.FormFieldValidateMode.OnSubmit))&&_.push(a.validate());yield Promise.all(_);const f=this.getValidData(),m=[];if(f!=null){for(const a of this._validSubmitCallbacks)m.push(a(f,t));typeof v=="function"&&m.push(v(f,t))}else{const a=this.getErrors();for(const n of this._invalidSubmitCallbacks)m.push(n(a,t));typeof h=="function"&&m.push(h(a,t))}let O=null;b!=null?O=(yield Promise.all(m)).reduce((a,n)=>n!=null&&typeof n=="object"?w(w({},a),n):a,{}):yield Promise.all(m);for(const[a,n]of Object.entries(this.fields))f!=null&&Object.prototype.hasOwnProperty.call(f,a)&&r&&(n._intialValue=M.deepCopy(f[a])),n.isSubmitted=!0,n.isSubmitting=!1;return this.isSubmitted.set(!0),this.isSubmitting.set(!1),b==null||b(this,O!=null?O:{}),this.isValid.get()})},validate(){return g(this,null,function*(){return this._revalidate(!1)})},getField(e){return this.fields[e]},getValidData(){if(!this.isValid.get())return null;const e={};for(const[t,r]of Object.entries(this.fields))e[t]=r.get();return e},getErrors(){const e={};for(const[t,r]of Object.entries(this.fields))switch(r.status._value.type){case"INVALID":e[t]=r.status._value.errors;break;case"UNVALIDATED":e[t]=[{code:"unvalidated",message:`${t.toString()} was not yet validated!`,path:t}];break}return e},reset(){for(const e of Object.values(this.fields))e.reset();this.isSubmitted.set(!1)}};for(const e of Object.values(d.fields))e.listen(t=>g(this,[t],function*({source:r}){r==="set"&&(e.isSubmitted&&e._config.reValidateMode.has(u.FormFieldReValidateMode.OnChange)||!e.isSubmitted&&e._config.validateMode.has(u.FormFieldValidateMode.OnChange)||e._config.validateMode.has(u.FormFieldValidateMode.OnTouched)&&e.isTouched)&&(yield e.validate())}),{key:"form"}),e.status.listen(()=>g(this,null,function*(){yield d._revalidate(!0)}),{key:"form"});return d}exports.createForm=D;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var F=require("feature-state"),f=require("validation-adapter"),c=require("@blgc/utils"),s=require("../types/form-field.js"),g=require("./create-form-field-validation-context.js"),y=require("./create-status.js"),M=(d,l,i)=>new Promise((o,r)=>{var u=t=>{try{a(i.next(t))}catch(e){r(e)}},n=t=>{try{a(i.throw(t))}catch(e){r(e)}},a=t=>t.done?o(t.value):Promise.resolve(t.value).then(u,n);a((i=i.apply(d,l)).next())});function _(d,l){const{key:i,validator:o=f.createValidator([]),editable:r=!0,reValidateMode:u=c.bitwiseFlag(s.FormFieldReValidateMode.OnBlur),validateMode:n=c.bitwiseFlag(s.FormFieldValidateMode.OnSubmit),collectErrorMode:a="firstError",notifyOnStatusChange:t=!0}=l,e=F.createState(d,{deferred:!1}),v=y.createStatus({type:"UNVALIDATED"});t&&v.listen(h=>{e._notify({additionalData:{source:"status",status:h.value}})},{key:"form-field"});const m={_config:{editable:r,validateMode:n,reValidateMode:u,collectErrorMode:a},_intialValue:c.deepCopy(e._value),_validator:o,key:i,isTouched:!1,isSubmitted:!1,isSubmitting:!1,isValidating:!1,status:v,validate(){return M(this,null,function*(){const h=g.createFormFieldValidationContext(this);return this.isValidating=!0,yield this._validator.validate(h),this.isValidating=!1,this.status._nextValue==null?this.status.set({type:"VALID"}):this.status.set(this.status._nextValue),this.status._nextValue=void 0,this.status.get().type==="VALID"})},isValid(){return this.status.get().type==="VALID"},blur(){(this.isSubmitted&&this._config.reValidateMode.has(s.FormFieldReValidateMode.OnBlur)||!this.isSubmitted&&(this._config.validateMode.has(s.FormFieldValidateMode.OnBlur)||this._config.validateMode.has(s.FormFieldValidateMode.OnTouched)&&!this.isTouched))&&this.validate(),this.isTouched=!0},reset(){this.set(this._intialValue),this.isTouched=!1,this.isSubmitted=!1,this.isSubmitting=!1,this.status.set({type:"UNVALIDATED"})}},V=Object.assign(e,m);return V._features.push("form-field"),V}exports.createFormField=_;
|
|
1
|
+
"use strict";var F=require("feature-state"),f=require("validation-adapter"),c=require("@blgc/utils"),s=require("../types/form-field.js"),g=require("./create-form-field-validation-context.js"),y=require("./create-status.js"),M=(d,l,i)=>new Promise((o,r)=>{var u=t=>{try{a(i.next(t))}catch(e){r(e)}},n=t=>{try{a(i.throw(t))}catch(e){r(e)}},a=t=>t.done?o(t.value):Promise.resolve(t.value).then(u,n);a((i=i.apply(d,l)).next())});function _(d,l){const{key:i,validator:o=f.createValidator([]),editable:r=!0,reValidateMode:u=c.bitwiseFlag(s.FormFieldReValidateMode.OnBlur),validateMode:n=c.bitwiseFlag(s.FormFieldValidateMode.OnSubmit),collectErrorMode:a="firstError",notifyOnStatusChange:t=!0}=l,e=F.createState(d,{deferred:!1}),v=y.createStatus({type:"UNVALIDATED"});t&&v.listen(h=>{e._notify({additionalData:{source:"status",status:h.value}})},{key:"form-field"});const m={_config:{editable:r,validateMode:n,reValidateMode:u,collectErrorMode:a},_intialValue:c.deepCopy(e._value),_validator:o,key:i,isTouched:!1,isSubmitted:!1,isSubmitting:!1,isValidating:!1,status:v,validate(){return M(this,null,function*(){const h=g.createFormFieldValidationContext(this);return this.isValidating=!0,yield this._validator.validate(h),this.isValidating=!1,this.status._nextValue==null?this.status.set({type:"VALID"}):this.status.set(this.status._nextValue),this.status._nextValue=void 0,this.status.get().type==="VALID"})},isValid(){return this.status.get().type==="VALID"},blur(){(this.isSubmitted&&this._config.reValidateMode.has(s.FormFieldReValidateMode.OnBlur)||!this.isSubmitted&&(this._config.validateMode.has(s.FormFieldValidateMode.OnBlur)||this._config.validateMode.has(s.FormFieldValidateMode.OnTouched)&&!this.isTouched))&&this.validate(),this.isTouched=!0},reset(){this.set(this._intialValue,{additionalData:{source:"reset"}}),this.isTouched=!1,this.isSubmitted=!1,this.isSubmitting=!1,this.status.set({type:"UNVALIDATED"})}},V=Object.assign(e,m);return V._features.push("form-field"),V}exports.createFormField=_;
|
package/dist/esm/create-form.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{createState as
|
|
1
|
+
import{createState as S}from"feature-state";import{bitwiseFlag as k,deepCopy as w}from"@blgc/utils";import{createFormField as P}from"./form-field/create-form-field.js";import{FormFieldValidateMode as y,FormFieldReValidateMode as M}from"./types/form-field.js";var I=Object.defineProperty,C=Object.getOwnPropertySymbols,D=Object.prototype.hasOwnProperty,T=Object.prototype.propertyIsEnumerable,E=(r,a,i)=>a in r?I(r,a,{enumerable:!0,configurable:!0,writable:!0,value:i}):r[a]=i,F=(r,a)=>{for(var i in a||(a={}))D.call(a,i)&&E(r,i,a[i]);if(C)for(var i of C(a))T.call(a,i)&&E(r,i,a[i]);return r},v=(r,a,i)=>new Promise((O,g)=>{var V=n=>{try{u(i.next(n))}catch(d){g(d)}},p=n=>{try{u(i.throw(n))}catch(d){g(d)}},u=n=>n.done?O(n.value):Promise.resolve(n.value).then(V,p);u((i=i.apply(r,a)).next())});function x(r){const{fields:a,collectErrorMode:i="firstError",disabled:O=!1,validateMode:g=k(y.OnSubmit),reValidateMode:V=k(M.OnBlur),onValidSubmit:p,onInvalidSubmit:u,notifyOnStatusChange:n=!0}=r,d={_:null,_features:["base"],_config:{collectErrorMode:i,disabled:O},_validSubmitCallbacks:p!=null?[p]:[],_invalidSubmitCallbacks:u!=null?[u]:[],fields:Object.fromEntries(Object.entries(a).map(([t,e])=>{var s,m,h,c;return[t,P(e.defaultValue,{key:t,validator:e.validator,collectErrorMode:(s=e.collectErrorMode)!=null?s:i,validateMode:(m=e.validateMode)!=null?m:g,reValidateMode:(h=e.reValidateMode)!=null?h:V,editable:(c=e.editable)!=null?c:!0,notifyOnStatusChange:n})]})),isValid:S(!1),isValidating:S(!1),isSubmitted:S(!1),isSubmitting:S(!1),_revalidate(t=!1){return v(this,null,function*(){const e=Object.values(this.fields);return t||(this.isValidating.set(!0),yield Promise.all(e.map(s=>s.validate())),this.isValidating.set(!1)),this.isValid.set(e.every(s=>s.isValid())),this.isValid.get()})},submit(){return v(this,arguments,function*(t={}){const{additionalData:e,assignToInitial:s=!1,onInvalidSubmit:m,onValidSubmit:h,postSubmitCallback:c}=t;this.isSubmitting.set(!0);const j=[];for(const l of Object.values(this.fields))l.isSubmitting=!0,(l.isSubmitted&&l._config.reValidateMode.has(M.OnSubmit)||!l.isSubmitted&&l._config.validateMode.has(y.OnSubmit))&&j.push(l.validate());yield Promise.all(j);const f=this.getValidData(),b=[];if(f!=null){for(const l of this._validSubmitCallbacks)b.push(l(f,e));typeof h=="function"&&b.push(h(f,e))}else{const l=this.getErrors();for(const o of this._invalidSubmitCallbacks)b.push(o(l,e));typeof m=="function"&&b.push(m(l,e))}let _=null;c!=null?_=(yield Promise.all(b)).reduce((l,o)=>o!=null&&typeof o=="object"?F(F({},l),o):l,{}):yield Promise.all(b);for(const[l,o]of Object.entries(this.fields))f!=null&&Object.prototype.hasOwnProperty.call(f,l)&&s&&(o._intialValue=w(f[l])),o.isSubmitted=!0,o.isSubmitting=!1;return this.isSubmitted.set(!0),this.isSubmitting.set(!1),c==null||c(this,_!=null?_:{}),this.isValid.get()})},validate(){return v(this,null,function*(){return this._revalidate(!1)})},getField(t){return this.fields[t]},getValidData(){if(!this.isValid.get())return null;const t={};for(const[e,s]of Object.entries(this.fields))t[e]=s.get();return t},getErrors(){const t={};for(const[e,s]of Object.entries(this.fields))switch(s.status._value.type){case"INVALID":t[e]=s.status._value.errors;break;case"UNVALIDATED":t[e]=[{code:"unvalidated",message:`${e.toString()} was not yet validated!`,path:e}];break}return t},reset(){for(const t of Object.values(this.fields))t.reset();this.isSubmitted.set(!1)}};for(const t of Object.values(d.fields))t.listen(e=>v(this,[e],function*({source:s}){s==="set"&&(t.isSubmitted&&t._config.reValidateMode.has(M.OnChange)||!t.isSubmitted&&t._config.validateMode.has(y.OnChange)||t._config.validateMode.has(y.OnTouched)&&t.isTouched)&&(yield t.validate())}),{key:"form"}),t.status.listen(()=>v(this,null,function*(){yield d._revalidate(!0)}),{key:"form"});return d}export{x as createForm};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{createState as p}from"feature-state";import{createValidator as y}from"validation-adapter";import{bitwiseFlag as f,deepCopy as g}from"@blgc/utils";import{FormFieldReValidateMode as V,FormFieldValidateMode as h}from"../types/form-field.js";import{createFormFieldValidationContext as _}from"./create-form-field-validation-context.js";import{createStatus as b}from"./create-status.js";var M=(r,o,i)=>new Promise((d,s)=>{var l=t=>{try{a(i.next(t))}catch(e){s(e)}},u=t=>{try{a(i.throw(t))}catch(e){s(e)}},a=t=>t.done?d(t.value):Promise.resolve(t.value).then(l,u);a((i=i.apply(r,o)).next())});function S(r,o){const{key:i,validator:d=y([]),editable:s=!0,reValidateMode:l=f(V.OnBlur),validateMode:u=f(h.OnSubmit),collectErrorMode:a="firstError",notifyOnStatusChange:t=!0}=o,e=p(r,{deferred:!1}),c=b({type:"UNVALIDATED"});t&&c.listen(n=>{e._notify({additionalData:{source:"status",status:n.value}})},{key:"form-field"});const v={_config:{editable:s,validateMode:u,reValidateMode:l,collectErrorMode:a},_intialValue:g(e._value),_validator:d,key:i,isTouched:!1,isSubmitted:!1,isSubmitting:!1,isValidating:!1,status:c,validate(){return M(this,null,function*(){const n=_(this);return this.isValidating=!0,yield this._validator.validate(n),this.isValidating=!1,this.status._nextValue==null?this.status.set({type:"VALID"}):this.status.set(this.status._nextValue),this.status._nextValue=void 0,this.status.get().type==="VALID"})},isValid(){return this.status.get().type==="VALID"},blur(){(this.isSubmitted&&this._config.reValidateMode.has(V.OnBlur)||!this.isSubmitted&&(this._config.validateMode.has(h.OnBlur)||this._config.validateMode.has(h.OnTouched)&&!this.isTouched))&&this.validate(),this.isTouched=!0},reset(){this.set(this._intialValue),this.isTouched=!1,this.isSubmitted=!1,this.isSubmitting=!1,this.status.set({type:"UNVALIDATED"})}},m=Object.assign(e,v);return m._features.push("form-field"),m}export{S as createFormField};
|
|
1
|
+
import{createState as p}from"feature-state";import{createValidator as y}from"validation-adapter";import{bitwiseFlag as f,deepCopy as g}from"@blgc/utils";import{FormFieldReValidateMode as V,FormFieldValidateMode as h}from"../types/form-field.js";import{createFormFieldValidationContext as _}from"./create-form-field-validation-context.js";import{createStatus as b}from"./create-status.js";var M=(r,o,i)=>new Promise((d,s)=>{var l=t=>{try{a(i.next(t))}catch(e){s(e)}},u=t=>{try{a(i.throw(t))}catch(e){s(e)}},a=t=>t.done?d(t.value):Promise.resolve(t.value).then(l,u);a((i=i.apply(r,o)).next())});function S(r,o){const{key:i,validator:d=y([]),editable:s=!0,reValidateMode:l=f(V.OnBlur),validateMode:u=f(h.OnSubmit),collectErrorMode:a="firstError",notifyOnStatusChange:t=!0}=o,e=p(r,{deferred:!1}),c=b({type:"UNVALIDATED"});t&&c.listen(n=>{e._notify({additionalData:{source:"status",status:n.value}})},{key:"form-field"});const v={_config:{editable:s,validateMode:u,reValidateMode:l,collectErrorMode:a},_intialValue:g(e._value),_validator:d,key:i,isTouched:!1,isSubmitted:!1,isSubmitting:!1,isValidating:!1,status:c,validate(){return M(this,null,function*(){const n=_(this);return this.isValidating=!0,yield this._validator.validate(n),this.isValidating=!1,this.status._nextValue==null?this.status.set({type:"VALID"}):this.status.set(this.status._nextValue),this.status._nextValue=void 0,this.status.get().type==="VALID"})},isValid(){return this.status.get().type==="VALID"},blur(){(this.isSubmitted&&this._config.reValidateMode.has(V.OnBlur)||!this.isSubmitted&&(this._config.validateMode.has(h.OnBlur)||this._config.validateMode.has(h.OnTouched)&&!this.isTouched))&&this.validate(),this.isTouched=!0},reset(){this.set(this._intialValue,{additionalData:{source:"reset"}}),this.isTouched=!1,this.isSubmitted=!1,this.isSubmitting=!1,this.status.set({type:"UNVALIDATED"})}},m=Object.assign(e,v);return m._features.push("form-field"),m}export{S as createFormField};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-form.d.ts","sourceRoot":"","sources":["../../src/create-form.ts"],"names":[],"mappings":"AAEA,OAAO,EAAyB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAGtE,OAAO,EACN,uBAAuB,EACvB,qBAAqB,EACrB,KAAK,KAAK,EACV,KAAK,WAAW,EAChB,KAAK,SAAS,EAEd,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EAGxB,KAAK,sBAAsB,
|
|
1
|
+
{"version":3,"file":"create-form.d.ts","sourceRoot":"","sources":["../../src/create-form.ts"],"names":[],"mappings":"AAEA,OAAO,EAAyB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAGtE,OAAO,EACN,uBAAuB,EACvB,qBAAqB,EACrB,KAAK,KAAK,EACV,KAAK,WAAW,EAChB,KAAK,SAAS,EAEd,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EAGxB,KAAK,sBAAsB,EAE3B,KAAK,oBAAoB,EACzB,MAAM,SAAS,CAAC;AAEjB,wBAAgB,UAAU,CAAC,SAAS,SAAS,SAAS,EACrD,MAAM,EAAE,iBAAiB,CAAC,SAAS,CAAC,GAClC,KAAK,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC,CAyN5B;AAED,MAAM,WAAW,iBAAiB,CAAC,SAAS,SAAS,SAAS,CAAE,SAAQ,OAAO,CAAC,WAAW,CAAC;IAC3F;;OAEG;IACH,MAAM,EAAE,2BAA2B,CAAC,SAAS,CAAC,CAAC;IAC/C;;OAEG;IACH,YAAY,CAAC,EAAE,WAAW,CAAC,qBAAqB,CAAC,CAAC;IAClD;;OAEG;IACH,cAAc,CAAC,EAAE,WAAW,CAAC,uBAAuB,CAAC,CAAC;IACtD;;OAEG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B,eAAe,CAAC,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC;IACpD,aAAa,CAAC,EAAE,oBAAoB,CAAC,SAAS,CAAC,CAAC;CAChD;AAED,MAAM,MAAM,2BAA2B,CAAC,SAAS,SAAS,SAAS,IAAI;KACrE,GAAG,IAAI,MAAM,SAAS,GAAG,0BAA0B,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;CACpE,CAAC;AAEF,MAAM,WAAW,0BAA0B,CAAC,MAAM,CAAE,SAAQ,OAAO,CAAC,qBAAqB,CAAC;IACzF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC;CACxC"}
|
|
@@ -30,11 +30,15 @@ export type TFormData = Record<string, any>;
|
|
|
30
30
|
export interface TSubmitOptions<GFormData extends TFormData> {
|
|
31
31
|
onValidSubmit?: TValidSubmitCallback<GFormData>;
|
|
32
32
|
onInvalidSubmit?: TInvalidSubmitCallback<GFormData>;
|
|
33
|
+
postSubmitCallback?: TPostSubmitCallback<GFormData>;
|
|
33
34
|
additionalData?: TAdditionalSubmitCallbackData;
|
|
34
35
|
assignToInitial?: boolean;
|
|
35
36
|
}
|
|
36
|
-
export type TValidSubmitCallback<GFormData extends TFormData> = (formData: Readonly<GFormData>, additionalData?: TAdditionalSubmitCallbackData) =>
|
|
37
|
-
export type TInvalidSubmitCallback<GFormData extends TFormData> = (errors: TInvalidFormFieldErrors<GFormData>, additionalData?: TAdditionalSubmitCallbackData) =>
|
|
37
|
+
export type TValidSubmitCallback<GFormData extends TFormData> = (formData: Readonly<GFormData>, additionalData?: TAdditionalSubmitCallbackData) => TSubmitCallbackResponse;
|
|
38
|
+
export type TInvalidSubmitCallback<GFormData extends TFormData> = (errors: TInvalidFormFieldErrors<GFormData>, additionalData?: TAdditionalSubmitCallbackData) => TSubmitCallbackResponse;
|
|
39
|
+
export type TSubmitCallbackResponse = Promise<void | TSubmitData> | void | TSubmitData;
|
|
40
|
+
export type TSubmitData = Record<string, unknown>;
|
|
41
|
+
export type TPostSubmitCallback<GFormData extends TFormData> = (form: TForm<GFormData, ['base']>, submitData: TSubmitData) => void;
|
|
38
42
|
export interface TAdditionalSubmitCallbackData {
|
|
39
43
|
[key: string]: unknown;
|
|
40
44
|
event?: unknown;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../../src/types/form.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AACrE,OAAO,EACN,KAAK,UAAU,EACf,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,MAAM,cAAc,CAAC;AAKtB,MAAM,MAAM,KAAK,CAAC,SAAS,SAAS,SAAS,EAAE,oBAAoB,SAAS,YAAY,EAAE,IAAI;IAC7F,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE,WAAW,CAAC;IACrB,qBAAqB,EAAE,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;IACzD,uBAAuB,EAAE,sBAAsB,CAAC,SAAS,CAAC,EAAE,CAAC;IAC7D,MAAM,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACnC,YAAY,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACxC,WAAW,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACvC,YAAY,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACxC,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACpD,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAClE,QAAQ,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IACjC,QAAQ,EAAE,CAAC,IAAI,SAAS,MAAM,WAAW,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,IAAI,KAAK,WAAW,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC;IACjG,YAAY,EAAE,MAAM,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;IAC/C,SAAS,EAAE,MAAM,uBAAuB,CAAC,SAAS,CAAC,CAAC;IACpD,KAAK,EAAE,MAAM,IAAI,CAAC;CAClB,GAAG,eAAe,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;AAErD,MAAM,MAAM,WAAW,CAAC,SAAS,SAAS,SAAS,IAAI;KACrD,GAAG,IAAI,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;CACpD,CAAC;AAEF,MAAM,MAAM,eAAe,CAAC,SAAS,SAAS,SAAS,IAAI;KACzD,GAAG,IAAI,MAAM,SAAS,GAAG,mBAAmB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;CAC7D,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAE5C,MAAM,WAAW,cAAc,CAAC,SAAS,SAAS,SAAS;IAC1D,aAAa,CAAC,EAAE,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAChD,eAAe,CAAC,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC;IACpD,cAAc,CAAC,EAAE,6BAA6B,CAAC;IAC/C,eAAe,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,MAAM,oBAAoB,CAAC,SAAS,SAAS,SAAS,IAAI,CAC/D,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,EAC7B,cAAc,CAAC,EAAE,6BAA6B,KAC1C,
|
|
1
|
+
{"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../../src/types/form.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "feature-form",
|
|
3
3
|
"description": "Straightforward, typesafe, and feature-based form library for ReactJs",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.26",
|
|
5
5
|
"private": false,
|
|
6
6
|
"source": "./src/index.ts",
|
|
7
7
|
"main": "./dist/cjs/index.js",
|
|
@@ -19,10 +19,10 @@
|
|
|
19
19
|
},
|
|
20
20
|
"homepage": "https://builder.group/?source=github",
|
|
21
21
|
"dependencies": {
|
|
22
|
+
"validation-adapter": "0.0.11",
|
|
22
23
|
"@blgc/types": "0.0.7",
|
|
23
24
|
"@blgc/utils": "0.0.18",
|
|
24
|
-
"feature-state": "0.0.23"
|
|
25
|
-
"validation-adapter": "0.0.11"
|
|
25
|
+
"feature-state": "0.0.23"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
28
|
"@types/node": "^20.14.1",
|