@inntechcorp/it-design 2.2.75 → 2.2.76
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/index.cjs.js +1 -1
- package/dist/index.esm.js +1 -1
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -2382,7 +2382,7 @@
|
|
|
2382
2382
|
margin-top: 10px;
|
|
2383
2383
|
gap: 5px;
|
|
2384
2384
|
|
|
2385
|
-
`;const Td=new RegExp(/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+([.])[a-zA-Z0-9-]+(?:.[a-zA-Z0-9-]+)*$/),Od=new RegExp(/^[a-zA-Z0-9_.-]+$/),Id=new RegExp(/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!@#$%^&*()_+={};:<>|./?,"'\[\]\\`~\-])[a-zA-Z\d$begin:math:display$$end:math:display$\\`~!@#$%^&*()_+={};:<>|.\/?,"'-]{8,60}$/),Rd=new RegExp(/^[a-z0-9._-]+$/),Pd=new RegExp(/^[a-zA-Z0-9]+$/),Vd=new RegExp(/^https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,4}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)$/);const Bd=e=>Id.test(e),Hd=e=>Td.test(e),Ud=e=>Od.test(e),Gd=(e,t)=>e.length>=t,Yd=(e,t)=>e.length<=t,Wd=(e,t)=>e===t,qd=(e,t)=>e!==t,Xd=(e,t)=>e.length===t,Kd=e=>Rd.test(e),Jd=e=>Pd.test(e),Zd=e=>Vd.test(e),Qd=e=>function(e){var t,r=0,n=0,o=0;if(11!=e.length)return!1;if(!/^-?\d+$/.test(e))return!1;if(0==Number(e[0]))return!1;if(r=parseInt(e[0])+parseInt(e[2])+parseInt(e[4])+parseInt(e[6])+parseInt(e[8]),t=parseInt(e[1])+parseInt(e[3])+parseInt(e[5])+parseInt(e[7]),r*=7,Math.abs(r-t)%10!=Number(e[9]))return!1;for(o=0;o<10;o++)n+=parseInt(e[o]);return n%10==Number(e[10])}(e),ec=e=>{if(Array.isArray(e)){if(0===e.length)return!1}else{if("object"==typeof e){let t=!0;return Object.keys(e).forEach(r=>{""===e[r]&&(t=!1)}),t}if("string"==typeof e){if(""===e)return!1}else if("boolean"==typeof e&&!1===e)return!1}return!0},tc=n.createContext({});tc.displayName="ITDFormContext";const rc=n.forwardRef(({name:e="",label:r="",placeholder:o="",error:i="",rules:a=[],mask:s=null,locked:l=!1,dependency:d="",reset:c=[],query:u="",children:p=null},f)=>{const{t:h}=t.useTranslation("itd"),g=n.useRef(null),m=n.useRef(""),{register:x,unregister:v,hasField:y,updateField:A,setFieldError:w,getFieldValue:k,getFieldInstance:S,formId:_}=n.useContext(tc),[E,C]=n.useState(!1);n.useEffect(()=>(x({name:e,field:g,valid:F(g.current?.getValue(),!1),query:u,reset:c,error:i}),C(!0),m.current=JSON.stringify(a),()=>{C(!1),v(e)}),[]),n.useEffect(()=>{const t=JSON.stringify(a);if(E&&g.current&&m.current!==t){const r=()=>{const t=g.current.getValue(),r=a.find(e=>e.hasOwnProperty("required"));if(!r||r.required||""!==t&&null!=t){const r=F(t,!1);y(e)&&A(e,t,!1,r)}else w(e,"",!0),y(e)&&A(e,t,!1,!0)};"development"===process.env.NODE_ENV?requestAnimationFrame(r):r(),m.current=t}},[a,E]),n.useImperativeHandle(f,()=>g.current);const j=(t,r=!0,n=!0)=>{E&&y(e)&&(A(e,t,r,F(t,n)),$())},F=(t,r=!0)=>{const n=function(e,t,r,n){let o=[];return e.forEach(e=>{e.hasOwnProperty(b.REQUIRED)&&!ec(t)&&e.required&&o.push(e.message?e.message:n("errors.required")),e.hasOwnProperty(b.TYPE)&&(e.type===exports.FormValidationTypes.MIN_LENGTH&&(Gd(String(t),Number(e.value))||o.push(e.message?e.message:n("errors.minLength",{length:Number(e.value)}))),e.type===exports.FormValidationTypes.MAX_LENGTH&&(Yd(String(t),Number(e.value))||o.push(e.message?e.message:n("errors.maxLength",{length:Number(e.value)}))),e.type===exports.FormValidationTypes.EXACT_LENGTH&&(Xd(String(t),Number(e.value))||o.push(e.message?e.message:n("errors.exactLength",{length:Number(e.value)}))),e.type===exports.FormValidationTypes.SAME&&(Wd(String(t),String(r(String(e.field))))||o.push(e.message?e.message:n("errors.fieldMustBeTheSame",{fields:e.field}))),e.type===exports.FormValidationTypes.NOT_SAME&&(qd(String(t),String(r(String(e.field))))||o.push(e.message?e.message:n("errors.fieldMustBeDifferent",{fields:e.field}))),e.type===exports.FormValidationTypes.TC_IDENTITY&&(Qd(String(t))||o.push(e.message?e.message:n("errors.wrongTCIdentity"))),e.type===exports.FormValidationTypes.PASSWORD&&(Bd(String(t))||o.push(e.message?e.message:n("errors.passwordRule"))),e.type===exports.FormValidationTypes.EMAIL&&(Hd(String(t))||o.push(e.message?e.message:n("errors.invalidEmailAddress"))),e.type===exports.FormValidationTypes.USERNAME&&(Ud(String(t))||o.push(e.message?e.message:n("errors.usernameRule"))),e.type===exports.FormValidationTypes.SITE_USERNAME&&(Kd(String(t))||o.push(e.message?e.message:n("errors.siteUsernameRule"))),e.type===exports.FormValidationTypes.ADMIN_USERNAME&&(Jd(String(t))||o.push(e.message?e.message:n("errors.adminUsernameRule"))),e.type===exports.FormValidationTypes.URL&&(Zd(String(t))||o.push(e.message?e.message:n("errors.invalidURL"))))}),o}(a,t,k,h);return n.length>0?!!(r||""!==t&&null!=t)&&(r&&w(e,n[0],r),!1):(r&&w(e,""),!0)},$=()=>{if(""===d)return;if(""===k(d))return;const e=S(d);e&&e.forceUpdate&&e.forceUpdate()};return(()=>{if(!p)return null;let t=p.props;const i={id:t.id?t.id:_+"_"+e,label:r,placeholder:o,className:t.className?t.className+" itd-form-item":"itd-form-item",onUpdate:j,ref:g};return s&&(i.mask=s),l&&(i.locked=l),n.cloneElement(p,{...t,...i})})()}),nc=n.forwardRef(({name:e="",className:t="",initialValues:o={},useQueryString:i=!1,onUpdate:s,onFinish:l,onFinishFailed:d,onValidated:c,children:u},f)=>{const{updated:h,setInitialValues:g,isFormValid:m,getValues:b,getFields:x,setFieldValueByName:v,resetFields:y}=n.useContext(tc),A=V(),{search:w}=a.useLocation(),k=B(),[S,_]=n.useState([]),[E,C]=n.useState(!1),[j,F]=n.useState([]),[$,z]=n.useState(!1),[L,N]=n.useState(!1);n.useEffect(()=>{u&&P()},[u]),n.useEffect(()=>{D(),M()},[$]),n.useEffect(()=>{$||0!==Object.keys(x()).length&&0!==j.length&&Object.keys(x()).length===j.length&&z(!0)},[x(),j]),n.useEffect(()=>{M()},[o]),n.useEffect(()=>{D()},[w]),n.useEffect(()=>{L&&$&&i&&Object.keys(h).length>0&&I(h)},[h]),n.useEffect(()=>{c&&m()!==E&&c(m()),C(m())},[m()]);const D=()=>{$&&i&&(R(),L||O())},M=()=>{$&&(i||L||T())},T=()=>{const e=!Object.values(o).some(e=>null!==e&&""!==e);e&&!L&&N(!0),e||L||(g(o,!1),N(!0))},O=()=>{const e=x(),t=!Object.values(e).some(e=>""!==A.get(e.query,""));if(Object.values(e).some(e=>null===e.query||""===e.query)){let t=[];throw Object.keys(e).forEach(r=>{e[r].hasOwnProperty("query")&&null!==e[r].query&&""!==e[r].query||t.push(r)}),new Error(`ITD Form Initial Fields Error: "useQueryString" is activated but "query" value is not passed to whole form elements! Invalid fields are ${t.toString()}`)}if(t&&!L&&N(!0),!t&&!L){let t={};Object.keys(e).forEach(r=>{t[r]=A.get(e[r].query,"")}),g(t,!0,!0),N(!0)}},I=e=>{let t=[],r=[];const n=x();Object.keys(e).forEach(t=>{r.push(e[t])}),ci(r,S)||(Object.keys(n).forEach(r=>{t.push({type:n[r].query,value:e[r]})}),k.set(t))},R=()=>{let e=[],t=[];const r=x();if(Object.keys(r).forEach(t=>{let n=String(A.get(r[t].query,""));e.push(n)}),ci(e,S))return;_(e),Object.keys(r).forEach(e=>{t[e]=A.get(r[e].query,"")}),Object.keys(t).forEach(e=>{v(e,t[e],!1,!1)});let n={};Object.keys(t).forEach(e=>{n[e]=t[e]}),s&&s(n)},P=()=>{let e=[];p.getChildrenDeep(u,t=>(t.hasOwnProperty("type")&&t.type===rc&&e.push({[t.props.name]:t}),!0)),F(e)};return n.useImperativeHandle(f,()=>({fieldUpdate(e){console.log("fieldUpdate"),console.log(e)}})),r.jsx("form",{id:e,onSubmit:e=>{e&&(e.preventDefault(),e.stopPropagation()),m()?l&&l(b()):d&&d(x())},onReset:e=>{e&&(e.preventDefault(),e.stopPropagation());let t=[];Object.keys(x()).map(e=>{t.push({type:e,value:""})}),k.set(t),y(!0,!1)},autoComplete:"off",className:t,noValidate:!0,children:u})});var oc=n.memo(nc);function ic({name:e="",useQueryString:t=!1,onUpdate:r,onReset:o,onFieldUpdate:i}){const[a,s]=n.useState({}),[l,d]=n.useState(e),[c,u]=n.useState(!1),[p,f]=n.useState({});function h(e){return a.hasOwnProperty(e)&&void 0!==a[e]}function g(){let e={};return Object.keys(a).forEach(t=>{e[t]=x(t)}),e}function m(e,t,r=!0){if(h(e)&&a[e].field.current){if(a[e].valid=!1,a[e].error=t,!a[e].field.current?.hasOwnProperty("setError"))throw new Error(`ITD Reference Error: You must declare the 'setError' function on the field "${e}"`);a[e].field.current?.setError(r?t:"")}}function b(){let e=!0;return Object.keys(a).forEach(t=>{a[t].valid||(e=!1)}),u(e),e}function x(e){if(h(e)){if(a[e].field.current?.hasOwnProperty("getValue"))return a[e].field.current?.getValue();throw new Error(`ITD Reference Error: You must declare the 'getValue' function on the field "${e}"`)}console.error(`ITD Form Error [getFieldValueByName]: There is no field registered with this name: ${e}`)}function v(e,t,r,n){if(h(e)){if(!a[e].field.current?.hasOwnProperty("setValue"))throw new Error(`ITD Reference Error: You must declare the 'setValue' function on the field "${e}"`);{let o=x(e),i=!1;i=Array.isArray(o)&&Array.isArray(t)?ci(o,t):Array.isArray(o)||Array.isArray(t)?o.toString()===t.toString():o===t,i||a[e].field.current?.setValue(t,r,n)}}else console.error(`ITD Form Error [setFieldValueByName]: There is no field registered with this name: ${e}`)}return{register:function(e){a[e.name]={name:e.name,field:e.field,value:e.field.current?.getValue(),valid:e.valid,query:e.query,reset:e.reset,error:e.error}},unregister:function(e){h(e)?(delete a[e],b()):console.error(`ITD Form Error [unregister]: There is no field registered with this name: ${e}`)},checkFormIsValid:b,hasField:h,getValues:g,getFieldValue:function(e){return h(e)?(t=a[e].value)instanceof Object?JSON.stringify(t):t:"";var t},getFieldValueByName:x,getFieldInstance:function(e){return h(e)?a[e].field.current:null},getFields:function(){let e={};return Object.keys(a).forEach(t=>{e[t]=a[t]}),e},getFieldsInstance:function(){let e={};return Object.keys(a).forEach(t=>{e[t]=a[t].field.current}),e},setName:function(e){d(e)},setInitialValues:function(e,n=!0,o=!1){Object.keys(e).forEach(t=>{v(t,e[t],n,o)});let i={};return Object.keys(e).forEach(t=>{i[t]=e[t]}),n&&(t&&f(i),r&&r(i)),b(),i},setInvalidField:function(e="",t=""){m(e,t),b()},setInvalidFields:function(e=[],t=""){e.forEach(e=>{m(e,t)}),b()},setFieldValue:function(e,t){h(e)?a[e].field.current?.setValue(t,!0,!0):console.error(`ITD Form Error [setFieldValue]: There is no field registered with this name: ${e}`)},setFieldValueByName:v,setFieldError:m,removeFieldError:function(e){if(h(e)){if(a[e].valid=!0,a[e].error="",!a[e].field.current?.hasOwnProperty("setError"))throw new Error(`ITD Reference Error: You must declare the 'setError' function on the field "${e}"`);a[e].field.current?.setError("")}else console.error(`ITD Form Error [removeFieldError]: There is no field registered with this name: ${e}`)},updateField:function(e,n,o,s){if(h(e)){if(a[e].value=n,a[e].valid=s,o){i&&i({name:e,value:n,valid:s}),a[e].reset.length>0&&a[e].reset.forEach(e=>{a[e].value="",a[e].valid=!1,a[e].field.current?.reset(!1)});let o={...g(),[e]:n};a[e].reset.length>0&&a[e].reset.forEach(e=>{o[e]=""}),t&&s&&f(o),r&&r(o)}b()}else console.error(`ITD Form Error [updateField]: There is no field registered with this name: ${e}`)},isFormValid:n.useCallback(()=>c,[c]),isFieldsValid:function(e){let t=!0;return e.forEach(e=>{a[e].valid||(t=!1)}),t},isFieldValid:function(e){return a[e].valid},resetFields:function(e=!1,t=!1){Object.keys(a).forEach(r=>{if(!a[r].field.current?.hasOwnProperty("reset"))throw new Error(`ITD Reference Error: You must declare the 'reset' function on the field "${r}"`);a[r].field.current?.reset(e,t)}),o&&o()},removeFields:function(){s({})},formId:l,updated:p}}const ac=n.forwardRef(({initialValues:e,children:t,onUpdate:o,onReset:i,onFinish:a,onFinishFailed:s,onFieldUpdate:l,onValidated:d,useQueryString:c,className:u,name:p},f)=>{const h=n.useRef(null);n.useEffect(()=>()=>{h.current=null},[]),h.current=ic({name:p,onUpdate:o,onReset:i,onFieldUpdate:l,useQueryString:c}),n.useImperativeHandle(f,()=>h.current);return r.jsx(tc.Provider,{value:h.current,children:r.jsx(oc,{initialValues:e,useQueryString:c,onUpdate:o,onFinish:a,onFinishFailed:s,onValidated:d,name:p,className:(()=>{let e="itd-form";return p&&(e+=" "+p),u&&(e+=" "+u),e})(),children:t})})});ac.Item=rc,ac.Group=function({gap:e=15,horizontal:t=!1,className:n,children:o}){const i=()=>{let e="itd-form-group";return n&&(e+=" "+n),e};return r.jsx(Dd,{className:i(),$gap:e,$horizontal:t,children:o})},ac.Control=function({position:e="end",className:t,children:n}){const o=()=>{let e="itd-form-control";return t&&(e+=" "+t),e};return r.jsx(Md,{className:o(),$position:e,children:n})},ac.useForm=()=>n.useContext(tc),ac.useFormAPI=()=>{const e=n.useContext(tc);if(!e)throw new Error("useFormAPI must be used within a FormContext.Provider");return e};const sc=l.div`
|
|
2385
|
+
`;const Td=new RegExp(/^[a-zA-Z0-9.!#$%&'+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/),Od=new RegExp(/^[a-zA-Z0-9_.-]+$/),Id=new RegExp(/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!@#$%^&*()_+={};:<>|./?,"'\[\]\\`~\-])[a-zA-Z\d$begin:math:display$$end:math:display$\\`~!@#$%^&*()_+={};:<>|.\/?,"'-]{8,60}$/),Rd=new RegExp(/^[a-z0-9._-]+$/),Pd=new RegExp(/^[a-zA-Z0-9]+$/),Vd=new RegExp(/^https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,4}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)$/);const Bd=e=>Id.test(e),Hd=e=>Td.test(e),Ud=e=>Od.test(e),Gd=(e,t)=>e.length>=t,Yd=(e,t)=>e.length<=t,Wd=(e,t)=>e===t,qd=(e,t)=>e!==t,Xd=(e,t)=>e.length===t,Kd=e=>Rd.test(e),Jd=e=>Pd.test(e),Zd=e=>Vd.test(e),Qd=e=>function(e){var t,r=0,n=0,o=0;if(11!=e.length)return!1;if(!/^-?\d+$/.test(e))return!1;if(0==Number(e[0]))return!1;if(r=parseInt(e[0])+parseInt(e[2])+parseInt(e[4])+parseInt(e[6])+parseInt(e[8]),t=parseInt(e[1])+parseInt(e[3])+parseInt(e[5])+parseInt(e[7]),r*=7,Math.abs(r-t)%10!=Number(e[9]))return!1;for(o=0;o<10;o++)n+=parseInt(e[o]);return n%10==Number(e[10])}(e),ec=e=>{if(Array.isArray(e)){if(0===e.length)return!1}else{if("object"==typeof e){let t=!0;return Object.keys(e).forEach(r=>{""===e[r]&&(t=!1)}),t}if("string"==typeof e){if(""===e)return!1}else if("boolean"==typeof e&&!1===e)return!1}return!0},tc=n.createContext({});tc.displayName="ITDFormContext";const rc=n.forwardRef(({name:e="",label:r="",placeholder:o="",error:i="",rules:a=[],mask:s=null,locked:l=!1,dependency:d="",reset:c=[],query:u="",children:p=null},f)=>{const{t:h}=t.useTranslation("itd"),g=n.useRef(null),m=n.useRef(""),{register:x,unregister:v,hasField:y,updateField:A,setFieldError:w,getFieldValue:k,getFieldInstance:S,formId:_}=n.useContext(tc),[E,C]=n.useState(!1);n.useEffect(()=>(x({name:e,field:g,valid:F(g.current?.getValue(),!1),query:u,reset:c,error:i}),C(!0),m.current=JSON.stringify(a),()=>{C(!1),v(e)}),[]),n.useEffect(()=>{const t=JSON.stringify(a);if(E&&g.current&&m.current!==t){const r=()=>{const t=g.current.getValue(),r=a.find(e=>e.hasOwnProperty("required"));if(!r||r.required||""!==t&&null!=t){const r=F(t,!1);y(e)&&A(e,t,!1,r)}else w(e,"",!0),y(e)&&A(e,t,!1,!0)};"development"===process.env.NODE_ENV?requestAnimationFrame(r):r(),m.current=t}},[a,E]),n.useImperativeHandle(f,()=>g.current);const j=(t,r=!0,n=!0)=>{E&&y(e)&&(A(e,t,r,F(t,n)),$())},F=(t,r=!0)=>{const n=function(e,t,r,n){let o=[];return e.forEach(e=>{e.hasOwnProperty(b.REQUIRED)&&!ec(t)&&e.required&&o.push(e.message?e.message:n("errors.required")),e.hasOwnProperty(b.TYPE)&&(e.type===exports.FormValidationTypes.MIN_LENGTH&&(Gd(String(t),Number(e.value))||o.push(e.message?e.message:n("errors.minLength",{length:Number(e.value)}))),e.type===exports.FormValidationTypes.MAX_LENGTH&&(Yd(String(t),Number(e.value))||o.push(e.message?e.message:n("errors.maxLength",{length:Number(e.value)}))),e.type===exports.FormValidationTypes.EXACT_LENGTH&&(Xd(String(t),Number(e.value))||o.push(e.message?e.message:n("errors.exactLength",{length:Number(e.value)}))),e.type===exports.FormValidationTypes.SAME&&(Wd(String(t),String(r(String(e.field))))||o.push(e.message?e.message:n("errors.fieldMustBeTheSame",{fields:e.field}))),e.type===exports.FormValidationTypes.NOT_SAME&&(qd(String(t),String(r(String(e.field))))||o.push(e.message?e.message:n("errors.fieldMustBeDifferent",{fields:e.field}))),e.type===exports.FormValidationTypes.TC_IDENTITY&&(Qd(String(t))||o.push(e.message?e.message:n("errors.wrongTCIdentity"))),e.type===exports.FormValidationTypes.PASSWORD&&(Bd(String(t))||o.push(e.message?e.message:n("errors.passwordRule"))),e.type===exports.FormValidationTypes.EMAIL&&(Hd(String(t))||o.push(e.message?e.message:n("errors.invalidEmailAddress"))),e.type===exports.FormValidationTypes.USERNAME&&(Ud(String(t))||o.push(e.message?e.message:n("errors.usernameRule"))),e.type===exports.FormValidationTypes.SITE_USERNAME&&(Kd(String(t))||o.push(e.message?e.message:n("errors.siteUsernameRule"))),e.type===exports.FormValidationTypes.ADMIN_USERNAME&&(Jd(String(t))||o.push(e.message?e.message:n("errors.adminUsernameRule"))),e.type===exports.FormValidationTypes.URL&&(Zd(String(t))||o.push(e.message?e.message:n("errors.invalidURL"))))}),o}(a,t,k,h);return n.length>0?!!(r||""!==t&&null!=t)&&(r&&w(e,n[0],r),!1):(r&&w(e,""),!0)},$=()=>{if(""===d)return;if(""===k(d))return;const e=S(d);e&&e.forceUpdate&&e.forceUpdate()};return(()=>{if(!p)return null;let t=p.props;const i={id:t.id?t.id:_+"_"+e,label:r,placeholder:o,className:t.className?t.className+" itd-form-item":"itd-form-item",onUpdate:j,ref:g};return s&&(i.mask=s),l&&(i.locked=l),n.cloneElement(p,{...t,...i})})()}),nc=n.forwardRef(({name:e="",className:t="",initialValues:o={},useQueryString:i=!1,onUpdate:s,onFinish:l,onFinishFailed:d,onValidated:c,children:u},f)=>{const{updated:h,setInitialValues:g,isFormValid:m,getValues:b,getFields:x,setFieldValueByName:v,resetFields:y}=n.useContext(tc),A=V(),{search:w}=a.useLocation(),k=B(),[S,_]=n.useState([]),[E,C]=n.useState(!1),[j,F]=n.useState([]),[$,z]=n.useState(!1),[L,N]=n.useState(!1);n.useEffect(()=>{u&&P()},[u]),n.useEffect(()=>{D(),M()},[$]),n.useEffect(()=>{$||0!==Object.keys(x()).length&&0!==j.length&&Object.keys(x()).length===j.length&&z(!0)},[x(),j]),n.useEffect(()=>{M()},[o]),n.useEffect(()=>{D()},[w]),n.useEffect(()=>{L&&$&&i&&Object.keys(h).length>0&&I(h)},[h]),n.useEffect(()=>{c&&m()!==E&&c(m()),C(m())},[m()]);const D=()=>{$&&i&&(R(),L||O())},M=()=>{$&&(i||L||T())},T=()=>{const e=!Object.values(o).some(e=>null!==e&&""!==e);e&&!L&&N(!0),e||L||(g(o,!1),N(!0))},O=()=>{const e=x(),t=!Object.values(e).some(e=>""!==A.get(e.query,""));if(Object.values(e).some(e=>null===e.query||""===e.query)){let t=[];throw Object.keys(e).forEach(r=>{e[r].hasOwnProperty("query")&&null!==e[r].query&&""!==e[r].query||t.push(r)}),new Error(`ITD Form Initial Fields Error: "useQueryString" is activated but "query" value is not passed to whole form elements! Invalid fields are ${t.toString()}`)}if(t&&!L&&N(!0),!t&&!L){let t={};Object.keys(e).forEach(r=>{t[r]=A.get(e[r].query,"")}),g(t,!0,!0),N(!0)}},I=e=>{let t=[],r=[];const n=x();Object.keys(e).forEach(t=>{r.push(e[t])}),ci(r,S)||(Object.keys(n).forEach(r=>{t.push({type:n[r].query,value:e[r]})}),k.set(t))},R=()=>{let e=[],t=[];const r=x();if(Object.keys(r).forEach(t=>{let n=String(A.get(r[t].query,""));e.push(n)}),ci(e,S))return;_(e),Object.keys(r).forEach(e=>{t[e]=A.get(r[e].query,"")}),Object.keys(t).forEach(e=>{v(e,t[e],!1,!1)});let n={};Object.keys(t).forEach(e=>{n[e]=t[e]}),s&&s(n)},P=()=>{let e=[];p.getChildrenDeep(u,t=>(t.hasOwnProperty("type")&&t.type===rc&&e.push({[t.props.name]:t}),!0)),F(e)};return n.useImperativeHandle(f,()=>({fieldUpdate(e){console.log("fieldUpdate"),console.log(e)}})),r.jsx("form",{id:e,onSubmit:e=>{e&&(e.preventDefault(),e.stopPropagation()),m()?l&&l(b()):d&&d(x())},onReset:e=>{e&&(e.preventDefault(),e.stopPropagation());let t=[];Object.keys(x()).map(e=>{t.push({type:e,value:""})}),k.set(t),y(!0,!1)},autoComplete:"off",className:t,noValidate:!0,children:u})});var oc=n.memo(nc);function ic({name:e="",useQueryString:t=!1,onUpdate:r,onReset:o,onFieldUpdate:i}){const[a,s]=n.useState({}),[l,d]=n.useState(e),[c,u]=n.useState(!1),[p,f]=n.useState({});function h(e){return a.hasOwnProperty(e)&&void 0!==a[e]}function g(){let e={};return Object.keys(a).forEach(t=>{e[t]=x(t)}),e}function m(e,t,r=!0){if(h(e)&&a[e].field.current){if(a[e].valid=!1,a[e].error=t,!a[e].field.current?.hasOwnProperty("setError"))throw new Error(`ITD Reference Error: You must declare the 'setError' function on the field "${e}"`);a[e].field.current?.setError(r?t:"")}}function b(){let e=!0;return Object.keys(a).forEach(t=>{a[t].valid||(e=!1)}),u(e),e}function x(e){if(h(e)){if(a[e].field.current?.hasOwnProperty("getValue"))return a[e].field.current?.getValue();throw new Error(`ITD Reference Error: You must declare the 'getValue' function on the field "${e}"`)}console.error(`ITD Form Error [getFieldValueByName]: There is no field registered with this name: ${e}`)}function v(e,t,r,n){if(h(e)){if(!a[e].field.current?.hasOwnProperty("setValue"))throw new Error(`ITD Reference Error: You must declare the 'setValue' function on the field "${e}"`);{let o=x(e),i=!1;i=Array.isArray(o)&&Array.isArray(t)?ci(o,t):Array.isArray(o)||Array.isArray(t)?o.toString()===t.toString():o===t,i||a[e].field.current?.setValue(t,r,n)}}else console.error(`ITD Form Error [setFieldValueByName]: There is no field registered with this name: ${e}`)}return{register:function(e){a[e.name]={name:e.name,field:e.field,value:e.field.current?.getValue(),valid:e.valid,query:e.query,reset:e.reset,error:e.error}},unregister:function(e){h(e)?(delete a[e],b()):console.error(`ITD Form Error [unregister]: There is no field registered with this name: ${e}`)},checkFormIsValid:b,hasField:h,getValues:g,getFieldValue:function(e){return h(e)?(t=a[e].value)instanceof Object?JSON.stringify(t):t:"";var t},getFieldValueByName:x,getFieldInstance:function(e){return h(e)?a[e].field.current:null},getFields:function(){let e={};return Object.keys(a).forEach(t=>{e[t]=a[t]}),e},getFieldsInstance:function(){let e={};return Object.keys(a).forEach(t=>{e[t]=a[t].field.current}),e},setName:function(e){d(e)},setInitialValues:function(e,n=!0,o=!1){Object.keys(e).forEach(t=>{v(t,e[t],n,o)});let i={};return Object.keys(e).forEach(t=>{i[t]=e[t]}),n&&(t&&f(i),r&&r(i)),b(),i},setInvalidField:function(e="",t=""){m(e,t),b()},setInvalidFields:function(e=[],t=""){e.forEach(e=>{m(e,t)}),b()},setFieldValue:function(e,t){h(e)?a[e].field.current?.setValue(t,!0,!0):console.error(`ITD Form Error [setFieldValue]: There is no field registered with this name: ${e}`)},setFieldValueByName:v,setFieldError:m,removeFieldError:function(e){if(h(e)){if(a[e].valid=!0,a[e].error="",!a[e].field.current?.hasOwnProperty("setError"))throw new Error(`ITD Reference Error: You must declare the 'setError' function on the field "${e}"`);a[e].field.current?.setError("")}else console.error(`ITD Form Error [removeFieldError]: There is no field registered with this name: ${e}`)},updateField:function(e,n,o,s){if(h(e)){if(a[e].value=n,a[e].valid=s,o){i&&i({name:e,value:n,valid:s}),a[e].reset.length>0&&a[e].reset.forEach(e=>{a[e].value="",a[e].valid=!1,a[e].field.current?.reset(!1)});let o={...g(),[e]:n};a[e].reset.length>0&&a[e].reset.forEach(e=>{o[e]=""}),t&&s&&f(o),r&&r(o)}b()}else console.error(`ITD Form Error [updateField]: There is no field registered with this name: ${e}`)},isFormValid:n.useCallback(()=>c,[c]),isFieldsValid:function(e){let t=!0;return e.forEach(e=>{a[e].valid||(t=!1)}),t},isFieldValid:function(e){return a[e].valid},resetFields:function(e=!1,t=!1){Object.keys(a).forEach(r=>{if(!a[r].field.current?.hasOwnProperty("reset"))throw new Error(`ITD Reference Error: You must declare the 'reset' function on the field "${r}"`);a[r].field.current?.reset(e,t)}),o&&o()},removeFields:function(){s({})},formId:l,updated:p}}const ac=n.forwardRef(({initialValues:e,children:t,onUpdate:o,onReset:i,onFinish:a,onFinishFailed:s,onFieldUpdate:l,onValidated:d,useQueryString:c,className:u,name:p},f)=>{const h=n.useRef(null);n.useEffect(()=>()=>{h.current=null},[]),h.current=ic({name:p,onUpdate:o,onReset:i,onFieldUpdate:l,useQueryString:c}),n.useImperativeHandle(f,()=>h.current);return r.jsx(tc.Provider,{value:h.current,children:r.jsx(oc,{initialValues:e,useQueryString:c,onUpdate:o,onFinish:a,onFinishFailed:s,onValidated:d,name:p,className:(()=>{let e="itd-form";return p&&(e+=" "+p),u&&(e+=" "+u),e})(),children:t})})});ac.Item=rc,ac.Group=function({gap:e=15,horizontal:t=!1,className:n,children:o}){const i=()=>{let e="itd-form-group";return n&&(e+=" "+n),e};return r.jsx(Dd,{className:i(),$gap:e,$horizontal:t,children:o})},ac.Control=function({position:e="end",className:t,children:n}){const o=()=>{let e="itd-form-control";return t&&(e+=" "+t),e};return r.jsx(Md,{className:o(),$position:e,children:n})},ac.useForm=()=>n.useContext(tc),ac.useFormAPI=()=>{const e=n.useContext(tc);if(!e)throw new Error("useFormAPI must be used within a FormContext.Provider");return e};const sc=l.div`
|
|
2386
2386
|
|
|
2387
2387
|
&.itd-accordion-menu-sub-menu {
|
|
2388
2388
|
|
package/dist/index.esm.js
CHANGED
|
@@ -2382,7 +2382,7 @@ import e from"i18next";import{useTranslation as t,initReactI18next as r}from"rea
|
|
|
2382
2382
|
margin-top: 10px;
|
|
2383
2383
|
gap: 5px;
|
|
2384
2384
|
|
|
2385
|
-
`;const Yc=new RegExp(/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+([.])[a-zA-Z0-9-]+(?:.[a-zA-Z0-9-]+)*$/),Wc=new RegExp(/^[a-zA-Z0-9_.-]+$/),qc=new RegExp(/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!@#$%^&*()_+={};:<>|./?,"'\[\]\\`~\-])[a-zA-Z\d$begin:math:display$$end:math:display$\\`~!@#$%^&*()_+={};:<>|.\/?,"'-]{8,60}$/),Xc=new RegExp(/^[a-z0-9._-]+$/),Kc=new RegExp(/^[a-zA-Z0-9]+$/),Jc=new RegExp(/^https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,4}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)$/);const Zc=e=>qc.test(e),Qc=e=>Yc.test(e),eu=e=>Wc.test(e),tu=(e,t)=>e.length>=t,ru=(e,t)=>e.length<=t,nu=(e,t)=>e===t,iu=(e,t)=>e!==t,ou=(e,t)=>e.length===t,au=e=>Xc.test(e),lu=e=>Kc.test(e),su=e=>Jc.test(e),du=e=>function(e){var t,r=0,n=0,i=0;if(11!=e.length)return!1;if(!/^-?\d+$/.test(e))return!1;if(0==Number(e[0]))return!1;if(r=parseInt(e[0])+parseInt(e[2])+parseInt(e[4])+parseInt(e[6])+parseInt(e[8]),t=parseInt(e[1])+parseInt(e[3])+parseInt(e[5])+parseInt(e[7]),r*=7,Math.abs(r-t)%10!=Number(e[9]))return!1;for(i=0;i<10;i++)n+=parseInt(e[i]);return n%10==Number(e[10])}(e),cu=e=>{if(Array.isArray(e)){if(0===e.length)return!1}else{if("object"==typeof e){let t=!0;return Object.keys(e).forEach(r=>{""===e[r]&&(t=!1)}),t}if("string"==typeof e){if(""===e)return!1}else if("boolean"==typeof e&&!1===e)return!1}return!0},uu=m({});uu.displayName="ITDFormContext";const pu=x(({name:e="",label:r="",placeholder:n="",error:i="",rules:o=[],mask:a=null,locked:l=!1,dependency:p="",reset:f=[],query:h="",children:m=null},b)=>{const{t:v}=t("itd"),x=c(null),A=c(""),{register:w,unregister:k,hasField:_,updateField:S,setFieldError:E,getFieldValue:C,getFieldInstance:$,formId:L}=u(uu),[F,N]=s(!1);d(()=>(w({name:e,field:x,valid:D(x.current?.getValue(),!1),query:h,reset:f,error:i}),N(!0),A.current=JSON.stringify(o),()=>{N(!1),k(e)}),[]),d(()=>{const t=JSON.stringify(o);if(F&&x.current&&A.current!==t){const r=()=>{const t=x.current.getValue(),r=o.find(e=>e.hasOwnProperty("required"));if(!r||r.required||""!==t&&null!=t){const r=D(t,!1);_(e)&&S(e,t,!1,r)}else E(e,"",!0),_(e)&&S(e,t,!1,!0)};"development"===process.env.NODE_ENV?requestAnimationFrame(r):r(),A.current=t}},[o,F]),y(b,()=>x.current);const z=(t,r=!0,n=!0)=>{F&&_(e)&&(S(e,t,r,D(t,n)),M())},D=(t,r=!0)=>{const n=function(e,t,r,n){let i=[];return e.forEach(e=>{e.hasOwnProperty(U.REQUIRED)&&!cu(t)&&e.required&&i.push(e.message?e.message:n("errors.required")),e.hasOwnProperty(U.TYPE)&&(e.type===G.MIN_LENGTH&&(tu(String(t),Number(e.value))||i.push(e.message?e.message:n("errors.minLength",{length:Number(e.value)}))),e.type===G.MAX_LENGTH&&(ru(String(t),Number(e.value))||i.push(e.message?e.message:n("errors.maxLength",{length:Number(e.value)}))),e.type===G.EXACT_LENGTH&&(ou(String(t),Number(e.value))||i.push(e.message?e.message:n("errors.exactLength",{length:Number(e.value)}))),e.type===G.SAME&&(nu(String(t),String(r(String(e.field))))||i.push(e.message?e.message:n("errors.fieldMustBeTheSame",{fields:e.field}))),e.type===G.NOT_SAME&&(iu(String(t),String(r(String(e.field))))||i.push(e.message?e.message:n("errors.fieldMustBeDifferent",{fields:e.field}))),e.type===G.TC_IDENTITY&&(du(String(t))||i.push(e.message?e.message:n("errors.wrongTCIdentity"))),e.type===G.PASSWORD&&(Zc(String(t))||i.push(e.message?e.message:n("errors.passwordRule"))),e.type===G.EMAIL&&(Qc(String(t))||i.push(e.message?e.message:n("errors.invalidEmailAddress"))),e.type===G.USERNAME&&(eu(String(t))||i.push(e.message?e.message:n("errors.usernameRule"))),e.type===G.SITE_USERNAME&&(au(String(t))||i.push(e.message?e.message:n("errors.siteUsernameRule"))),e.type===G.ADMIN_USERNAME&&(lu(String(t))||i.push(e.message?e.message:n("errors.adminUsernameRule"))),e.type===G.URL&&(su(String(t))||i.push(e.message?e.message:n("errors.invalidURL"))))}),i}(o,t,C,v);return n.length>0?!!(r||""!==t&&null!=t)&&(r&&E(e,n[0],r),!1):(r&&E(e,""),!0)},M=()=>{if(""===p)return;if(""===C(p))return;const e=$(p);e&&e.forceUpdate&&e.forceUpdate()};return(()=>{if(!m)return null;let t=m.props;const i={id:t.id?t.id:L+"_"+e,label:r,placeholder:n,className:t.className?t.className+" itd-form-item":"itd-form-item",onUpdate:z,ref:x};return a&&(i.mask=a),l&&(i.locked=l),g(m,{...t,...i})})()}),fu=x(({name:e="",className:t="",initialValues:r={},useQueryString:i=!1,onUpdate:o,onFinish:a,onFinishFailed:l,onValidated:c,children:p},f)=>{const{updated:h,setInitialValues:g,isFormValid:m,getValues:b,getFields:v,setFieldValueByName:x,resetFields:A}=u(uu),w=me(),{search:k}=z(),_=be(),[S,E]=s([]),[C,$]=s(!1),[L,F]=s([]),[N,D]=s(!1),[M,T]=s(!1);d(()=>{p&&H()},[p]),d(()=>{O(),I()},[N]),d(()=>{N||0!==Object.keys(v()).length&&0!==L.length&&Object.keys(v()).length===L.length&&D(!0)},[v(),L]),d(()=>{I()},[r]),d(()=>{O()},[k]),d(()=>{M&&N&&i&&Object.keys(h).length>0&&V(h)},[h]),d(()=>{c&&m()!==C&&c(m()),$(m())},[m()]);const O=()=>{N&&i&&(j(),M||P())},I=()=>{N&&(i||M||R())},R=()=>{const e=!Object.values(r).some(e=>null!==e&&""!==e);e&&!M&&T(!0),e||M||(g(r,!1),T(!0))},P=()=>{const e=v(),t=!Object.values(e).some(e=>""!==w.get(e.query,""));if(Object.values(e).some(e=>null===e.query||""===e.query)){let t=[];throw Object.keys(e).forEach(r=>{e[r].hasOwnProperty("query")&&null!==e[r].query&&""!==e[r].query||t.push(r)}),new Error(`ITD Form Initial Fields Error: "useQueryString" is activated but "query" value is not passed to whole form elements! Invalid fields are ${t.toString()}`)}if(t&&!M&&T(!0),!t&&!M){let t={};Object.keys(e).forEach(r=>{t[r]=w.get(e[r].query,"")}),g(t,!0,!0),T(!0)}},V=e=>{let t=[],r=[];const n=v();Object.keys(e).forEach(t=>{r.push(e[t])}),ya(r,S)||(Object.keys(n).forEach(r=>{t.push({type:n[r].query,value:e[r]})}),_.set(t))},j=()=>{let e=[],t=[];const r=v();if(Object.keys(r).forEach(t=>{let n=String(w.get(r[t].query,""));e.push(n)}),ya(e,S))return;E(e),Object.keys(r).forEach(e=>{t[e]=w.get(r[e].query,"")}),Object.keys(t).forEach(e=>{x(e,t[e],!1,!1)});let n={};Object.keys(t).forEach(e=>{n[e]=t[e]}),o&&o(n)},H=()=>{let e=[];B(p,t=>(t.hasOwnProperty("type")&&t.type===pu&&e.push({[t.props.name]:t}),!0)),F(e)};return y(f,()=>({fieldUpdate(e){console.log("fieldUpdate"),console.log(e)}})),n("form",{id:e,onSubmit:e=>{e&&(e.preventDefault(),e.stopPropagation()),m()?a&&a(b()):l&&l(v())},onReset:e=>{e&&(e.preventDefault(),e.stopPropagation());let t=[];Object.keys(v()).map(e=>{t.push({type:e,value:""})}),_.set(t),A(!0,!1)},autoComplete:"off",className:t,noValidate:!0,children:p})});var hu=f(fu);function gu({name:e="",useQueryString:t=!1,onUpdate:r,onReset:n,onFieldUpdate:i}){const[o,a]=s({}),[l,d]=s(e),[c,u]=s(!1),[p,f]=s({});function h(e){return o.hasOwnProperty(e)&&void 0!==o[e]}function g(){let e={};return Object.keys(o).forEach(t=>{e[t]=x(t)}),e}function m(e,t,r=!0){if(h(e)&&o[e].field.current){if(o[e].valid=!1,o[e].error=t,!o[e].field.current?.hasOwnProperty("setError"))throw new Error(`ITD Reference Error: You must declare the 'setError' function on the field "${e}"`);o[e].field.current?.setError(r?t:"")}}function v(){let e=!0;return Object.keys(o).forEach(t=>{o[t].valid||(e=!1)}),u(e),e}function x(e){if(h(e)){if(o[e].field.current?.hasOwnProperty("getValue"))return o[e].field.current?.getValue();throw new Error(`ITD Reference Error: You must declare the 'getValue' function on the field "${e}"`)}console.error(`ITD Form Error [getFieldValueByName]: There is no field registered with this name: ${e}`)}function y(e,t,r,n){if(h(e)){if(!o[e].field.current?.hasOwnProperty("setValue"))throw new Error(`ITD Reference Error: You must declare the 'setValue' function on the field "${e}"`);{let i=x(e),a=!1;a=Array.isArray(i)&&Array.isArray(t)?ya(i,t):Array.isArray(i)||Array.isArray(t)?i.toString()===t.toString():i===t,a||o[e].field.current?.setValue(t,r,n)}}else console.error(`ITD Form Error [setFieldValueByName]: There is no field registered with this name: ${e}`)}return{register:function(e){o[e.name]={name:e.name,field:e.field,value:e.field.current?.getValue(),valid:e.valid,query:e.query,reset:e.reset,error:e.error}},unregister:function(e){h(e)?(delete o[e],v()):console.error(`ITD Form Error [unregister]: There is no field registered with this name: ${e}`)},checkFormIsValid:v,hasField:h,getValues:g,getFieldValue:function(e){return h(e)?(t=o[e].value)instanceof Object?JSON.stringify(t):t:"";var t},getFieldValueByName:x,getFieldInstance:function(e){return h(e)?o[e].field.current:null},getFields:function(){let e={};return Object.keys(o).forEach(t=>{e[t]=o[t]}),e},getFieldsInstance:function(){let e={};return Object.keys(o).forEach(t=>{e[t]=o[t].field.current}),e},setName:function(e){d(e)},setInitialValues:function(e,n=!0,i=!1){Object.keys(e).forEach(t=>{y(t,e[t],n,i)});let o={};return Object.keys(e).forEach(t=>{o[t]=e[t]}),n&&(t&&f(o),r&&r(o)),v(),o},setInvalidField:function(e="",t=""){m(e,t),v()},setInvalidFields:function(e=[],t=""){e.forEach(e=>{m(e,t)}),v()},setFieldValue:function(e,t){h(e)?o[e].field.current?.setValue(t,!0,!0):console.error(`ITD Form Error [setFieldValue]: There is no field registered with this name: ${e}`)},setFieldValueByName:y,setFieldError:m,removeFieldError:function(e){if(h(e)){if(o[e].valid=!0,o[e].error="",!o[e].field.current?.hasOwnProperty("setError"))throw new Error(`ITD Reference Error: You must declare the 'setError' function on the field "${e}"`);o[e].field.current?.setError("")}else console.error(`ITD Form Error [removeFieldError]: There is no field registered with this name: ${e}`)},updateField:function(e,n,a,l){if(h(e)){if(o[e].value=n,o[e].valid=l,a){i&&i({name:e,value:n,valid:l}),o[e].reset.length>0&&o[e].reset.forEach(e=>{o[e].value="",o[e].valid=!1,o[e].field.current?.reset(!1)});let a={...g(),[e]:n};o[e].reset.length>0&&o[e].reset.forEach(e=>{a[e]=""}),t&&l&&f(a),r&&r(a)}v()}else console.error(`ITD Form Error [updateField]: There is no field registered with this name: ${e}`)},isFormValid:b(()=>c,[c]),isFieldsValid:function(e){let t=!0;return e.forEach(e=>{o[e].valid||(t=!1)}),t},isFieldValid:function(e){return o[e].valid},resetFields:function(e=!1,t=!1){Object.keys(o).forEach(r=>{if(!o[r].field.current?.hasOwnProperty("reset"))throw new Error(`ITD Reference Error: You must declare the 'reset' function on the field "${r}"`);o[r].field.current?.reset(e,t)}),n&&n()},removeFields:function(){a({})},formId:l,updated:p}}const mu=x(({initialValues:e,children:t,onUpdate:r,onReset:i,onFinish:o,onFinishFailed:a,onFieldUpdate:l,onValidated:s,useQueryString:u,className:p,name:f},h)=>{const g=c(null);d(()=>()=>{g.current=null},[]),g.current=gu({name:f,onUpdate:r,onReset:i,onFieldUpdate:l,useQueryString:u}),y(h,()=>g.current);return n(uu.Provider,{value:g.current,children:n(hu,{initialValues:e,useQueryString:u,onUpdate:r,onFinish:o,onFinishFailed:a,onValidated:s,name:f,className:(()=>{let e="itd-form";return f&&(e+=" "+f),p&&(e+=" "+p),e})(),children:t})})});mu.Item=pu,mu.Group=function({gap:e=15,horizontal:t=!1,className:r,children:i}){return n(Uc,{className:(()=>{let e="itd-form-group";return r&&(e+=" "+r),e})(),$gap:e,$horizontal:t,children:i})},mu.Control=function({position:e="end",className:t,children:r}){return n(Gc,{className:(()=>{let e="itd-form-control";return t&&(e+=" "+t),e})(),$position:e,children:r})},mu.useForm=()=>u(uu),mu.useFormAPI=()=>{const e=u(uu);if(!e)throw new Error("useFormAPI must be used within a FormContext.Provider");return e};const bu=M.div`
|
|
2385
|
+
`;const Yc=new RegExp(/^[a-zA-Z0-9.!#$%&'+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/),Wc=new RegExp(/^[a-zA-Z0-9_.-]+$/),qc=new RegExp(/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!@#$%^&*()_+={};:<>|./?,"'\[\]\\`~\-])[a-zA-Z\d$begin:math:display$$end:math:display$\\`~!@#$%^&*()_+={};:<>|.\/?,"'-]{8,60}$/),Xc=new RegExp(/^[a-z0-9._-]+$/),Kc=new RegExp(/^[a-zA-Z0-9]+$/),Jc=new RegExp(/^https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,4}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)$/);const Zc=e=>qc.test(e),Qc=e=>Yc.test(e),eu=e=>Wc.test(e),tu=(e,t)=>e.length>=t,ru=(e,t)=>e.length<=t,nu=(e,t)=>e===t,iu=(e,t)=>e!==t,ou=(e,t)=>e.length===t,au=e=>Xc.test(e),lu=e=>Kc.test(e),su=e=>Jc.test(e),du=e=>function(e){var t,r=0,n=0,i=0;if(11!=e.length)return!1;if(!/^-?\d+$/.test(e))return!1;if(0==Number(e[0]))return!1;if(r=parseInt(e[0])+parseInt(e[2])+parseInt(e[4])+parseInt(e[6])+parseInt(e[8]),t=parseInt(e[1])+parseInt(e[3])+parseInt(e[5])+parseInt(e[7]),r*=7,Math.abs(r-t)%10!=Number(e[9]))return!1;for(i=0;i<10;i++)n+=parseInt(e[i]);return n%10==Number(e[10])}(e),cu=e=>{if(Array.isArray(e)){if(0===e.length)return!1}else{if("object"==typeof e){let t=!0;return Object.keys(e).forEach(r=>{""===e[r]&&(t=!1)}),t}if("string"==typeof e){if(""===e)return!1}else if("boolean"==typeof e&&!1===e)return!1}return!0},uu=m({});uu.displayName="ITDFormContext";const pu=x(({name:e="",label:r="",placeholder:n="",error:i="",rules:o=[],mask:a=null,locked:l=!1,dependency:p="",reset:f=[],query:h="",children:m=null},b)=>{const{t:v}=t("itd"),x=c(null),A=c(""),{register:w,unregister:k,hasField:_,updateField:S,setFieldError:E,getFieldValue:C,getFieldInstance:$,formId:L}=u(uu),[F,N]=s(!1);d(()=>(w({name:e,field:x,valid:D(x.current?.getValue(),!1),query:h,reset:f,error:i}),N(!0),A.current=JSON.stringify(o),()=>{N(!1),k(e)}),[]),d(()=>{const t=JSON.stringify(o);if(F&&x.current&&A.current!==t){const r=()=>{const t=x.current.getValue(),r=o.find(e=>e.hasOwnProperty("required"));if(!r||r.required||""!==t&&null!=t){const r=D(t,!1);_(e)&&S(e,t,!1,r)}else E(e,"",!0),_(e)&&S(e,t,!1,!0)};"development"===process.env.NODE_ENV?requestAnimationFrame(r):r(),A.current=t}},[o,F]),y(b,()=>x.current);const z=(t,r=!0,n=!0)=>{F&&_(e)&&(S(e,t,r,D(t,n)),M())},D=(t,r=!0)=>{const n=function(e,t,r,n){let i=[];return e.forEach(e=>{e.hasOwnProperty(U.REQUIRED)&&!cu(t)&&e.required&&i.push(e.message?e.message:n("errors.required")),e.hasOwnProperty(U.TYPE)&&(e.type===G.MIN_LENGTH&&(tu(String(t),Number(e.value))||i.push(e.message?e.message:n("errors.minLength",{length:Number(e.value)}))),e.type===G.MAX_LENGTH&&(ru(String(t),Number(e.value))||i.push(e.message?e.message:n("errors.maxLength",{length:Number(e.value)}))),e.type===G.EXACT_LENGTH&&(ou(String(t),Number(e.value))||i.push(e.message?e.message:n("errors.exactLength",{length:Number(e.value)}))),e.type===G.SAME&&(nu(String(t),String(r(String(e.field))))||i.push(e.message?e.message:n("errors.fieldMustBeTheSame",{fields:e.field}))),e.type===G.NOT_SAME&&(iu(String(t),String(r(String(e.field))))||i.push(e.message?e.message:n("errors.fieldMustBeDifferent",{fields:e.field}))),e.type===G.TC_IDENTITY&&(du(String(t))||i.push(e.message?e.message:n("errors.wrongTCIdentity"))),e.type===G.PASSWORD&&(Zc(String(t))||i.push(e.message?e.message:n("errors.passwordRule"))),e.type===G.EMAIL&&(Qc(String(t))||i.push(e.message?e.message:n("errors.invalidEmailAddress"))),e.type===G.USERNAME&&(eu(String(t))||i.push(e.message?e.message:n("errors.usernameRule"))),e.type===G.SITE_USERNAME&&(au(String(t))||i.push(e.message?e.message:n("errors.siteUsernameRule"))),e.type===G.ADMIN_USERNAME&&(lu(String(t))||i.push(e.message?e.message:n("errors.adminUsernameRule"))),e.type===G.URL&&(su(String(t))||i.push(e.message?e.message:n("errors.invalidURL"))))}),i}(o,t,C,v);return n.length>0?!!(r||""!==t&&null!=t)&&(r&&E(e,n[0],r),!1):(r&&E(e,""),!0)},M=()=>{if(""===p)return;if(""===C(p))return;const e=$(p);e&&e.forceUpdate&&e.forceUpdate()};return(()=>{if(!m)return null;let t=m.props;const i={id:t.id?t.id:L+"_"+e,label:r,placeholder:n,className:t.className?t.className+" itd-form-item":"itd-form-item",onUpdate:z,ref:x};return a&&(i.mask=a),l&&(i.locked=l),g(m,{...t,...i})})()}),fu=x(({name:e="",className:t="",initialValues:r={},useQueryString:i=!1,onUpdate:o,onFinish:a,onFinishFailed:l,onValidated:c,children:p},f)=>{const{updated:h,setInitialValues:g,isFormValid:m,getValues:b,getFields:v,setFieldValueByName:x,resetFields:A}=u(uu),w=me(),{search:k}=z(),_=be(),[S,E]=s([]),[C,$]=s(!1),[L,F]=s([]),[N,D]=s(!1),[M,T]=s(!1);d(()=>{p&&H()},[p]),d(()=>{O(),I()},[N]),d(()=>{N||0!==Object.keys(v()).length&&0!==L.length&&Object.keys(v()).length===L.length&&D(!0)},[v(),L]),d(()=>{I()},[r]),d(()=>{O()},[k]),d(()=>{M&&N&&i&&Object.keys(h).length>0&&V(h)},[h]),d(()=>{c&&m()!==C&&c(m()),$(m())},[m()]);const O=()=>{N&&i&&(j(),M||P())},I=()=>{N&&(i||M||R())},R=()=>{const e=!Object.values(r).some(e=>null!==e&&""!==e);e&&!M&&T(!0),e||M||(g(r,!1),T(!0))},P=()=>{const e=v(),t=!Object.values(e).some(e=>""!==w.get(e.query,""));if(Object.values(e).some(e=>null===e.query||""===e.query)){let t=[];throw Object.keys(e).forEach(r=>{e[r].hasOwnProperty("query")&&null!==e[r].query&&""!==e[r].query||t.push(r)}),new Error(`ITD Form Initial Fields Error: "useQueryString" is activated but "query" value is not passed to whole form elements! Invalid fields are ${t.toString()}`)}if(t&&!M&&T(!0),!t&&!M){let t={};Object.keys(e).forEach(r=>{t[r]=w.get(e[r].query,"")}),g(t,!0,!0),T(!0)}},V=e=>{let t=[],r=[];const n=v();Object.keys(e).forEach(t=>{r.push(e[t])}),ya(r,S)||(Object.keys(n).forEach(r=>{t.push({type:n[r].query,value:e[r]})}),_.set(t))},j=()=>{let e=[],t=[];const r=v();if(Object.keys(r).forEach(t=>{let n=String(w.get(r[t].query,""));e.push(n)}),ya(e,S))return;E(e),Object.keys(r).forEach(e=>{t[e]=w.get(r[e].query,"")}),Object.keys(t).forEach(e=>{x(e,t[e],!1,!1)});let n={};Object.keys(t).forEach(e=>{n[e]=t[e]}),o&&o(n)},H=()=>{let e=[];B(p,t=>(t.hasOwnProperty("type")&&t.type===pu&&e.push({[t.props.name]:t}),!0)),F(e)};return y(f,()=>({fieldUpdate(e){console.log("fieldUpdate"),console.log(e)}})),n("form",{id:e,onSubmit:e=>{e&&(e.preventDefault(),e.stopPropagation()),m()?a&&a(b()):l&&l(v())},onReset:e=>{e&&(e.preventDefault(),e.stopPropagation());let t=[];Object.keys(v()).map(e=>{t.push({type:e,value:""})}),_.set(t),A(!0,!1)},autoComplete:"off",className:t,noValidate:!0,children:p})});var hu=f(fu);function gu({name:e="",useQueryString:t=!1,onUpdate:r,onReset:n,onFieldUpdate:i}){const[o,a]=s({}),[l,d]=s(e),[c,u]=s(!1),[p,f]=s({});function h(e){return o.hasOwnProperty(e)&&void 0!==o[e]}function g(){let e={};return Object.keys(o).forEach(t=>{e[t]=x(t)}),e}function m(e,t,r=!0){if(h(e)&&o[e].field.current){if(o[e].valid=!1,o[e].error=t,!o[e].field.current?.hasOwnProperty("setError"))throw new Error(`ITD Reference Error: You must declare the 'setError' function on the field "${e}"`);o[e].field.current?.setError(r?t:"")}}function v(){let e=!0;return Object.keys(o).forEach(t=>{o[t].valid||(e=!1)}),u(e),e}function x(e){if(h(e)){if(o[e].field.current?.hasOwnProperty("getValue"))return o[e].field.current?.getValue();throw new Error(`ITD Reference Error: You must declare the 'getValue' function on the field "${e}"`)}console.error(`ITD Form Error [getFieldValueByName]: There is no field registered with this name: ${e}`)}function y(e,t,r,n){if(h(e)){if(!o[e].field.current?.hasOwnProperty("setValue"))throw new Error(`ITD Reference Error: You must declare the 'setValue' function on the field "${e}"`);{let i=x(e),a=!1;a=Array.isArray(i)&&Array.isArray(t)?ya(i,t):Array.isArray(i)||Array.isArray(t)?i.toString()===t.toString():i===t,a||o[e].field.current?.setValue(t,r,n)}}else console.error(`ITD Form Error [setFieldValueByName]: There is no field registered with this name: ${e}`)}return{register:function(e){o[e.name]={name:e.name,field:e.field,value:e.field.current?.getValue(),valid:e.valid,query:e.query,reset:e.reset,error:e.error}},unregister:function(e){h(e)?(delete o[e],v()):console.error(`ITD Form Error [unregister]: There is no field registered with this name: ${e}`)},checkFormIsValid:v,hasField:h,getValues:g,getFieldValue:function(e){return h(e)?(t=o[e].value)instanceof Object?JSON.stringify(t):t:"";var t},getFieldValueByName:x,getFieldInstance:function(e){return h(e)?o[e].field.current:null},getFields:function(){let e={};return Object.keys(o).forEach(t=>{e[t]=o[t]}),e},getFieldsInstance:function(){let e={};return Object.keys(o).forEach(t=>{e[t]=o[t].field.current}),e},setName:function(e){d(e)},setInitialValues:function(e,n=!0,i=!1){Object.keys(e).forEach(t=>{y(t,e[t],n,i)});let o={};return Object.keys(e).forEach(t=>{o[t]=e[t]}),n&&(t&&f(o),r&&r(o)),v(),o},setInvalidField:function(e="",t=""){m(e,t),v()},setInvalidFields:function(e=[],t=""){e.forEach(e=>{m(e,t)}),v()},setFieldValue:function(e,t){h(e)?o[e].field.current?.setValue(t,!0,!0):console.error(`ITD Form Error [setFieldValue]: There is no field registered with this name: ${e}`)},setFieldValueByName:y,setFieldError:m,removeFieldError:function(e){if(h(e)){if(o[e].valid=!0,o[e].error="",!o[e].field.current?.hasOwnProperty("setError"))throw new Error(`ITD Reference Error: You must declare the 'setError' function on the field "${e}"`);o[e].field.current?.setError("")}else console.error(`ITD Form Error [removeFieldError]: There is no field registered with this name: ${e}`)},updateField:function(e,n,a,l){if(h(e)){if(o[e].value=n,o[e].valid=l,a){i&&i({name:e,value:n,valid:l}),o[e].reset.length>0&&o[e].reset.forEach(e=>{o[e].value="",o[e].valid=!1,o[e].field.current?.reset(!1)});let a={...g(),[e]:n};o[e].reset.length>0&&o[e].reset.forEach(e=>{a[e]=""}),t&&l&&f(a),r&&r(a)}v()}else console.error(`ITD Form Error [updateField]: There is no field registered with this name: ${e}`)},isFormValid:b(()=>c,[c]),isFieldsValid:function(e){let t=!0;return e.forEach(e=>{o[e].valid||(t=!1)}),t},isFieldValid:function(e){return o[e].valid},resetFields:function(e=!1,t=!1){Object.keys(o).forEach(r=>{if(!o[r].field.current?.hasOwnProperty("reset"))throw new Error(`ITD Reference Error: You must declare the 'reset' function on the field "${r}"`);o[r].field.current?.reset(e,t)}),n&&n()},removeFields:function(){a({})},formId:l,updated:p}}const mu=x(({initialValues:e,children:t,onUpdate:r,onReset:i,onFinish:o,onFinishFailed:a,onFieldUpdate:l,onValidated:s,useQueryString:u,className:p,name:f},h)=>{const g=c(null);d(()=>()=>{g.current=null},[]),g.current=gu({name:f,onUpdate:r,onReset:i,onFieldUpdate:l,useQueryString:u}),y(h,()=>g.current);return n(uu.Provider,{value:g.current,children:n(hu,{initialValues:e,useQueryString:u,onUpdate:r,onFinish:o,onFinishFailed:a,onValidated:s,name:f,className:(()=>{let e="itd-form";return f&&(e+=" "+f),p&&(e+=" "+p),e})(),children:t})})});mu.Item=pu,mu.Group=function({gap:e=15,horizontal:t=!1,className:r,children:i}){return n(Uc,{className:(()=>{let e="itd-form-group";return r&&(e+=" "+r),e})(),$gap:e,$horizontal:t,children:i})},mu.Control=function({position:e="end",className:t,children:r}){return n(Gc,{className:(()=>{let e="itd-form-control";return t&&(e+=" "+t),e})(),$position:e,children:r})},mu.useForm=()=>u(uu),mu.useFormAPI=()=>{const e=u(uu);if(!e)throw new Error("useFormAPI must be used within a FormContext.Provider");return e};const bu=M.div`
|
|
2386
2386
|
|
|
2387
2387
|
&.itd-accordion-menu-sub-menu {
|
|
2388
2388
|
|