PluginProbe
Bit Form – Contact Form, Payment Forms, Multi Step Forms, Calculator & Custom Form Builder / 3.3.1
Bit Form – Contact Form, Payment Forms, Multi Step Forms, Calculator & Custom Form Builder v3.3.1
3.3.1 V-3.3.0 3.2.2 3.2.1 3.2.0 3.1.4 3.1.3 3.1.2 3.1.1 3.1.0 V3.0.3 V3.0.2 -3.0.1 V_3.0.0 1.1.1 1.1.8 1.2 1.3 1.4 1.4.18 1.5.2 1.9 2.0 2.10.0 2.10.1 All 138 releases
← All changes | assets/validateForm.min.js +1 -1 2.03.3.1 View file →
@@ -1 +1 @@
1 -var validateForm=function(){"use strict";let e,t,i={};const n=t=>window?.bf_globals?.[e].inits?.[t],o=n=>{const o=document.getElementById(`form-${e}`).querySelector(`[name="${n}"]`).id,l="[]"===n.slice(-2)?n.slice(0,n.length-2):n;if(o!==l){if(i[l])return i[l];const e=Object.entries(t);for(let t=0;t<e.length;t+=1){const[n,o]=e[t];if(o?.fieldName===l)return i[l]=n,n}}return o},l=()=>{const n=new FormData(document.getElementById(`form-${e}`)),l={},r=Array.from(n.entries());return i={},r.forEach((e=>{let[i,n]=e;const r=o(i);r in t&&(l[r]?(Array.isArray(l[r])||(l[r]=[l[r]]),l[r].push(n)):l[r]=n)})),l},r=(t,i,n)=>{const o=bfSelect(`#form-${e} .${i}-err-wrp`),l=bfSelect(`.${i}-err-txt`,o),r=bfSelect(`.${i}-err-msg`,o);if(l&&"err"in(n||{}))if(t&&n?.err?.[t]?.show){r.style.removeProperty("display"),l.innerHTML=n.err[t].custom?n.err[t].msg:n.err[t].dflt,setStyleProperty(o,"height",`${l.parentElement.scrollHeight}px`),setStyleProperty(o,"opacity",1);const d=document.querySelector(`#form-${e} .btcd-fld-itm.${i}`);scrollToFld(d)}else l.innerHTML="",setStyleProperty(r,"display","none"),setStyleProperty(o,"height",0),setStyleProperty(o,"opacity",0)};return function(i){let{form:d,input:a}=i;if(d?e=d:a?.form?.id&&([,e]=a.form.id.split("form-")),void 0===window?.bf_globals?.[e])return!1;let f={};const c=window?.bf_globals?.[e].configs.bf_separator;t=window?.bf_globals?.[e].fields;const s=window?.bf_globals?.[e].modifiedFields;if(s&&Object.assign(t,s),d)f=l();else if(a){if(!window?.bf_globals?.[e].validateFocusLost)return!0;const i=o(a.name);f=l(),t={[i]:t[i]}}let u=!0;const p=Object.entries(t);let{length:m}=p;for(;m--;){const[t,i]=p[m],o=i.typ,l="string"==typeof f[t]?f[t].trim():f[t];if(document.querySelector(`#form-${e} .${t}.fld-hide`)){r("",t);continue}let d="";"check"===o&&(d="undefined"!=typeof checkFldValidation?checkFldValidation(l,i):""),"check"!==o&&"radio"!==o||d||"undefined"==typeof customOptionValidation||(d=customOptionValidation(t,i)),l||d||(d="undefined"!=typeof requiredFldValidation?requiredFldValidation(i):null),r(d,t,i),d?u=!1:l&&("number"===o&&"undefined"!=typeof nmbrFldValidation?d=nmbrFldValidation(l,i):"email"===o&&"undefined"!=typeof emailFldValidation?d=emailFldValidation(l,i):"url"===o&&"undefined"!=typeof urlFldValidation?d=urlFldValidation(l,i):"decision-box"===o&&"undefined"!=typeof dcsnbxFldValidation?d=dcsnbxFldValidation(l,i):"check"!==o&&"select"!==o||"undefined"==typeof checkMinMaxOptions?"file-up"===o&&"undefined"!=typeof fileupFldValidation?d=fileupFldValidation(l,i):"advanced-file-up"===o&&"undefined"!=typeof advanceFileUpFldValidation?d=advanceFileUpFldValidation(n(t),i):"phone-number"===o&&"undefined"!=typeof phoneNumberFldValidation&&(d=phoneNumberFldValidation(n(t))):d=checkMinMaxOptions(l,i,c),i?.valid?.regexr&&!d&&(d="undefined"!=typeof regexPatternValidation?regexPatternValidation(l,i):null),r(d,t,i),d&&(u=!1))}return u}}();
1 +var validateForm=function(){"use strict";let e,t,i={},n=[];const l=t=>window?.bf_globals?.[e].inits?.[t],r=(e,t,i)=>{const n=Number(i)>1?`${e}[${i}]`:e;return t.inits&&!t.inits[n]?e:n},d=e=>{const n=e.replace(/\[\d*\]/g,"");if(i[n])return i[n];const l=Object.entries(t);for(let e=0;e<l.length;e+=1){const[t,r]=l[e];if(r?.fieldName===n)return i[n]=t,t}return""},o=()=>{const n=new FormData(bfSelect(`#form-${e}`)),l={},r=Array.from(n.entries());return i={},r.forEach(([e,i])=>{const n=d(e),r=e.replace("[]","");n in t&&(l[r]?(Array.isArray(l[r])||(l[r]=[l[r]]),l[r].push(i)):l[r]=i)}),l},a=(t,i,l,r="")=>{const d=bfSelect(`#form-${e} ${r} .${i}-err-wrp`),o=bfSelect(`.${i}-err-txt`,d),a=bfSelect(`.${i}-err-msg`,d);let f=!1;try{f="grid"===getComputedStyle(d).display,f&&(d.style.removeProperty("opacity"),d.style.removeProperty("height"),a.style.removeProperty("display"))}catch(e){f=!1}const s=bfSelect(`#form-${e} ${r} .${i}-fld`),c=bfSelect(`#form-${e} ${r} .${i}-cc[role="group"], #form-${e} ${r} .${i}-cc[role="radiogroup"]`);if(o&&"err"in(l||{}))if(t&&l?.err?.[t]?.show){const{custom:e,msg:r,dflt:p}=l.err[t];o.innerHTML=e&&r?r:p,f?setStyleProperty(d,"grid-template-rows","1fr"):setTimeout(()=>{a.style.removeProperty("display"),setStyleProperty(d,"height",`${o.offsetHeight}px`),setStyleProperty(d,"opacity",1)},100),n.push(i),s&&s.setAttribute("aria-invalid","true"),c&&c.setAttribute("aria-invalid","true")}else o.innerHTML="",f?setStyleProperty(d,"grid-template-rows","0fr"):(setStyleProperty(d,"height",0),setStyleProperty(d,"opacity",0),setStyleProperty(a,"display","none")),s&&s.removeAttribute("aria-invalid"),c&&c.removeAttribute("aria-invalid")};return function({form:i,input:f},{step:s,otherOptions:c}={}){i?e=i:f?.form?.id&&([,e]=f.form.id.split("form-"));const p=window?.bf_globals?.[e];if(void 0===p)return!1;let u={};n=[];const y=p.configs.bf_separator;if(s){let e=p.layout[s-1];if(!e)return!1;e=e?.layout||e;const i=e.lg.map(e=>e.i),n=p.nestedLayout||{};Object.entries(n).forEach(([e,t])=>{if(i.includes(e)){const e=t.lg.map(e=>e.i);i.push(...e)}}),t=i.reduce((e,t)=>({...e,[t]:p.fields[t]}),{})}else t=p.fields;const{modifiedFields:m}=p;if(m&&Object.keys(t).forEach(e=>{m[e]&&(t[e]=m[e])}),i)u=o();else if(f){if(!p.validateFocusLost&&!c?.validateOnInput)return!0;const e=d(f.name);u=o(),t={[e]:t[e]}}let F=!0;const h=Object.entries(t);let{length:b}=h;for(;b--;){const[t,i]=h[b];let n=[""];if(!i?.isDeactive&&bfSelect(`#form-${e} .${t}, #form-${e} .${t}-sub-fld-wrp, #form-${e} .${t}-err-wrp`)){if("undefined"!=typeof checkRepeatedField){const e=checkRepeatedField(t,p);n=getRepeatedIndexes(e,p,f)}for(let d=0;d<n.length;d+=1){const o=n[d],f=o?`${i.fieldName}[${o}]`:i.fieldName,s=`#form-${e}`,c=o?`.rpt-index-${o}`:"",m=i.typ,h="string"==typeof u[f]?u[f].trim():u[f],b=r(t,p,o);if(bfSelect(`${s} ${c} .${t}.fld-hide, ${s} .fld-hide ${c} .${t}`)){a("",t,i,c);continue}let $="";if("check"!==m&&"image-select"!==m||($="undefined"!=typeof checkFldValidation?checkFldValidation(h,i):""),"check"!==m&&"radio"!==m||$||"undefined"==typeof customOptionValidation||($=customOptionValidation(e,t,i)),h||$||"0"===h||($="undefined"!=typeof requiredFldValidation?requiredFldValidation(i):null),a($,t,i,c),$)F=!1;else if(["password","email"].includes(m)&&i?.parentFieldKey&&!i?.isDeactive&&"undefined"!=typeof confirmFldMatch&&($=confirmFldMatch(h,i,u,p.fields,o)),a($,t,i,c),$)F=!1;else if("email-otp"!==m||"undefined"==typeof emailOtpFldValidation){if(h){if("number"===m&&"undefined"!=typeof nmbrFldValidation)$=nmbrFldValidation(h,i);else if("email"===m&&"undefined"!=typeof emailFldValidation)$=emailFldValidation(h,i);else if("url"===m&&"undefined"!=typeof urlFldValidation)$=urlFldValidation(h,i);else if(["decision-box","gdpr"].includes(m)&&"undefined"!=typeof dcsnbxFldValidation)$=dcsnbxFldValidation(h,i);else if(["check","select","image-select"].includes(m)&&"undefined"!=typeof checkMinMaxOptions)$=checkMinMaxOptions(h,i,y);else if("range"===m&&"undefined"!=typeof checkMinMaxValue)$=checkMinMaxValue(h,i);else if("file-up"===m&&"undefined"!=typeof fileupFldValidation)$=fileupFldValidation(l(b),h,i);else if("advanced-file-up"===m&&"undefined"!=typeof advanceFileUpFldValidation)$=advanceFileUpFldValidation(l(b),i);else if("phone-number"===m&&"undefined"!=typeof phoneNumberFldValidation)$=phoneNumberFldValidation(l(b),i);else if("currency"===m&&"undefined"!=typeof currencyFldValidation)$=currencyFldValidation(l(b),i);else if(i?.parentFieldKey&&/\[zip\]$/.test(i.fieldName||"")&&"address"===p.fields[i.parentFieldKey]?.typ&&"undefined"!=typeof addressZipFldValidation){const e=l(r(i.parentFieldKey,p,o));$=addressZipFldValidation(h,i,e,p.fields[i.parentFieldKey])}$||"undefined"==typeof bfDatetimeFldValidation||($=bfDatetimeFldValidation(l(b),h,i)),i?.valid?.inputMask&&!$&&($="undefined"!=typeof inputMaskValidation?inputMaskValidation(e,t,h,i):null),i?.valid?.regexr&&!$&&($="undefined"!=typeof regexPatternValidation?regexPatternValidation(h,i):null),$||"undefined"==typeof textLengthValidation||($=textLengthValidation(h,i)),a($,t,i,c),$&&(F=!1)}}else $=emailOtpFldValidation(l(b),i),a($,t,i,c),$&&(F=!1)}}}return i&&(moveToFirstErrFld(p,n),F||(t=>{if(0===t)return;const i=bfSelect(`#${e}`),n=i?.querySelector(".bf-live-region");if(!n)return;const l=1===t?"Form has 1 validation error. Please correct it before submitting.":`Form has ${t} validation errors. Please correct them before submitting.`;n.textContent=l,setTimeout(()=>{n.textContent=""},3e3)})(n.length)),F}}();