@lifesg/web-frontend-engine 1.19.16 → 1.19.17
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/chunks/{file-upload-manager.6311ed18.js → file-upload-manager.92166f18.js} +2 -2
- package/chunks/{file-upload-manager.6311ed18.js.map → file-upload-manager.92166f18.js.map} +1 -1
- package/chunks/{index.37b3d4e8.js → index.58d43dbb.js} +6 -6
- package/chunks/{index.37b3d4e8.js.map → index.58d43dbb.js.map} +1 -1
- package/chunks/{index.d49e32ea.js → index.be8ad57b.js} +2 -2
- package/chunks/{index.d49e32ea.js.map → index.be8ad57b.js.map} +1 -1
- package/chunks/{index.23cbde7d.js → index.d4dbff90.js} +2 -2
- package/chunks/{index.23cbde7d.js.map → index.d4dbff90.js.map} +1 -1
- package/chunks/{location-modal.b266d701.js → location-modal.0395a6f9.js} +2 -2
- package/chunks/{location-modal.b266d701.js.map → location-modal.0395a6f9.js.map} +1 -1
- package/cjs/chunks/{file-upload-manager.850bb116.js → file-upload-manager.b483cbd3.js} +2 -2
- package/cjs/chunks/{file-upload-manager.850bb116.js.map → file-upload-manager.b483cbd3.js.map} +1 -1
- package/cjs/chunks/{index.bc6ce3d3.js → index.20f9dfab.js} +6 -6
- package/cjs/chunks/{index.bc6ce3d3.js.map → index.20f9dfab.js.map} +1 -1
- package/cjs/chunks/{index.06945e3c.js → index.6d530cde.js} +2 -2
- package/cjs/chunks/{index.06945e3c.js.map → index.6d530cde.js.map} +1 -1
- package/cjs/chunks/{index.fd2f5fdf.js → index.affd04db.js} +2 -2
- package/cjs/chunks/{index.fd2f5fdf.js.map → index.affd04db.js.map} +1 -1
- package/cjs/chunks/{location-modal.48300b71.js → location-modal.99b9bb33.js} +2 -2
- package/cjs/chunks/{location-modal.48300b71.js.map → location-modal.99b9bb33.js.map} +1 -1
- package/cjs/index.js +1 -1
- package/index.js +1 -1
- package/package.json +1 -1
|
@@ -294,7 +294,7 @@ function eC(e){return"[object Object]"===Object.prototype.toString.call(e)}Objec
|
|
|
294
294
|
height: auto;
|
|
295
295
|
`,xI=({id:r,lat:i,lng:a,address:o,staticMapPinColor:s={r:28,g:118,b:213},className:u,onClick:l,disabled:c})=>{const d=t.useRef(!1),[f,p]=t.useState(""),h=t.useRef([0,0]);t.useEffect((()=>(window.addEventListener("resize",m),i&&a&&m(),()=>{window.removeEventListener("resize",m)})),[i,a]);const m=()=>{if(!i||!a)return;const e=window.matchMedia(`(max-width: ${n.MediaWidths.mobileL}px)`).matches;if(d.current!==e||h.current[0]!==i||h.current[1]!==a){d.current=e;const t=e?EI.mobile:EI.desktop,n=15,r=t.height+n;p(exports.LocationHelper.getStaticMapUrl(i,a,t.width,r,s)),h.current=[i,a]}};return i&&a?e.jsx(SI,{id:exports.TestHelper.generateId(r,"static-map"),"data-testid":exports.TestHelper.generateId(r,"static-map"),className:u,onClick:l,"aria-disabled":c,children:e.jsx(AI,{alt:o||"Location Map",src:f,onError:e=>{e.currentTarget.src="https://assets.life.gov.sg/web-frontend-engine/img/map/static_map_placeholder.png"}})}):null},wI=({id:t,message:n,className:r})=>n?e.jsx(TI,{type:"warning","data-testid":exports.TestHelper.generateId(t,"warning"),className:r,children:n}):null,TI=H.default(c.Alert)`
|
|
296
296
|
margin: -1rem 0rem 2rem;
|
|
297
|
-
`,MI=["required","length","min","max","matches","email","url","uuid","positive","negative","integer","lessThan","moreThan","when","filled","empty","equals","notEquals","includes","excludes","uinfin","equalsField","withinDays"];var OI;!function(e){const t=[],n={};e.buildSchema=(t,n)=>{const i={},[a,o]=r(t);return Object.keys(a).forEach((n=>{const{schema:r,validationRules:a}=t[n];i[n]=e.buildFieldSchema(r,a)})),DT().meta({yupId:n}).shape(i,o)};const r=e=>{const t=[],n={...e};return Object.entries(n).forEach((([e,{validationRules:r}])=>{const[a,o]=i(e,n,r);t.push(...o),n[e].validationRules=a})),[n,t]},i=(e,t,n)=>{const r=[],a=n?.filter((e=>!("when"in e)))||[];return n?.filter((e=>"when"in e)).forEach((n=>{const o={...n,when:n.when?{...n.when}:void 0};Object.keys(o.when).forEach((n=>{r.push([e,n]),o.when[n]={...o.when[n],yupSchema:t[n].schema.clone()};const[a,s]=i(e,t,o.when[n].then);o.when[n].then=a,r.push(...s)})),a.push(o)})),[a,r]};e.buildFieldSchema=(n,r)=>{const i=r.filter((e=>rS(MI,Object.keys(e)).length>0||rS(t,Object.keys(e)).length>0));return e.mapRules(n,i)},e.mapSchemaType=e=>{switch(e){case"string":return gw().typeError("Only string values are allowed");case"number":return _w().typeError("Only number values are allowed");case"boolean":return lw().strict().typeError("Only boolean values are allowed");case"array":return IT().typeError("Only array values are allowed");case"object":return DT().typeError("Only object values are allowed");default:return sw()}},e.mapRules=(n,r)=>(r.forEach((r=>{const i=Object.keys(r).filter((e=>MI.includes(e)))?.[0];switch(!0){case r.required:n=n.required(r.errorMessage||im.COMMON.FIELD_REQUIRED);break;case!!r.email:case!!r.url:case!!r.uuid:case!!r.positive:case!!r.negative:case!!r.integer:try{n=n[i](r.errorMessage)}catch(e){console.warn(`error applying "${i}" condition to ${n.type} schema`)}break;case r.length>0:case r.min>0:case r.max>0:case!!r.lessThan:case!!r.moreThan:try{n=n[i](r[i],r.errorMessage)}catch(e){console.warn(`error applying "${i}" condition to ${n.type} schema`)}break;case!!r.matches:{const e=r.matches.match(/\/(.*)\/([a-z]+)?/);try{n=n.matches(new RegExp(e[1],e[2]),r.errorMessage)}catch(e){console.warn(`error applying "${i}" condition to ${n.type} schema`)}}break;case!!r.when:Object.keys(r.when).forEach((t=>{const i=r.when[t].is,a=e.mapRules(n,r.when[t].then),o=r.when[t].otherwise&&e.mapRules(n,r.when[t].otherwise);n=Array.isArray(i)&&i.every((e=>"object"==typeof e))?n.when(t,(n=>{const s=e.mapRules(r.when[t].yupSchema?.clone(),i);let u=!1;try{s.validateSync(n),u=!0}catch(e){}return u?a:o})):n.when(t,{is:i,then:a,otherwise:o})}))}const a=Object.keys(r).filter((e=>t.includes(e)))?.[0];a&&(n[a]?n=n[a](r[a],r.errorMessage):console.warn(`error applying "${a}" condition to ${n.type} schema`)),n&&(n=n.transform((e=>{if(null!==e&&""!==e&&("object"!=typeof e||0!==Object.keys(e).length))return e})))})),n),e.addCondition=(e,r,i,a,o=!1)=>{if(a){if(n[a]||(n[a]={}),n[a][r]&&!0!==o)return void console.warn(`the validation condition "${r}" is not added because it already exists!`);n[a][r]=i}else if(t.includes(r)&&!0!==o)return void console.warn(`the validation condition "${r}" is not added because it already exists!`);t.includes(r)||t.push(r),RT(FT[e],r,(function(e,t){return this.test({name:r,message:t,test:(t,o)=>{if(!a)return i(t,e,o);const s=o.options.from.length,u=o.options.from[s-1].schema.describe().meta.yupId;return n[u]?.[r]?.(t,e,o)}})}))}}(OI||(OI={}));var CI=un,NI=Fr;var DI=function(e){return!0===e||!1===e||NI(e)&&"[object Boolean]"==CI(e)},LI=BA;var II=function(e,t){return LI(e,t)},kI=un,$I=Fr;var RI,FI=function(e){return"number"==typeof e||$I(e)&&"[object Number]"==kI(e)};!function(e){e.LOCAL_S_PREFIX="S",e.LOCAL_T_PREFIX="T",e.FOREIGN_F_PREFIX="F",e.FOREIGN_G_PREFIX="G",e.FOREIGN_M_PREFIX="M"}(RI||(RI={}));const zI=[2,7,6,5,4,3,2],PI=["J","Z","I","H","G","F","E","D","C","B","A"],jI=["X","W","U","T","R","Q","P","N","M","L","K"],ZI=["X","W","U","T","R","Q","P","N","J","L","K"];function UI(e){if("string"==typeof e){const t=function(e){return/^[STFGM]\d{7}[A-Z]$/.test(e)}(e),n=e.charAt(8)===function(e){let t=0;for(let n=0;n<7;++n)t+=Number(e.charAt(n+1))*zI[n];const n=e.charAt(0);n!==RI.LOCAL_T_PREFIX&&n!==RI.FOREIGN_G_PREFIX||(t+=4);n===RI.FOREIGN_M_PREFIX&&(t+=3);let r;r=n===RI.LOCAL_S_PREFIX||n===RI.LOCAL_T_PREFIX?PI[t%11]:n===RI.FOREIGN_M_PREFIX?ZI[t%11]:jI[t%11];return r}(e);return t&&n}return!1}OI.addCondition("string","uinfin",(e=>!!aE(e)||UI(e)));const BI=["LP","LL","FC","PF","RF","MQ","MM","NB","CC","CS","MB","FM","GS","GA","GB","DP","CP","NR","CM","CD","MD","HS","VH","CH","MH","CL","XL","CX","RP","TU","TC","FB","FN","PA","PB","SS","MC","SM"];OI.addCondition("string","uen",(e=>!!aE(e)||function(e){if(e.length<9||e.length>10)return!1;if(9===(e=e.toUpperCase()).length){if(e.match(/^\d{8}[A-Z]$/))return!0}else if(10===e.length){if(e.match(/^\d{9}[A-Z]$/))return!0;const t=String.raw`^((R|S|T)([\d]{2})(`+BI.join("|")+String.raw`)([\d]{4})([A-Z]))$`;if(e.match(t))return!0}return!1}(e)));const VI=e=>FI(e)?uE(e):aE(e)&&!DI(e);OI.addCondition("mixed","filled",(e=>!VI(e))),OI.addCondition("mixed","empty",(e=>VI(e))),OI.addCondition("mixed","equals",((e,t)=>!VI(e)&&II(e,t))),OI.addCondition("mixed","notEquals",((e,t)=>!VI(e)&&!II(e,t))),OI.addCondition("string","notMatches",((e,t)=>{if(VI(e))return!0;const n=t.match(/\/(.*)\/([a-z]+)?/);return!new RegExp(n[1],n[2]).test(e)})),OI.addCondition("array","includes",((e,t)=>!e?.length||(Array.isArray(t)?t.filter((t=>e.includes(t))).length===t.length:e.includes(t)))),OI.addCondition("array","excludes",((e,t)=>!e?.length||(Array.isArray(t)?e.length&&0===t.filter((t=>e.includes(t))).length:!e.includes(t)))),OI.addCondition("mixed","equalsField",((e,t,n)=>{if("object"==typeof e){if(Array.isArray(e)&&Array.isArray(n.parent[`${t}`])){const r=[...e].sort(),i=[...n.parent[`${t}`]].sort();return II(r,i)}return II(e,n.parent[`${t}`])}return II(e,n.parent[`${t}`])})),OI.addCondition("mixed","notEqualsField",((e,t,n)=>{if("object"==typeof e){if(Array.isArray(e)&&Array.isArray(n.parent[`${t}`])){const r=[...e].sort(),i=[...n.parent[`${t}`]].sort();return!II(r,i)}return!II(e,n.parent[`${t}`])}return!II(e,n.parent[`${t}`])})),OI.addCondition("mixed","withinDays",((e,t)=>!!aE(e)||am.checkWithinDays(e,t))),OI.addCondition("mixed","beyondDays",((e,t)=>!!aE(e)||am.checkBeyondDays(e,t)));const HI=({children:t})=>e.jsx(cE,{children:e.jsx(As,{children:e.jsx(ws,{children:e.jsx(Ms,{children:e.jsx(Es,{children:e.jsx(Cs,{children:t})})})})})}),GI=()=>{const{customComponents:e,setCustomComponents:n}=t.useContext(bs),r=t.useCallback((t=>e?.[t]),[e]);return{customComponents:e,getCustomComponent:r,setCustomComponents:n}},YI="undefined"!=typeof window?(e,n)=>{const r=t.useRef(n),i=t.useRef(0);return II(n,r.current)||(r.current=n,i.current+=1),t.useLayoutEffect(e,[i.current])}:vs,WI=()=>{const{eventManagerRef:e}=t.useContext(Ss),n=t.useCallback(((t,n,r,i,a)=>{if("function"==typeof r&&"function"!=typeof i){const[a,o,s,u]=[t,n,r,i];e.current?.addEventListener(`${o}:${a}`,s,u)}else if("function"==typeof i){const[o,s,u,l,c]=[t,n,r,i,a];e.current?.addEventListener(`${u}:${s}`,l,c)}}),[e]),r=t.useCallback(((t,n,r,i,a)=>{if("function"==typeof r&&"function"!=typeof i){const[a,o,s,u]=[t,n,r,i];e.current?.removeEventListener(`${o}:${a}`,s,u)}else if("function"==typeof i){const[o,s,u,l,c]=[t,n,r,i,a];e.current?.removeEventListener(`${u}:${s}`,l,c)}}),[e]);return{addFieldEventListener:n,dispatchFieldEvent:t.useCallback(((t,n,r,i)=>{if("string"!=typeof r){const[i,a,o]=[t,n,r];return e.current?.dispatchEvent(new CustomEvent(`${a}:${i}`,{cancelable:!0,detail:{id:a,...o}}))}{const[a,o,s,u]=[t,n,r,i];return e.current?.dispatchEvent(new CustomEvent(`${s}:${o}`,{cancelable:!0,detail:{id:s,...u}}))}}),[e]),removeFieldEventListener:r}};var qI=Or,KI=Tt;var JI=function(e,t,n){(void 0!==n&&!KI(e[t],n)||void 0===n&&!(t in e))&&qI(e,t,n)},XI=un,QI=la,ek=Fr,tk=Function.prototype,nk=Object.prototype,rk=tk.toString,ik=nk.hasOwnProperty,ak=rk.call(Object);var ok=function(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]},sk=$r,uk=Hi;var lk=JI,ck=qi.exports,dk=lo,fk=Ki,pk=Ao,hk=Hr,mk=Gr,gk=KE,yk=Yr.exports,_k=pn,vk=ln,bk=function(e){if(!ek(e)||"[object Object]"!=XI(e))return!1;var t=QI(e);if(null===t)return!0;var n=ik.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&rk.call(n)==ak},Ek=li,Sk=ok,Ak=function(e){return sk(e,uk(e))};var xk=function(e,t,n,r,i,a,o){var s=Sk(e,n),u=Sk(t,n),l=o.get(u);if(l)lk(e,n,l);else{var c=a?a(s,u,n+"",e,t,o):void 0,d=void 0===c;if(d){var f=mk(u),p=!f&&yk(u),h=!f&&!p&&Ek(u);c=u,f||p||h?mk(s)?c=s:gk(s)?c=fk(s):p?(d=!1,c=ck(u,!0)):h?(d=!1,c=dk(u,!0)):c=[]:bk(u)||hk(u)?(c=s,hk(s)?c=Ak(s):vk(s)&&!_k(s)||(c=pk(u))):d=!1}d&&(o.set(u,c),i(c,u,r,a,o),o.delete(u)),lk(e,n,c)}},wk=Ar,Tk=JI,Mk=oA,Ok=xk,Ck=ln,Nk=Hi,Dk=ok;var Lk=function e(t,n,r,i,a){t!==n&&Mk(n,(function(o,s){if(a||(a=new wk),Ck(o))Ok(t,n,s,r,e,i,a);else{var u=i?i(Dk(t,s),o,s+"",t,n,a):void 0;void 0===u&&(u=o),Tk(t,s,u)}}),Nk)},Ik=Tt,kk=Oi,$k=Kr,Rk=ln;var Fk=function(e,t,n){if(!Rk(n))return!1;var r=typeof t;return!!("number"==r?kk(n)&&$k(t,n.length):"string"==r&&t in n)&&Ik(n[t],e)},zk=YE,Pk=Fk;var jk=function(e){return zk((function(t,n){var r=-1,i=n.length,a=i>1?n[i-1]:void 0,o=i>2?n[2]:void 0;for(a=e.length>3&&"function"==typeof a?(i--,a):void 0,o&&Pk(n[0],n[1],o)&&(a=i<3?void 0:a,i=1),t=Object(t);++r<i;){var s=n[r];s&&e(t,s,r,a)}return t}))},Zk=Lk,Uk=jk((function(e,t,n){Zk(e,t,n)})),Bk=Uk;const Vk=()=>{const{setFormSchema:e,formSchema:n}=t.useContext(xs);return{setFormSchema:e,formSchema:n,overrideSchema:t.useCallback(((e,t)=>{if(aE(t)||"string"==typeof e)return e;let n={};if(Object.keys(e).forEach((e=>{const r=oE.getNestedValueByKey(t,e,{searchIn:["children"]});aE(r)||(n={...n,...r})})),!aE(n)){const t=fs(e),r=Bk(t,n);return oE.removeNil(r)}return e}),[])}},Hk=e=>{const n=we(),{setFormValues:r,formValues:i,formValuesRef:a,registeredFields:o,setRegisteredFields:s}=t.useContext(Ts),u=t.useCallback(((t,r=!1)=>{if("string"!=typeof t){if(Array.isArray(t)){if(r){const r=t.filter((e=>o.includes(e)));return e?.getValues(r)||n?.getValues(r)}return e?.getValues(t)||n?.getValues(t)}{const t=e?.getValues()||n?.getValues();if(r){const e={};return Object.entries(t).forEach((([t,n])=>{o.includes(t)&&(e[t]=n)})),e}return t}}if(!r||r&&o.includes(t))return e?.getValues(t)||n?.getValues(t)}),[n?.getValues,e?.getValues,o]);return{formValues:i,getField:e=>a.current[e],setFields:e=>{a.current={...a.current,...e},r((t=>({...t,...e})))},setField:(e,t)=>{a.current[e]=t,r((n=>({...n,[e]:t})))},resetFields:e=>{a.current={...e},r((()=>({...e})))},registeredFields:o,setRegisteredFields:s,getFormValues:u}},Gk=()=>{const{formValidationConfig:e,setFormValidationConfig:n}=t.useContext(lE);return{formValidationConfig:e,setFieldValidationConfig:(e,t,r=[])=>{n((n=>({...n,[e]:{schema:t,validationRules:r}})))},removeFieldValidationConfig:e=>n((t=>{const n={...t};return delete n[e],n}))}},Yk=()=>{const{submitHandler:e,setSubmitHandler:n,wrapInForm:r,setWrapInForm:i}=t.useContext(Os);return{submitHandler:e,setSubmitHandler:n,wrapInForm:r,setWrapInForm:i}},Wk=(e,n)=>{t.useEffect((()=>{const t=t=>{t.data.type===e&&n(t)};return window.addEventListener("message",t),()=>{window.removeEventListener("message",t)}}),[e,n])},qk=e=>{const n=t.useRef();return t.useEffect((()=>{n.current=e}),[e]),n.current},Kk=()=>{const{formValidationConfig:e,warnings:n,setWarnings:r,yupId:i}=t.useContext(lE),[a,o]=t.useState(DT()),[s,u]=t.useState(DT()),l=t.useCallback((()=>{if(e){let t={},n={};Object.entries(e).forEach((([e,r])=>{if(!r.validationRules||0===r.validationRules.length)return void(t=oE.upsert(t,e,{schema:r.schema,validationRules:[]}));const i=r.validationRules.filter((({soft:e})=>e)),a=r.validationRules.filter((({soft:e})=>!e));i.length&&(n=oE.upsert(n,e,{schema:r.schema,validationRules:i})),a.length&&(t=oE.upsert(t,e,{schema:r.schema,validationRules:a}))})),u(OI.buildSchema(n,i)),o(OI.buildSchema(t,i))}}),[e,i]);t.useEffect((()=>{l()}),[l]);return{warnings:n,softValidationSchema:s,hardValidationSchema:a,rebuildValidationSchema:l,performSoftValidation:(e,t)=>{e.validate(t,{abortEarly:!1}).then((()=>{r({})})).catch((e=>{const t=e;if(aE(t))return;const n=t.inner.reduce(((e,t)=>(e[t.path]=t.message,e)),{});r(n)}))},addWarnings:e=>{r({...n,...e})},yupId:i}},Jk=H.default.div`
|
|
297
|
+
`,MI=["required","length","min","max","matches","email","url","uuid","positive","negative","integer","lessThan","moreThan","when","filled","empty","equals","notEquals","includes","excludes","uinfin","equalsField","withinDays"];var OI;!function(e){const t=[],n={};e.buildSchema=(t,n)=>{const i={},[a,o]=r(t);return Object.keys(a).forEach((n=>{const{schema:r,validationRules:a}=t[n];i[n]=e.buildFieldSchema(r,a)})),DT().meta({yupId:n}).shape(i,o)};const r=e=>{const t=[],n={...e};return Object.entries(n).forEach((([e,{validationRules:r}])=>{const[a,o]=i(e,n,r);t.push(...o),n[e].validationRules=a})),[n,t]},i=(e,t,n)=>{const r=[],a=n?.filter((e=>!("when"in e)))||[];return n?.filter((e=>"when"in e)).forEach((n=>{const o={...n,when:n.when?{...n.when}:void 0};Object.keys(o.when).forEach((n=>{if(!t[n])return void console.warn(`field "${n}" was not found, when condition on "${e}" was not applied`);r.push([e,n]),o.when[n]={...o.when[n],yupSchema:t[n].schema.clone()};const[a,s]=i(e,t,o.when[n].then);o.when[n].then=a,r.push(...s)})),a.push(o)})),[a,r]};e.buildFieldSchema=(n,r)=>{const i=r.filter((e=>rS(MI,Object.keys(e)).length>0||rS(t,Object.keys(e)).length>0));return e.mapRules(n,i)},e.mapSchemaType=e=>{switch(e){case"string":return gw().typeError("Only string values are allowed");case"number":return _w().typeError("Only number values are allowed");case"boolean":return lw().strict().typeError("Only boolean values are allowed");case"array":return IT().typeError("Only array values are allowed");case"object":return DT().typeError("Only object values are allowed");default:return sw()}},e.mapRules=(n,r)=>(r.forEach((r=>{const i=Object.keys(r).filter((e=>MI.includes(e)))?.[0];switch(!0){case r.required:n=n.required(r.errorMessage||im.COMMON.FIELD_REQUIRED);break;case!!r.email:case!!r.url:case!!r.uuid:case!!r.positive:case!!r.negative:case!!r.integer:try{n=n[i](r.errorMessage)}catch(e){console.warn(`error applying "${i}" condition to ${n.type} schema`)}break;case r.length>0:case r.min>0:case r.max>0:case!!r.lessThan:case!!r.moreThan:try{n=n[i](r[i],r.errorMessage)}catch(e){console.warn(`error applying "${i}" condition to ${n.type} schema`)}break;case!!r.matches:{const e=r.matches.match(/\/(.*)\/([a-z]+)?/);try{n=n.matches(new RegExp(e[1],e[2]),r.errorMessage)}catch(e){console.warn(`error applying "${i}" condition to ${n.type} schema`)}}break;case!!r.when:Object.keys(r.when).forEach((t=>{const i=r.when[t]?.yupSchema;if(!i)return void console.warn(`[mapRules] Unexpected: yupSchema missing for field "${t}" in when condition. `);const a=r.when[t].is,o=e.mapRules(n,r.when[t].then),s=r.when[t].otherwise&&e.mapRules(n,r.when[t].otherwise);n=Array.isArray(a)&&a.every((e=>"object"==typeof e))?n.when(t,(t=>{const n=e.mapRules(i.clone(),a);let r=!1;try{n.validateSync(t),r=!0}catch(e){}return r?o:s})):n.when(t,{is:a,then:o,otherwise:s})}))}const a=Object.keys(r).filter((e=>t.includes(e)))?.[0];a&&(n[a]?n=n[a](r[a],r.errorMessage):console.warn(`error applying "${a}" condition to ${n.type} schema`)),n&&(n=n.transform((e=>{if(null!==e&&""!==e&&("object"!=typeof e||0!==Object.keys(e).length))return e})))})),n),e.addCondition=(e,r,i,a,o=!1)=>{if(a){if(n[a]||(n[a]={}),n[a][r]&&!0!==o)return void console.warn(`the validation condition "${r}" is not added because it already exists!`);n[a][r]=i}else if(t.includes(r)&&!0!==o)return void console.warn(`the validation condition "${r}" is not added because it already exists!`);t.includes(r)||t.push(r),RT(FT[e],r,(function(e,t){return this.test({name:r,message:t,test:(t,o)=>{if(!a)return i(t,e,o);const s=o.options.from.length,u=o.options.from[s-1].schema.describe().meta.yupId;return n[u]?.[r]?.(t,e,o)}})}))}}(OI||(OI={}));var CI=un,NI=Fr;var DI=function(e){return!0===e||!1===e||NI(e)&&"[object Boolean]"==CI(e)},LI=BA;var II=function(e,t){return LI(e,t)},kI=un,$I=Fr;var RI,FI=function(e){return"number"==typeof e||$I(e)&&"[object Number]"==kI(e)};!function(e){e.LOCAL_S_PREFIX="S",e.LOCAL_T_PREFIX="T",e.FOREIGN_F_PREFIX="F",e.FOREIGN_G_PREFIX="G",e.FOREIGN_M_PREFIX="M"}(RI||(RI={}));const zI=[2,7,6,5,4,3,2],PI=["J","Z","I","H","G","F","E","D","C","B","A"],jI=["X","W","U","T","R","Q","P","N","M","L","K"],ZI=["X","W","U","T","R","Q","P","N","J","L","K"];function UI(e){if("string"==typeof e){const t=function(e){return/^[STFGM]\d{7}[A-Z]$/.test(e)}(e),n=e.charAt(8)===function(e){let t=0;for(let n=0;n<7;++n)t+=Number(e.charAt(n+1))*zI[n];const n=e.charAt(0);n!==RI.LOCAL_T_PREFIX&&n!==RI.FOREIGN_G_PREFIX||(t+=4);n===RI.FOREIGN_M_PREFIX&&(t+=3);let r;r=n===RI.LOCAL_S_PREFIX||n===RI.LOCAL_T_PREFIX?PI[t%11]:n===RI.FOREIGN_M_PREFIX?ZI[t%11]:jI[t%11];return r}(e);return t&&n}return!1}OI.addCondition("string","uinfin",(e=>!!aE(e)||UI(e)));const BI=["LP","LL","FC","PF","RF","MQ","MM","NB","CC","CS","MB","FM","GS","GA","GB","DP","CP","NR","CM","CD","MD","HS","VH","CH","MH","CL","XL","CX","RP","TU","TC","FB","FN","PA","PB","SS","MC","SM"];OI.addCondition("string","uen",(e=>!!aE(e)||function(e){if(e.length<9||e.length>10)return!1;if(9===(e=e.toUpperCase()).length){if(e.match(/^\d{8}[A-Z]$/))return!0}else if(10===e.length){if(e.match(/^\d{9}[A-Z]$/))return!0;const t=String.raw`^((R|S|T)([\d]{2})(`+BI.join("|")+String.raw`)([\d]{4})([A-Z]))$`;if(e.match(t))return!0}return!1}(e)));const VI=e=>FI(e)?uE(e):aE(e)&&!DI(e);OI.addCondition("mixed","filled",(e=>!VI(e))),OI.addCondition("mixed","empty",(e=>VI(e))),OI.addCondition("mixed","equals",((e,t)=>!VI(e)&&II(e,t))),OI.addCondition("mixed","notEquals",((e,t)=>!VI(e)&&!II(e,t))),OI.addCondition("string","notMatches",((e,t)=>{if(VI(e))return!0;const n=t.match(/\/(.*)\/([a-z]+)?/);return!new RegExp(n[1],n[2]).test(e)})),OI.addCondition("array","includes",((e,t)=>!e?.length||(Array.isArray(t)?t.filter((t=>e.includes(t))).length===t.length:e.includes(t)))),OI.addCondition("array","excludes",((e,t)=>!e?.length||(Array.isArray(t)?e.length&&0===t.filter((t=>e.includes(t))).length:!e.includes(t)))),OI.addCondition("mixed","equalsField",((e,t,n)=>{if("object"==typeof e){if(Array.isArray(e)&&Array.isArray(n.parent[`${t}`])){const r=[...e].sort(),i=[...n.parent[`${t}`]].sort();return II(r,i)}return II(e,n.parent[`${t}`])}return II(e,n.parent[`${t}`])})),OI.addCondition("mixed","notEqualsField",((e,t,n)=>{if("object"==typeof e){if(Array.isArray(e)&&Array.isArray(n.parent[`${t}`])){const r=[...e].sort(),i=[...n.parent[`${t}`]].sort();return!II(r,i)}return!II(e,n.parent[`${t}`])}return!II(e,n.parent[`${t}`])})),OI.addCondition("mixed","withinDays",((e,t)=>!!aE(e)||am.checkWithinDays(e,t))),OI.addCondition("mixed","beyondDays",((e,t)=>!!aE(e)||am.checkBeyondDays(e,t)));const HI=({children:t})=>e.jsx(cE,{children:e.jsx(As,{children:e.jsx(ws,{children:e.jsx(Ms,{children:e.jsx(Es,{children:e.jsx(Cs,{children:t})})})})})}),GI=()=>{const{customComponents:e,setCustomComponents:n}=t.useContext(bs),r=t.useCallback((t=>e?.[t]),[e]);return{customComponents:e,getCustomComponent:r,setCustomComponents:n}},YI="undefined"!=typeof window?(e,n)=>{const r=t.useRef(n),i=t.useRef(0);return II(n,r.current)||(r.current=n,i.current+=1),t.useLayoutEffect(e,[i.current])}:vs,WI=()=>{const{eventManagerRef:e}=t.useContext(Ss),n=t.useCallback(((t,n,r,i,a)=>{if("function"==typeof r&&"function"!=typeof i){const[a,o,s,u]=[t,n,r,i];e.current?.addEventListener(`${o}:${a}`,s,u)}else if("function"==typeof i){const[o,s,u,l,c]=[t,n,r,i,a];e.current?.addEventListener(`${u}:${s}`,l,c)}}),[e]),r=t.useCallback(((t,n,r,i,a)=>{if("function"==typeof r&&"function"!=typeof i){const[a,o,s,u]=[t,n,r,i];e.current?.removeEventListener(`${o}:${a}`,s,u)}else if("function"==typeof i){const[o,s,u,l,c]=[t,n,r,i,a];e.current?.removeEventListener(`${u}:${s}`,l,c)}}),[e]);return{addFieldEventListener:n,dispatchFieldEvent:t.useCallback(((t,n,r,i)=>{if("string"!=typeof r){const[i,a,o]=[t,n,r];return e.current?.dispatchEvent(new CustomEvent(`${a}:${i}`,{cancelable:!0,detail:{id:a,...o}}))}{const[a,o,s,u]=[t,n,r,i];return e.current?.dispatchEvent(new CustomEvent(`${s}:${o}`,{cancelable:!0,detail:{id:s,...u}}))}}),[e]),removeFieldEventListener:r}};var qI=Or,KI=Tt;var JI=function(e,t,n){(void 0!==n&&!KI(e[t],n)||void 0===n&&!(t in e))&&qI(e,t,n)},XI=un,QI=la,ek=Fr,tk=Function.prototype,nk=Object.prototype,rk=tk.toString,ik=nk.hasOwnProperty,ak=rk.call(Object);var ok=function(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]},sk=$r,uk=Hi;var lk=JI,ck=qi.exports,dk=lo,fk=Ki,pk=Ao,hk=Hr,mk=Gr,gk=KE,yk=Yr.exports,_k=pn,vk=ln,bk=function(e){if(!ek(e)||"[object Object]"!=XI(e))return!1;var t=QI(e);if(null===t)return!0;var n=ik.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&rk.call(n)==ak},Ek=li,Sk=ok,Ak=function(e){return sk(e,uk(e))};var xk=function(e,t,n,r,i,a,o){var s=Sk(e,n),u=Sk(t,n),l=o.get(u);if(l)lk(e,n,l);else{var c=a?a(s,u,n+"",e,t,o):void 0,d=void 0===c;if(d){var f=mk(u),p=!f&&yk(u),h=!f&&!p&&Ek(u);c=u,f||p||h?mk(s)?c=s:gk(s)?c=fk(s):p?(d=!1,c=ck(u,!0)):h?(d=!1,c=dk(u,!0)):c=[]:bk(u)||hk(u)?(c=s,hk(s)?c=Ak(s):vk(s)&&!_k(s)||(c=pk(u))):d=!1}d&&(o.set(u,c),i(c,u,r,a,o),o.delete(u)),lk(e,n,c)}},wk=Ar,Tk=JI,Mk=oA,Ok=xk,Ck=ln,Nk=Hi,Dk=ok;var Lk=function e(t,n,r,i,a){t!==n&&Mk(n,(function(o,s){if(a||(a=new wk),Ck(o))Ok(t,n,s,r,e,i,a);else{var u=i?i(Dk(t,s),o,s+"",t,n,a):void 0;void 0===u&&(u=o),Tk(t,s,u)}}),Nk)},Ik=Tt,kk=Oi,$k=Kr,Rk=ln;var Fk=function(e,t,n){if(!Rk(n))return!1;var r=typeof t;return!!("number"==r?kk(n)&&$k(t,n.length):"string"==r&&t in n)&&Ik(n[t],e)},zk=YE,Pk=Fk;var jk=function(e){return zk((function(t,n){var r=-1,i=n.length,a=i>1?n[i-1]:void 0,o=i>2?n[2]:void 0;for(a=e.length>3&&"function"==typeof a?(i--,a):void 0,o&&Pk(n[0],n[1],o)&&(a=i<3?void 0:a,i=1),t=Object(t);++r<i;){var s=n[r];s&&e(t,s,r,a)}return t}))},Zk=Lk,Uk=jk((function(e,t,n){Zk(e,t,n)})),Bk=Uk;const Vk=()=>{const{setFormSchema:e,formSchema:n}=t.useContext(xs);return{setFormSchema:e,formSchema:n,overrideSchema:t.useCallback(((e,t)=>{if(aE(t)||"string"==typeof e)return e;let n={};if(Object.keys(e).forEach((e=>{const r=oE.getNestedValueByKey(t,e,{searchIn:["children"]});aE(r)||(n={...n,...r})})),!aE(n)){const t=fs(e),r=Bk(t,n);return oE.removeNil(r)}return e}),[])}},Hk=e=>{const n=we(),{setFormValues:r,formValues:i,formValuesRef:a,registeredFields:o,setRegisteredFields:s}=t.useContext(Ts),u=t.useCallback(((t,r=!1)=>{if("string"!=typeof t){if(Array.isArray(t)){if(r){const r=t.filter((e=>o.includes(e)));return e?.getValues(r)||n?.getValues(r)}return e?.getValues(t)||n?.getValues(t)}{const t=e?.getValues()||n?.getValues();if(r){const e={};return Object.entries(t).forEach((([t,n])=>{o.includes(t)&&(e[t]=n)})),e}return t}}if(!r||r&&o.includes(t))return e?.getValues(t)||n?.getValues(t)}),[n?.getValues,e?.getValues,o]);return{formValues:i,getField:e=>a.current[e],setFields:e=>{a.current={...a.current,...e},r((t=>({...t,...e})))},setField:(e,t)=>{a.current[e]=t,r((n=>({...n,[e]:t})))},resetFields:e=>{a.current={...e},r((()=>({...e})))},registeredFields:o,setRegisteredFields:s,getFormValues:u}},Gk=()=>{const{formValidationConfig:e,setFormValidationConfig:n}=t.useContext(lE);return{formValidationConfig:e,setFieldValidationConfig:(e,t,r=[])=>{n((n=>({...n,[e]:{schema:t,validationRules:r}})))},removeFieldValidationConfig:e=>n((t=>{const n={...t};return delete n[e],n}))}},Yk=()=>{const{submitHandler:e,setSubmitHandler:n,wrapInForm:r,setWrapInForm:i}=t.useContext(Os);return{submitHandler:e,setSubmitHandler:n,wrapInForm:r,setWrapInForm:i}},Wk=(e,n)=>{t.useEffect((()=>{const t=t=>{t.data.type===e&&n(t)};return window.addEventListener("message",t),()=>{window.removeEventListener("message",t)}}),[e,n])},qk=e=>{const n=t.useRef();return t.useEffect((()=>{n.current=e}),[e]),n.current},Kk=()=>{const{formValidationConfig:e,warnings:n,setWarnings:r,yupId:i}=t.useContext(lE),[a,o]=t.useState(DT()),[s,u]=t.useState(DT()),l=t.useCallback((()=>{if(e){let t={},n={};Object.entries(e).forEach((([e,r])=>{if(!r.validationRules||0===r.validationRules.length)return void(t=oE.upsert(t,e,{schema:r.schema,validationRules:[]}));const i=r.validationRules.filter((({soft:e})=>e)),a=r.validationRules.filter((({soft:e})=>!e));i.length&&(n=oE.upsert(n,e,{schema:r.schema,validationRules:i})),a.length&&(t=oE.upsert(t,e,{schema:r.schema,validationRules:a}))})),u(OI.buildSchema(n,i)),o(OI.buildSchema(t,i))}}),[e,i]);t.useEffect((()=>{l()}),[l]);return{warnings:n,softValidationSchema:s,hardValidationSchema:a,rebuildValidationSchema:l,performSoftValidation:(e,t)=>{e.validate(t,{abortEarly:!1}).then((()=>{r({})})).catch((e=>{const t=e;if(aE(t))return;const n=t.inner.reduce(((e,t)=>(e[t.path]=t.message,e)),{});r(n)}))},addWarnings:e=>{r({...n,...e})},yupId:i}},Jk=H.default.div`
|
|
298
298
|
flex: 1;
|
|
299
299
|
padding: 2rem 0;
|
|
300
300
|
`,Xk=H.default(p.Divider)`
|
|
@@ -434,7 +434,7 @@ function eC(e){return"[object Object]"===Object.prototype.toString.call(e)}Objec
|
|
|
434
434
|
cursor: pointer;
|
|
435
435
|
`,oz=H.default(c.Alert)`
|
|
436
436
|
margin-top: 0.5rem;
|
|
437
|
-
`;var sz=Hr,uz=Gr,lz=Kt?Kt.isConcatSpreadable:void 0;var cz=ua,dz=function(e){return uz(e)||sz(e)||!!(lz&&e&&e[lz])};var fz=function e(t,n,r,i,a){var o=-1,s=t.length;for(r||(r=dz),a||(a=[]);++o<s;){var u=t[o];n>0&&r(u)?n>1?e(u,n-1,r,i,a):cz(a,u):i||(a[a.length]=u)}return a};var pz=Da,hz=function(){},mz=pz&&1/gA(new pz([,-0]))[1]==1/0?function(e){return new pz(e)}:hz,gz=mE,yz=AE,_z=xE,vz=wE,bz=mz,Ez=gA;var Sz=function(e,t,n){var r=-1,i=yz,a=e.length,o=!0,s=[],u=s;if(n)o=!1,i=_z;else if(a>=200){var l=t?null:bz(e);if(l)return Ez(l);o=!1,i=vz,u=new gz}else u=t?[]:s;e:for(;++r<a;){var c=e[r],d=t?t(c):c;if(c=n||0!==c?c:0,o&&d==d){for(var f=u.length;f--;)if(u[f]===d)continue e;t&&u.push(d),s.push(c)}else i(u,d,n)||(u!==s&&u.push(d),s.push(c))}return s},Az=N$,xz=fz,wz=Sz;var Tz=function(e,t,n){var r=e.length;if(r<2)return r?wz(e[0]):[];for(var i=-1,a=Array(r);++i<r;)for(var o=e[i],s=-1;++s<r;)s!=i&&(a[i]=Az(a[i]||o,e[s],t,n));return wz(xz(a,1),t,n)},Mz=Ji,Oz=Tz,Cz=KE,Nz=YE((function(e){return Oz(Mz(e,Cz))}));const Dz=t.createContext({files:[],setFiles:()=>null,currentFileIds:[],setCurrentFileIds:()=>null}),Lz=({children:n})=>{const[r,i]=t.useState([]),[a,o]=t.useState([]),s=t.useMemo((()=>({files:r,setFiles:i,currentFileIds:a,setCurrentFileIds:o})),[r,a]);return e.jsx(Dz.Provider,{value:s,children:n})};var Iz,kz;!function(e){e.findAvailableSlot=e=>{const t=e.reduce(((e,{slot:t})=>t>e?t:e),0),n=Math.max(t,e.length),r=Array(n).fill(0).map(((e,t)=>t)),i=e.map((({slot:e})=>e));return r.filter((e=>!i.includes(e)))[0]??n}}(Iz||(Iz={})),exports.EFileStatus=void 0,(kz=exports.EFileStatus||(exports.EFileStatus={}))[kz.INJECTED=-99]="INJECTED",kz[kz.INJECTING=-98]="INJECTING",kz[kz.TO_DELETE=-4]="TO_DELETE",kz[kz.ERROR_FORMAT=-3]="ERROR_FORMAT",kz[kz.ERROR_GENERIC=-2]="ERROR_GENERIC",kz[kz.ERROR_SIZE=-1]="ERROR_SIZE",kz[kz.NONE=0]="NONE",kz[kz.UPLOAD_READY=4]="UPLOAD_READY",kz[kz.UPLOADING=5]="UPLOADING",kz[kz.UPLOADED=6]="UPLOADED";const $z=t.lazy((()=>Promise.resolve().then((function(){return require("./file-upload-manager.
|
|
437
|
+
`;var sz=Hr,uz=Gr,lz=Kt?Kt.isConcatSpreadable:void 0;var cz=ua,dz=function(e){return uz(e)||sz(e)||!!(lz&&e&&e[lz])};var fz=function e(t,n,r,i,a){var o=-1,s=t.length;for(r||(r=dz),a||(a=[]);++o<s;){var u=t[o];n>0&&r(u)?n>1?e(u,n-1,r,i,a):cz(a,u):i||(a[a.length]=u)}return a};var pz=Da,hz=function(){},mz=pz&&1/gA(new pz([,-0]))[1]==1/0?function(e){return new pz(e)}:hz,gz=mE,yz=AE,_z=xE,vz=wE,bz=mz,Ez=gA;var Sz=function(e,t,n){var r=-1,i=yz,a=e.length,o=!0,s=[],u=s;if(n)o=!1,i=_z;else if(a>=200){var l=t?null:bz(e);if(l)return Ez(l);o=!1,i=vz,u=new gz}else u=t?[]:s;e:for(;++r<a;){var c=e[r],d=t?t(c):c;if(c=n||0!==c?c:0,o&&d==d){for(var f=u.length;f--;)if(u[f]===d)continue e;t&&u.push(d),s.push(c)}else i(u,d,n)||(u!==s&&u.push(d),s.push(c))}return s},Az=N$,xz=fz,wz=Sz;var Tz=function(e,t,n){var r=e.length;if(r<2)return r?wz(e[0]):[];for(var i=-1,a=Array(r);++i<r;)for(var o=e[i],s=-1;++s<r;)s!=i&&(a[i]=Az(a[i]||o,e[s],t,n));return wz(xz(a,1),t,n)},Mz=Ji,Oz=Tz,Cz=KE,Nz=YE((function(e){return Oz(Mz(e,Cz))}));const Dz=t.createContext({files:[],setFiles:()=>null,currentFileIds:[],setCurrentFileIds:()=>null}),Lz=({children:n})=>{const[r,i]=t.useState([]),[a,o]=t.useState([]),s=t.useMemo((()=>({files:r,setFiles:i,currentFileIds:a,setCurrentFileIds:o})),[r,a]);return e.jsx(Dz.Provider,{value:s,children:n})};var Iz,kz;!function(e){e.findAvailableSlot=e=>{const t=e.reduce(((e,{slot:t})=>t>e?t:e),0),n=Math.max(t,e.length),r=Array(n).fill(0).map(((e,t)=>t)),i=e.map((({slot:e})=>e));return r.filter((e=>!i.includes(e)))[0]??n}}(Iz||(Iz={})),exports.EFileStatus=void 0,(kz=exports.EFileStatus||(exports.EFileStatus={}))[kz.INJECTED=-99]="INJECTED",kz[kz.INJECTING=-98]="INJECTING",kz[kz.TO_DELETE=-4]="TO_DELETE",kz[kz.ERROR_FORMAT=-3]="ERROR_FORMAT",kz[kz.ERROR_GENERIC=-2]="ERROR_GENERIC",kz[kz.ERROR_SIZE=-1]="ERROR_SIZE",kz[kz.NONE=0]="NONE",kz[kz.UPLOAD_READY=4]="UPLOAD_READY",kz[kz.UPLOADING=5]="UPLOADING",kz[kz.UPLOADED=6]="UPLOADED";const $z=t.lazy((()=>Promise.resolve().then((function(){return require("./file-upload-manager.b483cbd3.js")})))),Rz=n=>{const{id:r,error:i,isDirty:a,isTouched:o,value:s,schema:{compressImages:u,description:l,hideThumbnail:c,label:d,uploadOnAddingFile:f,validation:p,warning:h,...m},warning:g}=n,{files:y,currentFileIds:_,setFiles:v}=t.useContext(Dz),b=t.useRef({}),E=t.useRef({}),S=t.useRef({}),A=t.useRef({}),{setFieldValidationConfig:x}=Gk(),{dispatchFieldEvent:w}=WI(),{clearErrors:T,setError:O}=we(),[C,N]=t.useState(),D=t.useRef(y),L=t.useCallback(((e,t)=>{const n=[...t],i=n.length;e.forEach(((e,t)=>{!E.current.max||i+t<E.current.max?(n.push({...e,slot:Iz.findAvailableSlot(n)}),T(r)):O(r,{type:"max",message:E.current.errorMessage||im.UPLOAD().MAX_FILES(E.current.max)})})),v(n)}),[T,r,O,v]);t.useEffect((()=>{D.current=y}),[y]),t.useEffect((()=>{w("mount",r)}),[w,r]),t.useEffect((()=>{const e=p?.find((e=>"required"in e)),t=p?.find((e=>"fileType"in e)),n=p?.find((e=>"maxSizeInKb"in e)),i=p?.find((e=>"upload"in e&&e.upload));b.current=t?.fileType?t:{},S.current=n?.maxSizeInKb>0?n:{},A.current=i||{};const a=p?.find((e=>"length"in e)),o=p?.find((e=>"max"in e));E.current=a?{max:a.length,errorMessage:a.errorMessage}:o?{max:o.max,errorMessage:o.errorMessage}:{},x(r,IT().of(DT().shape({dataURL:gw(),fileId:gw(),fileName:gw(),fileUrl:gw(),uploadResponse:DT()})).test("is-empty-array",e?.errorMessage||im.UPLOAD().REQUIRED,(t=>!t||!e?.required||t.length>0)).test("max-size-in-kb",S.current.errorMessage||im.UPLOAD().MAX_FILE_SIZE(S.current.maxSizeInKb),(e=>!(e&&Array.isArray(e)&&S.current.maxSizeInKb)||y.filter((e=>e.status===exports.EFileStatus.UPLOADED)).every((e=>{if("base64"===f.type&&e.dataURL)return exports.FileHelper.getFilesizeFromBase64(e.dataURL)<=1024*S.current.maxSizeInKb;if("multipart"===f.type){let t=e.rawFile?.size||e.uploadResponse?.fileSize;return isNaN(t)&&(t=0),t<=1024*S.current.maxSizeInKb}})))).test("max-files",E.current.errorMessage||im.UPLOAD().MAX_FILES(E.current.max),(e=>!(e&&Array.isArray(e)&&E.current.max)||e.length<=E.current.max)),p)}),[p,y.map((e=>e.status)).join(",")]),t.useEffect((()=>{if(!a&&!o){const e=Array.isArray(s)?s:[];if(!(Nz(e.map((({fileId:e})=>e)),_).length>0))return;const t=[];e.forEach((({dataURL:e,fileId:n,fileName:r,fileUrl:i,uploadResponse:a})=>{t.push({addedFrom:"schema",dataURL:e,fileItem:{id:n},uploadResponse:a,fileUrl:i,rawFile:{name:r},slot:null,status:exports.EFileStatus.INJECTED})})),L(t,[])}}),[L,a,o,_,s]),t.useEffect((()=>{if(i?.message)try{const{message:e,fileErrors:t}=JSON.parse(i.message);t&&v(D.current.map((e=>{const n=t[e.fileItem.id];return n?{...e,fileItem:{...e.fileItem,errorMessage:n}}:e}))),e&&N(e)}catch(e){N(i.message)}else N(void 0)}),[i?.message,v]);const I=t=>t?e.jsx(hI,{children:t}):null;return e.jsxs(e.Fragment,{children:[e.jsx(t.Suspense,{fallback:null,children:e.jsx($z,{compressImages:!!u,fileTypeRule:b.current,hideThumbnail:c,id:r,maxFileSizeRule:S.current,upload:f,uploadRule:A.current,value:s})}),e.jsx(M.FileUpload,{...m,accept:b.current.fileType?.map((e=>`.${e}`)).join(","),description:I(l),errorMessage:I(C),fileItems:y.filter((({fileItem:e,status:t})=>!!e&&t!==exports.EFileStatus.INJECTED&&t!==exports.EFileStatus.INJECTING)).map((({fileItem:e})=>e)),id:r,maxFiles:E.current.max,onChange:e=>{L(e.map((e=>({addedFrom:"input",rawFile:e,slot:null,status:exports.EFileStatus.NONE}))),y)},onDelete:e=>{v(y.map((t=>t.fileItem.id!==e.id?t:{...t,status:exports.EFileStatus.TO_DELETE}))),T(r)},title:I(d),warning:I(g||h)})]})},Fz=t.createContext({images:[],setImages:()=>null,errorCount:0,setErrorCount:()=>null,currentFileIds:[],setCurrentFileIds:()=>null}),zz=({children:n})=>{const[r,i]=t.useState([]),[a,o]=t.useState(0),[s,u]=t.useState([]);return e.jsx(Fz.Provider,{value:{images:r,setImages:i,errorCount:a,setErrorCount:o,currentFileIds:s,setCurrentFileIds:u},children:n})};var Pz;!function(e){e.findAvailableSlot=e=>{const t=e.reduce(((e,{slot:t})=>t>e?t:e),0),n=Math.max(t,e.length),r=Array(n).fill(0).map(((e,t)=>t)),i=e.map((({slot:e})=>e));return r.filter((e=>!i.includes(e)))[0]??n}}(Pz||(Pz={}));const jz=["jpg","gif","png","heic","heif","webp"];var Zz;exports.EImageStatus=void 0,(Zz=exports.EImageStatus||(exports.EImageStatus={}))[Zz.INJECTED=-99]="INJECTED",Zz[Zz.ERROR_CUSTOM_MUTED=-7]="ERROR_CUSTOM_MUTED",Zz[Zz.ERROR_EXCEED=-6]="ERROR_EXCEED",Zz[Zz.ERROR_CUSTOM=-5]="ERROR_CUSTOM",Zz[Zz.TO_DELETE=-4]="TO_DELETE",Zz[Zz.ERROR_FORMAT=-3]="ERROR_FORMAT",Zz[Zz.ERROR_GENERIC=-2]="ERROR_GENERIC",Zz[Zz.ERROR_SIZE=-1]="ERROR_SIZE",Zz[Zz.NONE=0]="NONE",Zz[Zz.TO_RECOMPRESS=1]="TO_RECOMPRESS",Zz[Zz.COMPRESSED=2]="COMPRESSED",Zz[Zz.RECOMPRESSED=2]="RECOMPRESSED",Zz[Zz.CONVERTED=2]="CONVERTED",Zz[Zz.EDITED=3]="EDITED",Zz[Zz.UPLOAD_READY=4]="UPLOAD_READY",Zz[Zz.UPLOADING=5]="UPLOADING",Zz[Zz.UPLOADED=6]="UPLOADED",Zz[Zz.PENDING=7]="PENDING";var Uz,Bz={exports:{}},Vz={exports:{}},Hz={};var Gz,Yz,Wz,qz,Kz,Jz,Xz,Qz,eP,tP,nP,rP,iP,aP,oP={};
|
|
438
438
|
/** @license React v16.13.1
|
|
439
439
|
* react-is.development.js
|
|
440
440
|
*
|
|
@@ -928,7 +928,7 @@ object-assign
|
|
|
928
928
|
stroke: ${i.Color.Primary};
|
|
929
929
|
stroke-width: 1;
|
|
930
930
|
}
|
|
931
|
-
`,AZ=n=>{const{accepts:r,activeFileIndex:i,capture:o,id:s="image-thumbnails",images:u,maxFiles:l,onClickThumbnail:c,onSelectFile:d,multiple:f}=n,p=t.useRef(null),h=a.useTheme(),m=async e=>{const t=Array.from(e.target.files||[]);t.length&&setTimeout((()=>{d(t)}),100)},g=()=>p?.current?.click();return e.jsxs(hZ,{id:exports.TestHelper.generateId(s),children:[u.map(((t,n)=>t.status===exports.EImageStatus.NONE?e.jsx(vZ,{children:[...Array(4)].map(((t,n)=>e.jsx(_Z,{},`dot-${n}`)))},n):t.status>exports.EImageStatus.NONE||t.status===exports.EImageStatus.ERROR_CUSTOM_MUTED?e.jsx(mZ,{id:exports.TestHelper.generateId(s,`item-${n+1}`),"data-testid":exports.TestHelper.generateId(s,`item-${n+1}`),src:t.thumbnailDataURL||t.dataURL||"https://assets.life.gov.sg/web-frontend-engine/img/icons/photo-placeholder-add.svg",type:"button","aria-label":`thumbnail of ${t.name}`,onClick:()=>c(n),children:e.jsx(bZ,{isSelected:i===n})},n):"reviewModal"===t.addedFrom||t.status<exports.EImageStatus.NONE?e.jsxs(mZ,{id:exports.TestHelper.generateId(s,`item-${n+1}`),"data-testid":exports.TestHelper.generateId(s,`item-${n+1}`),type:"button","aria-label":`error with ${t.name}`,onClick:()=>c(n),error:!0,children:[e.jsx(bZ,{isSelected:i===n}),e.jsx(gZ,{})]},n):void 0)),(u.filter((({status:e,addedFrom:t})=>e>=exports.EImageStatus.NONE||e===exports.EImageStatus.ERROR_CUSTOM_MUTED||"reviewModal"===t)).length<l||!l)&&e.jsxs(e.Fragment,{children:[e.jsx(EZ,{id:exports.TestHelper.generateId(s,"file-input"),"data-testid":exports.TestHelper.generateId(s,"file-input"),type:"file","aria-hidden":"true",tabIndex:-1,capture:o,ref:p,accept:r.map((e=>`.${e}`)).join(", "),onChange:m,multiple:f,value:""}),e.jsx(SZ,{type:"button",id:exports.TestHelper.generateId(s,"add-image-button"),"data-testid":exports.TestHelper.generateId(s,"add-image-button"),"aria-label":"add image",onClick:g,theme:h||k.BaseTheme,children:e.jsx($.PlusIcon,{})})]})]})},xZ=t.lazy((()=>Promise.resolve().then((function(){return require("./index.fd2f5fdf.js")})))),wZ=[{color:"#282828",label:"black"},{color:"#FFF",colorScheme:"light",label:"white"},{color:"#017cd3",label:"blue"},{color:"#fb0101",label:"red"},{color:"#22910c",label:"green"},{color:"#f8e821",label:"yellow"}],TZ=n=>{const{accepts:r,capture:i,className:a,compress:o,dimensions:u,id:l="image-review",maxFiles:c,maxSizeInKb:d,onExit:f,outputType:p,show:h,multiple:m,maxFilesErrorMessage:g,imageReviewModalStyles:y}=n,{images:_,setImages:v}=t.useContext(Fz),{dispatchFieldEvent:b,addFieldEventListener:E,removeFieldEventListener:S}=WI(),A=qk(h),[x,w]=t.useState(_.length-1),[T,M]=t.useState(!1),[C,N]=t.useState(),D=!!_?.find((({status:e})=>e===exports.EImageStatus.NONE)),[L,I]=t.useState(wZ[0].color),[k,$]=t.useState(!1),R=t.useRef(null),F=!!_?.find((({addedFrom:e,status:t})=>"reviewModal"===e&&t<=exports.EImageStatus.NONE))||!_.length,z=t.useCallback((e=>{e.detail.removePendingImages&&v((e=>e.filter((({status:e})=>e===exports.EImageStatus.UPLOADED||e===exports.EImageStatus.ERROR_CUSTOM_MUTED)))),f()}),[f,v]),P=e=>{!c||e.length+_.filter((({status:e,addedFrom:t})=>e>=exports.EImageStatus.NONE||"reviewModal"===t)).length<=c?e.forEach((e=>{v((t=>{const n=Pz.findAvailableSlot(t);return[...t,{id:om(),file:e,name:e.name,dimensions:u,status:exports.EImageStatus.NONE,uploadProgress:0,addedFrom:"reviewModal",slot:n}]}))})):v((t=>{const n=Pz.findAvailableSlot(t);return[...t,{id:om(),file:e[0],name:e[0].name,dimensions:u,status:exports.EImageStatus.ERROR_EXCEED,uploadProgress:0,addedFrom:"reviewModal",slot:n}]}))},j=e=>{e&&(v((e=>e.map(((e,t)=>({...e,...t===x?{status:exports.EImageStatus.TO_DELETE}:{}}))))),w(Math.max(0,x-1))),N(null)},Z=t.useCallback((()=>{v((e=>e.filter((({status:e})=>e>=exports.EImageStatus.NONE||e===exports.EImageStatus.ERROR_CUSTOM_MUTED)).map((e=>{const t={...e};return e.drawingDataURL&&(t.dataURL=e.drawingDataURL),e.status<exports.EImageStatus.UPLOAD_READY&&e.status>exports.EImageStatus.NONE&&(t.status=exports.EImageStatus.UPLOAD_READY),t.drawingDataURL=void 0,t.drawing=void 0,t}))))}),[v]),U=()=>{!b("save-review-images",l,{images:_,retry:U})||(Z(),f())},B=()=>{M(!0),I(wZ[0].color)},V=async()=>{const{dataURL:e,drawing:t}=R.current?.export()||{},n=await exports.ImageHelper.dataUrlToImage(e),r=await exports.ImageHelper.resampleImage(n,{scale:96/n.width,type:exports.FileHelper.fileExtensionToMimeType(p)}),i=await exports.FileHelper.fileToDataUrl(r);v((n=>{const r=[...n];return r[x]={...r[x],thumbnailDataURL:i,drawingDataURL:e,drawing:t,status:o?exports.EImageStatus.TO_RECOMPRESS:exports.EImageStatus.EDITED},r})),M(!1),G()},H=()=>{G(),$(!0)},G=()=>{I(""),$(!1)};t.useEffect((()=>{const e={"trigger-save-review-images":Z,"dismiss-review-modal":z};return Object.entries(e).forEach((([e,t])=>{E(e,l,t)})),()=>{Object.entries(e).forEach((([e,t])=>{S(e,l,t)}))}}),[E,z,Z,l,S]),t.useEffect((()=>{w(_.length-1)}),[_.length]),t.useEffect((()=>{h?b("show-review-modal",l):A&&b("hide-review-modal",l)}),[h]);return e.jsx(s.Modal,{id:exports.TestHelper.generateId(l,void 0,h?"show":"hide"),className:a?`${a}-review`:void 0,show:h,children:e.jsx(Yj,{className:a?`${a}-review-modal-box`:void 0,imageReviewModalStyles:y,showCloseButton:!1,children:h?e.jsxs(e.Fragment,{children:[e.jsx(Wj,{className:a?`${a}-header`:void 0,$drawActive:T,children:T?e.jsxs(e.Fragment,{children:[e.jsx(Xj,{id:exports.TestHelper.generateId(l,"clear-drawing-button"),"data-testid":exports.TestHelper.generateId(l,"clear-drawing-button"),onClick:()=>N("clear-drawing"),children:"Clear"}),e.jsx(Xj,{id:exports.TestHelper.generateId(l,"save-drawing"),"data-testid":exports.TestHelper.generateId(l,"save-drawing"),onClick:V,children:"Save"})]}):e.jsxs(e.Fragment,{children:[e.jsx(qj,{id:exports.TestHelper.generateId(l,"close-button"),"data-testid":exports.TestHelper.generateId(l,"close-button"),"aria-label":"exit review modal",onClick:()=>N("exit"),children:e.jsx(O.CrossIcon,{type:"cross"})}),e.jsx(Kj,{weight:"semibold",children:"Review photos"})]})}),e.jsxs(Qj,{children:[_.length>0&&e.jsx(oZ,{className:a?`${a}-editor`:void 0,children:e.jsx(t.Suspense,{fallback:null,children:e.jsx(xZ,{baseImageDataURL:_[x]?.dataURL,drawing:_[x]?.drawing,color:T?L:void 0,erase:!!T&&k,ref:R,maxSizeInKb:d})})}),_.length>0&&e.jsx(eZ,{children:"Loading Preview..."}),!T&&_[x]?.status>=exports.EImageStatus.NONE&&e.jsxs(tZ,{children:[e.jsxs(nZ,{id:exports.TestHelper.generateId(l,"draw-button"),"data-testid":exports.TestHelper.generateId(l,"draw-button"),onClick:B,disabled:D,children:[e.jsx(iZ,{$disabled:D}),e.jsx(rZ,{weight:"semibold",$disabled:D,children:"Draw"})]}),e.jsxs(nZ,{id:exports.TestHelper.generateId(l,"delete-button"),"data-testid":exports.TestHelper.generateId(l,"delete-button"),onClick:()=>N("delete"),disabled:D,children:[e.jsx(aZ,{$disabled:D}),e.jsx(rZ,{weight:"semibold",$disabled:D,children:"Delete"})]})]}),_[x]?.status<exports.EImageStatus.NONE&&e.jsx(Hj,{id:`${l}-photo-error`,image:_[x],accepts:r,maxSizeInKb:d,onClickOk:()=>j(!0),maxFilesErrorMessage:g,maxFiles:c})]}),e.jsx(sZ,{className:a?`${a}-footer`:void 0,children:T?e.jsxs(e.Fragment,{children:[e.jsx(lZ,{id:exports.TestHelper.generateId(l,"eraser-button"),"data-testid":exports.TestHelper.generateId(l,"eraser-button"),"aria-label":"eraser",onClick:H,children:e.jsx(cZ,{$eraseMode:k})}),e.jsx(fZ,{children:wZ.map((({color:t,colorScheme:n,label:r},i)=>e.jsx(pZ,{id:exports.TestHelper.generateId(l,`palette-color-${i}`),"aria-label":`${r} brush`,$color:t,$colorScheme:n,onClick:()=>(e=>{G(),I(e)})(t),children:L===t&&e.jsx(dZ,{$colorScheme:n})},t)))})]}):e.jsxs(e.Fragment,{children:[e.jsx(AZ,{id:`${l}-image-thumbnails`,activeFileIndex:x,accepts:r,capture:i,maxFiles:c,images:_,onClickThumbnail:w,onSelectFile:P,multiple:m}),e.jsx(uZ,{id:exports.TestHelper.generateId(l,"save-button"),"data-testid":exports.TestHelper.generateId(l,"save-button"),onClick:U,disabled:F,children:"Save"})]})}),e.jsx(Gj,{images:_,show:C,onDecideClearDrawing:e=>{e&&R.current.clearDrawing(),N(null)},onDecideDelete:j,onDecideExit:e=>{e&&(v(_.filter((({addedFrom:e,status:t})=>t>=exports.EImageStatus.UPLOADED||t<exports.EImageStatus.NONE&&"dragInput"===e)).map((e=>({...e,drawingDataURL:void 0,drawing:void 0})))),f()),N(null)}})]}):e.jsx(e.Fragment,{})})})},MZ=t.lazy((()=>Promise.resolve().then((function(){return require("./index.06945e3c.js")})))),OZ=n=>{const{schema:{buttonLabel:r,capture:i,className:a,compress:o,description:s,dimensions:u={width:1e3,height:1e3},editImage:l,label:c,outputType:d="jpg",uploadOnAddingFile:f,validation:p,multiple:h,imageReviewModalStyles:m},id:g,isDirty:y,isTouched:_,value:v,warning:b,...E}=n,{images:S,setImages:A,currentFileIds:x}=t.useContext(Fz),w=qk(S),[T,M]=t.useState([...jz]),[O,C]=t.useState(0),[N,D]=t.useState(0),[L,I]=t.useState(!1),[k,$]=t.useState(!1),{setFieldValidationConfig:R}=Gk(),{dispatchFieldEvent:F}=WI();t.useEffect((()=>{F("mount",g)}),[F,g]),t.useEffect((()=>{if(!y&&!_){const e=Array.isArray(v)?v:[];if(!(Nz(e.map((({fileId:e})=>e)),x).length>0))return;const t=[];e.forEach((({fileId:e,fileName:n,dataURL:r,uploadResponse:i},a)=>{const o={id:e||om(),file:{},name:n,dimensions:{width:10,height:10},dataURL:r,status:exports.EImageStatus.INJECTED,addedFrom:"schema",uploadProgress:100,slot:a,uploadResponse:i};t.push(o)})),A(t)}}),[y,_,x,A,v]),t.useEffect((()=>{const e=p?.find((e=>"required"in e)),t=p?.find((e=>"fileType"in e)),n=p?.find((e=>"maxSizeInKb"in e));t?.fileType&&t?.fileType!==T&&M(t?.fileType),n?.maxSizeInKb&&n?.maxSizeInKb!==N&&D(n?.maxSizeInKb);const r=p?.find((e=>"length"in e)),i=p?.find((e=>"max"in e));let a;r?a={maxFiles:r.length,errorMessage:r.errorMessage}:i&&(a={maxFiles:i.max,errorMessage:i.errorMessage}),a?.maxFiles&&O!==a.maxFiles&&C(a.maxFiles),R(g,IT().of(DT().shape({fileName:gw(),dataURL:gw()})).test("is-empty-array",e?.errorMessage||im.UPLOAD("photo").REQUIRED,(t=>!t||!e?.required||t.length>0)).test("max-size-in-kb",n?.errorMessage||im.UPLOAD("photo").MAX_FILE_SIZE(n?.maxSizeInKb),(e=>!(e&&Array.isArray(e)&&n?.maxSizeInKb)||e.every((e=>exports.FileHelper.getFilesizeFromBase64(e.dataURL)<=1024*n?.maxSizeInKb)))),p)}),[p]),t.useEffect((()=>{S.some((e=>e.status===exports.EImageStatus.NONE))||(S.some(((e,t)=>{const n=w?.[t];if(e.status!==n?.status||e.dataURL!==n.dataURL)switch(e.status){case exports.EImageStatus.COMPRESSED:case exports.EImageStatus.CONVERTED:if(l&&!k)return exports.WindowHelper.isMobileView()?$(!0):I(!0),!0}})),0===S.length&&$(!1))}),[S.map((e=>e.status)).join(","),S.map((e=>e.dataURL)).join(",")]);const z=(e=!1)=>{e?l&&(document.body.classList.remove("lifesg-ds-overlay-open"),$(!0)):A((e=>e.map((e=>e.status<exports.EImageStatus.UPLOAD_READY&&e.status>exports.EImageStatus.NONE?{...e,status:exports.EImageStatus.UPLOAD_READY}:e)))),I(!1)};return e.jsxs(e.Fragment,{children:[e.jsx(t.Suspense,{fallback:null,children:e.jsx(MZ,{accepts:T,compress:!!o,dimensions:u,editImage:l,id:g,maxSizeInKb:N,outputType:d,upload:f,value:v})}),e.jsx(zj,{id:g,capture:i,className:a,label:c,description:s,buttonLabel:r,accepts:T,maxFiles:O,maxSizeInKb:N,dimensions:u,errorMessage:E.error?.message,validation:p,multiple:h,warning:b}),e.jsx(KT,{id:`${g}-review-prompt`,title:"Review photos?",size:"large",show:L,description:"This lets you check if you've selected the correct photos, and draw on them to highlight the issue.",buttons:[{id:"ok",title:"Ok",onClick:()=>z(!0)},{id:"skip",title:"Skip",buttonStyle:"secondary",onClick:()=>z()}]}),(()=>{const t=p?.find((e=>"max"in e));return e.jsx(TZ,{accepts:T,dimensions:u,id:g,className:a,maxFiles:O,maxFilesErrorMessage:t?.errorMessage,maxSizeInKb:N,onExit:()=>$(!1),outputType:d,show:k,multiple:h,capture:i,imageReviewModalStyles:m})})()]})},CZ=a.css`
|
|
931
|
+
`,AZ=n=>{const{accepts:r,activeFileIndex:i,capture:o,id:s="image-thumbnails",images:u,maxFiles:l,onClickThumbnail:c,onSelectFile:d,multiple:f}=n,p=t.useRef(null),h=a.useTheme(),m=async e=>{const t=Array.from(e.target.files||[]);t.length&&setTimeout((()=>{d(t)}),100)},g=()=>p?.current?.click();return e.jsxs(hZ,{id:exports.TestHelper.generateId(s),children:[u.map(((t,n)=>t.status===exports.EImageStatus.NONE?e.jsx(vZ,{children:[...Array(4)].map(((t,n)=>e.jsx(_Z,{},`dot-${n}`)))},n):t.status>exports.EImageStatus.NONE||t.status===exports.EImageStatus.ERROR_CUSTOM_MUTED?e.jsx(mZ,{id:exports.TestHelper.generateId(s,`item-${n+1}`),"data-testid":exports.TestHelper.generateId(s,`item-${n+1}`),src:t.thumbnailDataURL||t.dataURL||"https://assets.life.gov.sg/web-frontend-engine/img/icons/photo-placeholder-add.svg",type:"button","aria-label":`thumbnail of ${t.name}`,onClick:()=>c(n),children:e.jsx(bZ,{isSelected:i===n})},n):"reviewModal"===t.addedFrom||t.status<exports.EImageStatus.NONE?e.jsxs(mZ,{id:exports.TestHelper.generateId(s,`item-${n+1}`),"data-testid":exports.TestHelper.generateId(s,`item-${n+1}`),type:"button","aria-label":`error with ${t.name}`,onClick:()=>c(n),error:!0,children:[e.jsx(bZ,{isSelected:i===n}),e.jsx(gZ,{})]},n):void 0)),(u.filter((({status:e,addedFrom:t})=>e>=exports.EImageStatus.NONE||e===exports.EImageStatus.ERROR_CUSTOM_MUTED||"reviewModal"===t)).length<l||!l)&&e.jsxs(e.Fragment,{children:[e.jsx(EZ,{id:exports.TestHelper.generateId(s,"file-input"),"data-testid":exports.TestHelper.generateId(s,"file-input"),type:"file","aria-hidden":"true",tabIndex:-1,capture:o,ref:p,accept:r.map((e=>`.${e}`)).join(", "),onChange:m,multiple:f,value:""}),e.jsx(SZ,{type:"button",id:exports.TestHelper.generateId(s,"add-image-button"),"data-testid":exports.TestHelper.generateId(s,"add-image-button"),"aria-label":"add image",onClick:g,theme:h||k.BaseTheme,children:e.jsx($.PlusIcon,{})})]})]})},xZ=t.lazy((()=>Promise.resolve().then((function(){return require("./index.affd04db.js")})))),wZ=[{color:"#282828",label:"black"},{color:"#FFF",colorScheme:"light",label:"white"},{color:"#017cd3",label:"blue"},{color:"#fb0101",label:"red"},{color:"#22910c",label:"green"},{color:"#f8e821",label:"yellow"}],TZ=n=>{const{accepts:r,capture:i,className:a,compress:o,dimensions:u,id:l="image-review",maxFiles:c,maxSizeInKb:d,onExit:f,outputType:p,show:h,multiple:m,maxFilesErrorMessage:g,imageReviewModalStyles:y}=n,{images:_,setImages:v}=t.useContext(Fz),{dispatchFieldEvent:b,addFieldEventListener:E,removeFieldEventListener:S}=WI(),A=qk(h),[x,w]=t.useState(_.length-1),[T,M]=t.useState(!1),[C,N]=t.useState(),D=!!_?.find((({status:e})=>e===exports.EImageStatus.NONE)),[L,I]=t.useState(wZ[0].color),[k,$]=t.useState(!1),R=t.useRef(null),F=!!_?.find((({addedFrom:e,status:t})=>"reviewModal"===e&&t<=exports.EImageStatus.NONE))||!_.length,z=t.useCallback((e=>{e.detail.removePendingImages&&v((e=>e.filter((({status:e})=>e===exports.EImageStatus.UPLOADED||e===exports.EImageStatus.ERROR_CUSTOM_MUTED)))),f()}),[f,v]),P=e=>{!c||e.length+_.filter((({status:e,addedFrom:t})=>e>=exports.EImageStatus.NONE||"reviewModal"===t)).length<=c?e.forEach((e=>{v((t=>{const n=Pz.findAvailableSlot(t);return[...t,{id:om(),file:e,name:e.name,dimensions:u,status:exports.EImageStatus.NONE,uploadProgress:0,addedFrom:"reviewModal",slot:n}]}))})):v((t=>{const n=Pz.findAvailableSlot(t);return[...t,{id:om(),file:e[0],name:e[0].name,dimensions:u,status:exports.EImageStatus.ERROR_EXCEED,uploadProgress:0,addedFrom:"reviewModal",slot:n}]}))},j=e=>{e&&(v((e=>e.map(((e,t)=>({...e,...t===x?{status:exports.EImageStatus.TO_DELETE}:{}}))))),w(Math.max(0,x-1))),N(null)},Z=t.useCallback((()=>{v((e=>e.filter((({status:e})=>e>=exports.EImageStatus.NONE||e===exports.EImageStatus.ERROR_CUSTOM_MUTED)).map((e=>{const t={...e};return e.drawingDataURL&&(t.dataURL=e.drawingDataURL),e.status<exports.EImageStatus.UPLOAD_READY&&e.status>exports.EImageStatus.NONE&&(t.status=exports.EImageStatus.UPLOAD_READY),t.drawingDataURL=void 0,t.drawing=void 0,t}))))}),[v]),U=()=>{!b("save-review-images",l,{images:_,retry:U})||(Z(),f())},B=()=>{M(!0),I(wZ[0].color)},V=async()=>{const{dataURL:e,drawing:t}=R.current?.export()||{},n=await exports.ImageHelper.dataUrlToImage(e),r=await exports.ImageHelper.resampleImage(n,{scale:96/n.width,type:exports.FileHelper.fileExtensionToMimeType(p)}),i=await exports.FileHelper.fileToDataUrl(r);v((n=>{const r=[...n];return r[x]={...r[x],thumbnailDataURL:i,drawingDataURL:e,drawing:t,status:o?exports.EImageStatus.TO_RECOMPRESS:exports.EImageStatus.EDITED},r})),M(!1),G()},H=()=>{G(),$(!0)},G=()=>{I(""),$(!1)};t.useEffect((()=>{const e={"trigger-save-review-images":Z,"dismiss-review-modal":z};return Object.entries(e).forEach((([e,t])=>{E(e,l,t)})),()=>{Object.entries(e).forEach((([e,t])=>{S(e,l,t)}))}}),[E,z,Z,l,S]),t.useEffect((()=>{w(_.length-1)}),[_.length]),t.useEffect((()=>{h?b("show-review-modal",l):A&&b("hide-review-modal",l)}),[h]);return e.jsx(s.Modal,{id:exports.TestHelper.generateId(l,void 0,h?"show":"hide"),className:a?`${a}-review`:void 0,show:h,children:e.jsx(Yj,{className:a?`${a}-review-modal-box`:void 0,imageReviewModalStyles:y,showCloseButton:!1,children:h?e.jsxs(e.Fragment,{children:[e.jsx(Wj,{className:a?`${a}-header`:void 0,$drawActive:T,children:T?e.jsxs(e.Fragment,{children:[e.jsx(Xj,{id:exports.TestHelper.generateId(l,"clear-drawing-button"),"data-testid":exports.TestHelper.generateId(l,"clear-drawing-button"),onClick:()=>N("clear-drawing"),children:"Clear"}),e.jsx(Xj,{id:exports.TestHelper.generateId(l,"save-drawing"),"data-testid":exports.TestHelper.generateId(l,"save-drawing"),onClick:V,children:"Save"})]}):e.jsxs(e.Fragment,{children:[e.jsx(qj,{id:exports.TestHelper.generateId(l,"close-button"),"data-testid":exports.TestHelper.generateId(l,"close-button"),"aria-label":"exit review modal",onClick:()=>N("exit"),children:e.jsx(O.CrossIcon,{type:"cross"})}),e.jsx(Kj,{weight:"semibold",children:"Review photos"})]})}),e.jsxs(Qj,{children:[_.length>0&&e.jsx(oZ,{className:a?`${a}-editor`:void 0,children:e.jsx(t.Suspense,{fallback:null,children:e.jsx(xZ,{baseImageDataURL:_[x]?.dataURL,drawing:_[x]?.drawing,color:T?L:void 0,erase:!!T&&k,ref:R,maxSizeInKb:d})})}),_.length>0&&e.jsx(eZ,{children:"Loading Preview..."}),!T&&_[x]?.status>=exports.EImageStatus.NONE&&e.jsxs(tZ,{children:[e.jsxs(nZ,{id:exports.TestHelper.generateId(l,"draw-button"),"data-testid":exports.TestHelper.generateId(l,"draw-button"),onClick:B,disabled:D,children:[e.jsx(iZ,{$disabled:D}),e.jsx(rZ,{weight:"semibold",$disabled:D,children:"Draw"})]}),e.jsxs(nZ,{id:exports.TestHelper.generateId(l,"delete-button"),"data-testid":exports.TestHelper.generateId(l,"delete-button"),onClick:()=>N("delete"),disabled:D,children:[e.jsx(aZ,{$disabled:D}),e.jsx(rZ,{weight:"semibold",$disabled:D,children:"Delete"})]})]}),_[x]?.status<exports.EImageStatus.NONE&&e.jsx(Hj,{id:`${l}-photo-error`,image:_[x],accepts:r,maxSizeInKb:d,onClickOk:()=>j(!0),maxFilesErrorMessage:g,maxFiles:c})]}),e.jsx(sZ,{className:a?`${a}-footer`:void 0,children:T?e.jsxs(e.Fragment,{children:[e.jsx(lZ,{id:exports.TestHelper.generateId(l,"eraser-button"),"data-testid":exports.TestHelper.generateId(l,"eraser-button"),"aria-label":"eraser",onClick:H,children:e.jsx(cZ,{$eraseMode:k})}),e.jsx(fZ,{children:wZ.map((({color:t,colorScheme:n,label:r},i)=>e.jsx(pZ,{id:exports.TestHelper.generateId(l,`palette-color-${i}`),"aria-label":`${r} brush`,$color:t,$colorScheme:n,onClick:()=>(e=>{G(),I(e)})(t),children:L===t&&e.jsx(dZ,{$colorScheme:n})},t)))})]}):e.jsxs(e.Fragment,{children:[e.jsx(AZ,{id:`${l}-image-thumbnails`,activeFileIndex:x,accepts:r,capture:i,maxFiles:c,images:_,onClickThumbnail:w,onSelectFile:P,multiple:m}),e.jsx(uZ,{id:exports.TestHelper.generateId(l,"save-button"),"data-testid":exports.TestHelper.generateId(l,"save-button"),onClick:U,disabled:F,children:"Save"})]})}),e.jsx(Gj,{images:_,show:C,onDecideClearDrawing:e=>{e&&R.current.clearDrawing(),N(null)},onDecideDelete:j,onDecideExit:e=>{e&&(v(_.filter((({addedFrom:e,status:t})=>t>=exports.EImageStatus.UPLOADED||t<exports.EImageStatus.NONE&&"dragInput"===e)).map((e=>({...e,drawingDataURL:void 0,drawing:void 0})))),f()),N(null)}})]}):e.jsx(e.Fragment,{})})})},MZ=t.lazy((()=>Promise.resolve().then((function(){return require("./index.6d530cde.js")})))),OZ=n=>{const{schema:{buttonLabel:r,capture:i,className:a,compress:o,description:s,dimensions:u={width:1e3,height:1e3},editImage:l,label:c,outputType:d="jpg",uploadOnAddingFile:f,validation:p,multiple:h,imageReviewModalStyles:m},id:g,isDirty:y,isTouched:_,value:v,warning:b,...E}=n,{images:S,setImages:A,currentFileIds:x}=t.useContext(Fz),w=qk(S),[T,M]=t.useState([...jz]),[O,C]=t.useState(0),[N,D]=t.useState(0),[L,I]=t.useState(!1),[k,$]=t.useState(!1),{setFieldValidationConfig:R}=Gk(),{dispatchFieldEvent:F}=WI();t.useEffect((()=>{F("mount",g)}),[F,g]),t.useEffect((()=>{if(!y&&!_){const e=Array.isArray(v)?v:[];if(!(Nz(e.map((({fileId:e})=>e)),x).length>0))return;const t=[];e.forEach((({fileId:e,fileName:n,dataURL:r,uploadResponse:i},a)=>{const o={id:e||om(),file:{},name:n,dimensions:{width:10,height:10},dataURL:r,status:exports.EImageStatus.INJECTED,addedFrom:"schema",uploadProgress:100,slot:a,uploadResponse:i};t.push(o)})),A(t)}}),[y,_,x,A,v]),t.useEffect((()=>{const e=p?.find((e=>"required"in e)),t=p?.find((e=>"fileType"in e)),n=p?.find((e=>"maxSizeInKb"in e));t?.fileType&&t?.fileType!==T&&M(t?.fileType),n?.maxSizeInKb&&n?.maxSizeInKb!==N&&D(n?.maxSizeInKb);const r=p?.find((e=>"length"in e)),i=p?.find((e=>"max"in e));let a;r?a={maxFiles:r.length,errorMessage:r.errorMessage}:i&&(a={maxFiles:i.max,errorMessage:i.errorMessage}),a?.maxFiles&&O!==a.maxFiles&&C(a.maxFiles),R(g,IT().of(DT().shape({fileName:gw(),dataURL:gw()})).test("is-empty-array",e?.errorMessage||im.UPLOAD("photo").REQUIRED,(t=>!t||!e?.required||t.length>0)).test("max-size-in-kb",n?.errorMessage||im.UPLOAD("photo").MAX_FILE_SIZE(n?.maxSizeInKb),(e=>!(e&&Array.isArray(e)&&n?.maxSizeInKb)||e.every((e=>exports.FileHelper.getFilesizeFromBase64(e.dataURL)<=1024*n?.maxSizeInKb)))),p)}),[p]),t.useEffect((()=>{S.some((e=>e.status===exports.EImageStatus.NONE))||(S.some(((e,t)=>{const n=w?.[t];if(e.status!==n?.status||e.dataURL!==n.dataURL)switch(e.status){case exports.EImageStatus.COMPRESSED:case exports.EImageStatus.CONVERTED:if(l&&!k)return exports.WindowHelper.isMobileView()?$(!0):I(!0),!0}})),0===S.length&&$(!1))}),[S.map((e=>e.status)).join(","),S.map((e=>e.dataURL)).join(",")]);const z=(e=!1)=>{e?l&&(document.body.classList.remove("lifesg-ds-overlay-open"),$(!0)):A((e=>e.map((e=>e.status<exports.EImageStatus.UPLOAD_READY&&e.status>exports.EImageStatus.NONE?{...e,status:exports.EImageStatus.UPLOAD_READY}:e)))),I(!1)};return e.jsxs(e.Fragment,{children:[e.jsx(t.Suspense,{fallback:null,children:e.jsx(MZ,{accepts:T,compress:!!o,dimensions:u,editImage:l,id:g,maxSizeInKb:N,outputType:d,upload:f,value:v})}),e.jsx(zj,{id:g,capture:i,className:a,label:c,description:s,buttonLabel:r,accepts:T,maxFiles:O,maxSizeInKb:N,dimensions:u,errorMessage:E.error?.message,validation:p,multiple:h,warning:b}),e.jsx(KT,{id:`${g}-review-prompt`,title:"Review photos?",size:"large",show:L,description:"This lets you check if you've selected the correct photos, and draw on them to highlight the issue.",buttons:[{id:"ok",title:"Ok",onClick:()=>z(!0)},{id:"skip",title:"Skip",buttonStyle:"secondary",onClick:()=>z()}]}),(()=>{const t=p?.find((e=>"max"in e));return e.jsx(TZ,{accepts:T,dimensions:u,id:g,className:a,maxFiles:O,maxFilesErrorMessage:t?.errorMessage,maxSizeInKb:N,onExit:()=>$(!1),outputType:d,show:k,multiple:h,capture:i,imageReviewModalStyles:m})})()]})},CZ=a.css`
|
|
932
932
|
border: 1px solid ${i.Color.Accent.Light[1]};
|
|
933
933
|
box-shadow: none;
|
|
934
934
|
`,NZ=a.css`
|
|
@@ -1011,7 +1011,7 @@ object-assign
|
|
|
1011
1011
|
${e=>a.css`
|
|
1012
1012
|
margin-left: ${e.$readOnly?"0.25rem":"0.75rem"};
|
|
1013
1013
|
`}
|
|
1014
|
-
`,$Z=t=>{const{id:n,"data-testid":r,className:i,disabled:a,readOnly:o,onFocus:s,value:u,placeholder:l,error:c}=t;return e.jsxs(LZ,{id:n,"data-testid":r,type:"button",className:i,disabled:a,$readOnly:o,$error:c,onFocus:s,onClick:e=>{a||e.currentTarget.focus()},tabIndex:a?-1:0,"aria-disabled":a||void 0,"aria-haspopup":"dialog","aria-readonly":o,children:[l&&!u?e.jsx(IZ,{$placeholder:!0,$disabled:a,children:l}):e.jsx(IZ,{$disabled:a,children:u}),e.jsx(kZ,{$disabled:a,$readOnly:o,"aria-hidden":"true",children:e.jsx(F.PinFillIcon,{})})]})},RZ=t=>{const{id:n,label:r,className:i,locationInputPlaceholder:a="",onFocus:o,value:s,errorMessage:u,disabled:l,readOnly:c}=t;return e.jsx(x.Form.CustomField,{id:exports.TestHelper.generateId(n,"location-input"),"data-testid":exports.TestHelper.generateId(n,"location-input"),label:r,errorMessage:u,children:e.jsx($Z,{id:exports.TestHelper.generateId(n,"location-input-base"),"data-testid":exports.TestHelper.generateId(n,"location-input-base"),disabled:l,readOnly:c,placeholder:a,onFocus:o,value:s,error:!!u,className:i})})},FZ=t.lazy((()=>Promise.resolve().then((function(){return require("./location-modal.
|
|
1014
|
+
`,$Z=t=>{const{id:n,"data-testid":r,className:i,disabled:a,readOnly:o,onFocus:s,value:u,placeholder:l,error:c}=t;return e.jsxs(LZ,{id:n,"data-testid":r,type:"button",className:i,disabled:a,$readOnly:o,$error:c,onFocus:s,onClick:e=>{a||e.currentTarget.focus()},tabIndex:a?-1:0,"aria-disabled":a||void 0,"aria-haspopup":"dialog","aria-readonly":o,children:[l&&!u?e.jsx(IZ,{$placeholder:!0,$disabled:a,children:l}):e.jsx(IZ,{$disabled:a,children:u}),e.jsx(kZ,{$disabled:a,$readOnly:o,"aria-hidden":"true",children:e.jsx(F.PinFillIcon,{})})]})},RZ=t=>{const{id:n,label:r,className:i,locationInputPlaceholder:a="",onFocus:o,value:s,errorMessage:u,disabled:l,readOnly:c}=t;return e.jsx(x.Form.CustomField,{id:exports.TestHelper.generateId(n,"location-input"),"data-testid":exports.TestHelper.generateId(n,"location-input"),label:r,errorMessage:u,children:e.jsx($Z,{id:exports.TestHelper.generateId(n,"location-input-base"),"data-testid":exports.TestHelper.generateId(n,"location-input-base"),disabled:l,readOnly:c,placeholder:a,onFocus:o,value:s,error:!!u,className:i})})},FZ=t.lazy((()=>Promise.resolve().then((function(){return require("./location-modal.99b9bb33.js")}))));class zZ extends Error{code;message;constructor(e){super(),Object.assign(this,e)}}const PZ=H.default(r.Text.BodySmall)`
|
|
1015
1015
|
cursor: ${e=>e.disabled?"not-allowed":"pointer"};
|
|
1016
1016
|
`,jZ=H.default(j.RadioButton)`
|
|
1017
1017
|
margin-right: 5px;
|
|
@@ -1047,9 +1047,9 @@ object-assign
|
|
|
1047
1047
|
gap: 1rem;
|
|
1048
1048
|
`,YZ=H.default.div`
|
|
1049
1049
|
${({$color:e})=>e&&`color: ${e};`}
|
|
1050
|
-
`;var WZ;exports.EFieldType=void 0,(WZ=exports.EFieldType||(exports.EFieldType={})).BUTTON="ButtonField",WZ.CHECKBOX="CheckboxGroup",WZ.CHIPS="Chips",WZ["CONTACT-FIELD"]="ContactField",WZ["DATE-FIELD"]="DateField",WZ["DATE-RANGE-FIELD"]="DateRangeField",WZ["EMAIL-FIELD"]="TextField",WZ["E-SIGNATURE-FIELD"]="ESignatureField",WZ["ERROR-FIELD"]="ErrorField",WZ["FILE-UPLOAD"]="FileUpload",WZ["HIDDEN-FIELD"]="HiddenField",WZ["HISTOGRAM-SLIDER"]="HistogramSlider",WZ["IMAGE-UPLOAD"]="ImageUpload",WZ["LOCATION-FIELD"]="LocationField",WZ["MASKED-FIELD"]="MaskedField",WZ["MULTI-SELECT"]="MultiSelect",WZ["NESTED-MULTI-SELECT"]="NestedMultiSelect",WZ["RANGE-SELECT"]="RangeSelect",WZ["NUMERIC-FIELD"]="TextField",WZ.RADIO="RadioButtonGroup",WZ.RESET="ResetButton",WZ.SELECT="Select",WZ["SELECT-HISTOGRAM"]="SelectHistogram",WZ.SLIDER="Slider",WZ.SUBMIT="SubmitButton",WZ.SWITCH="Switch",WZ.TEXTAREA="Textarea",WZ["TEXT-FIELD"]="TextField",WZ["TIME-FIELD"]="TimeField",WZ["UNIT-NUMBER-FIELD"]="UnitNumberField";var qZ=Object.freeze({__proto__:null,ButtonField:t=>{const{schema:{label:n,uiType:r,startIcon:i,endIcon:a,href:o,target:s,...u},id:l,...c}=t,{dispatchFieldEvent:d}=WI(),f=t=>{if(!t)return null;const n=G[t];return e.jsx(n,{})};return e.jsxs(A$,{type:"button",...u,...c,onClick:e=>{d("click",l,e),o&&(e=>{try{return!!new URL(e)}catch{return!1}})(o)&&(s?window.open(o,s,"noopener noreferrer"):window.location.href=o)},children:[f(i),n,f(a)]})},CheckboxGroup:n=>{const{formattedLabel:r,error:i,id:a,onChange:o,schema:{className:s,customOptions:u,disabled:l,label:c,options:d,validation:f,...p},value:h,warning:m}=n,{setValue:g}=we(),[y,_]=t.useState(h||[]),{setFieldValidationConfig:v}=Gk();t.useEffect((()=>{const e=f?.find((e=>"required"in e));v(a,IT().of(gw()).test("is-empty-array",e?.errorMessage||im.COMMON.REQUIRED_OPTION,(t=>!t||!e?.required||t.length>0)),f)}),[f]),_s((()=>{const e=h?.filter((e=>d.find((t=>t.value===e))));g(a,e)}),[d]),t.useEffect((()=>{_(h||[])}),[h]);const b=(e,t)=>{const n=d.find((e=>!0===e.none));let r=[...y];t?r=r.includes(e)?[]:[e]:r.includes(e)?r=k$(r,e,n?.value):(r.push(e),r=k$(r,n?.value)),o({target:{value:r}})},E=e=>y.includes(e),S=()=>{const e=om();return`${a}-${e}`},A=t=>"string"==typeof t?e.jsx(hI,{inline:!0,children:t}):e.jsx(eU,{children:t});return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.CustomField,{id:a,label:r,errorMessage:i?.message,children:"toggle"===u?.styleType?d.length>0&&"toggle"===u.styleType&&e.jsx(z$,{$layoutType:u?.layoutType??"horizontal",className:s?`${s}-checkbox-container`:void 0,children:d.map(((t,n)=>{const r=S();return e.jsx(P$,{type:"checkbox","data-testid":exports.TestHelper.generateId(a,"toggle"),id:r,className:s,disabled:l??t.disabled,name:r,indicator:u?.indicator,styleType:!1===u?.border?"no-border":"default",checked:E(t.value),onChange:()=>b(t.value,t.none),error:!!i?.message,compositeSection:t.children?{children:e.jsx(eU,{children:t.children}),collapsible:!1}:null,subLabel:!!t.subLabel&&A(t.subLabel),children:A(t.label)},n)}))}):d.length>0&&d.map(((t,n)=>{const r=S();return e.jsxs(F$,{className:s?`${s}-checkbox-container`:void 0,children:[e.jsx(R$,{...p,"data-testid":exports.TestHelper.generateId(a,"checkbox"),id:r,className:s,disabled:l??t.disabled,name:r,value:t.value,checked:E(t.value),onChange:()=>b(t.value)}),e.jsx($$,{as:"label",htmlFor:r,disabled:l??t.disabled,children:A(t.label)})]},n)}))}),e.jsx(wI,{id:a,message:m})]})},Chips:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{disabled:s,label:u,options:l,textarea:c,validation:d,...f},value:p,warning:h,...m}=n,[g,y]=t.useState(p||[]),[_,v]=t.useState(!1),[b,E]=t.useState(!0),{setValue:S,unregister:A}=we(),{setFieldValidationConfig:w,removeFieldValidationConfig:T}=Gk();t.useEffect((()=>{_||A(O())}),[]),t.useEffect((()=>{const e=d?.find((e=>"required"in e)),t=d?.find((e=>"max"in e)),n=d?.find((e=>"length"in e));w(a,IT().of(gw()).test("is-empty-array",e?.errorMessage||im.COMMON.REQUIRED_OPTION,(t=>!t||!e?.required||t.length>0)),d),1!==t?.max&&1!==n?.length||E(!1)}),[d]),_s((()=>{const e=[...l.map((e=>e.value)),c?.label],t=p?.filter((t=>e.includes(t)));S(a,t)}),[l]),t.useEffect((()=>{p?.includes(C())?N(!0):N(),y(p||[])}),[p]);const M=e=>g.includes(e),O=()=>`${a}-textarea`,C=()=>"string"==typeof c?.label?c?.label:c?.label?.mainLabel,N=(e=!1)=>{v(e),e||T(O())},D=e=>{let t=[...g];if(t.includes(e))return t=t.filter((t=>t!==e)),void o({target:{value:t}});b?t.push(e):t=[e],o({target:{value:t}})};return e.jsxs(e.Fragment,{children:[e.jsxs(x.Form.CustomField,{label:i,errorMessage:r?.message,...m,children:[e.jsxs(Y$,{"data-testid":exports.TestHelper.generateId(a,"chips"),$showTextarea:_,children:[l.map(((e,n)=>t.createElement(jT,{...f,key:n,onClick:()=>D(e.value),isActive:M(e.value),disabled:s??e.disabled},e.label))),(()=>{if(!c?.label)return;const t=C();return e.jsx(jT,{...f,onClick:()=>{D(t)},isActive:M(t),children:t})})()]}),(()=>{if(!c?.label)return e.jsx(e.Fragment,{});const t=O(),n={uiType:"textarea",className:f.className?`${f.className}-textarea`:void 0,...c};return _?e.jsx(j$,{id:t,schema:n,Field:G$}):e.jsx(e.Fragment,{})})()]}),e.jsx(wI,{id:a,message:h})]})},ContactField:n=>{const{isDirty:r,formattedLabel:i,error:a,id:o,name:s,onChange:u,schema:{defaultCountry:l,disabled:c,enableSearch:d,label:f,placeholder:p,validation:h,...m},value:g,warning:y,..._}=n,{resetField:v}=we(),[b,E]=t.useState(g||""),S=qk(l),[A,w]=t.useState(l),[T]=t.useState((()=>{const e=new Map;return W$.forEach((t=>{const[n,...r]=t,i=r.find((e=>/^\d+$/.test(e)));e.set(n,i)})),e})()),[M,O]=t.useState(),[C,N]=t.useState(),[D,L]=t.useState(void 0),{setFieldValidationConfig:I}=Gk();t.useEffect((()=>{const e=h?.find((e=>"contactNumber"in e)),t=e?.contactNumber?.singaporeNumber,n=e?.contactNumber?.internationalNumber,r=e?.errorMessage;T.has(n)?(w(n),L(!0)):["default","house","mobile"].includes(t)?(w("Singapore"),L(!0)):L(!1),N(t),I(o,gw().test("singaporeNumber",r||im.CONTACT.INVALID_SINGAPORE_NUMBER,(e=>!e||!t||JF.isSingaporeNumber(e,t))).test("internationalNumber",r||im.CONTACT.INVALID_INTERNATIONAL_NUMBER,(e=>!(e&&!t&&n)||JF.isInternationalNumber(M?.name,e))),h)}),[h,M]),t.useEffect((()=>{const e=A||"Singapore";O({name:e,prefix:T.get(e)})}),[A,T]),t.useEffect((()=>{const e=h?.find((e=>"contactNumber"in e)),t=e?.contactNumber?.singaporeNumber,n=e?.contactNumber?.internationalNumber;!l||S===l||T.has(n)||["default","house","mobile"].includes(t)||w(l)}),[h,l]),t.useEffect((()=>{if(void 0!==D&&!r){const{prefix:e,number:t}=JF.getParsedPhoneNumber(g||""),n=e.replace(/\+/g,""),r=(e=>{for(const[t,,,n]of W$)if(t===e)return n})(A||"Singapore");if(!D||D&&n===r){const n=k({countryCode:e||r,number:t});v(o,{defaultValue:n,keepDirty:!0})}else{const e=k({countryCode:"",number:""});v(o,{defaultValue:e,keepDirty:!0})}}}),[g,r,D,A]);const k=e=>{const{countryCode:t,number:n}=e,r=t.replace(/\+/g,"");if(!1===D&&r!==M?.prefix){const e=((e,t)=>{for(const[n,r]of t.entries())if(r===e)return n})(r,T);e&&O({name:e,prefix:t})}return E(n),JF.formatPhoneNumber(e.countryCode,e.number)||""};return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.PhoneNumberInput,{...m,..._,"data-testid":exports.TestHelper.generateId(o,"contact"),disabled:c,enableSearch:d,errorMessage:a?.message,fixedCountry:D,id:o,label:i,name:s,placeholder:(()=>{if(p)return p;if(C){return`Enter ${"mobile"===C?"mobile":"home"} number`}return"Enter contact number"})(),value:(()=>{if(!M)return;const{prefix:e}=M;return{number:b,countryCode:e}})(),onChange:e=>{const t=k(e);u({target:{value:t}})}}),e.jsx(wI,{id:o,message:y})]})},DateField:n=>{const{error:r,formattedLabel:i,id:a,isDirty:o,onChange:s,schema:{label:u,useCurrentDate:l,dateFormat:c=XF,validation:d,...f},value:p,warning:h,...m}=n,{setValue:g}=we(),[y,_]=t.useState(p||""),[v,b]=t.useState(),{setFieldValidationConfig:E}=Gk();t.useEffect((()=>{const e=d?.find((e=>"dateFormat"in e&&e.dateFormat)),t=d?.find((e=>"future"in e)),n=d?.find((e=>"past"in e)),r=d?.find((e=>"notFuture"in e)),i=d?.find((e=>"notPast"in e)),o=d?.find((e=>"minDate"in e)),s=d?.find((e=>"maxDate"in e)),u=d?.find((e=>"excludedDates"in e)),l=d?.find((e=>"withinDays"in e)),f=d?.find((e=>"beyondDays"in e)),p=am.toLocalDateOrTime(o?.minDate,c,"date"),h=am.toLocalDateOrTime(s?.maxDate,c,"date");E(a,gw().test("is-date",e?.errorMessage||im.DATE.INVALID,(e=>!e||""===e||!!w(e)&&!!am.toLocalDateOrTime(e,c,"date"))).test("future",t?.errorMessage||im.DATE.MUST_BE_FUTURE,(e=>{if(!w(e)||!t?.future)return!0;const n=am.toLocalDateOrTime(e,c,"date");return!!n?.isAfter(_f.now())})).test("past",n?.errorMessage||im.DATE.MUST_BE_PAST,(e=>{if(!w(e)||!n?.past)return!0;const t=am.toLocalDateOrTime(e,c,"date");return!!t?.isBefore(_f.now())})).test("not-future",r?.errorMessage||im.DATE.CANNOT_BE_FUTURE,(e=>{if(!w(e)||!r?.notFuture)return!0;const t=am.toLocalDateOrTime(e,c,"date");return!t?.isAfter(_f.now())})).test("not-past",i?.errorMessage||im.DATE.CANNOT_BE_PAST,(e=>{if(!w(e)||!i?.notPast)return!0;const t=am.toLocalDateOrTime(e,c,"date");return!t?.isBefore(_f.now())})).test("min-date",o?.errorMessage||im.DATE.MIN_DATE(am.formatDateTime(o?.minDate,"dd/MM/uuuu","date")),(e=>{if(!w(e)||!p)return!0;const t=am.toLocalDateOrTime(e,c,"date");return!t?.isBefore(p)})).test("max-date",s?.errorMessage||im.DATE.MAX_DATE(am.formatDateTime(s?.maxDate,"dd/MM/uuuu","date")),(e=>{if(!w(e)||!h)return!0;const t=am.toLocalDateOrTime(e,c,"date");return!t?.isAfter(h)})).test("excluded-dates",u?.errorMessage||im.DATE.DISABLED_DATES,(e=>!w(e)||!u||!u.excludedDates.includes(e))).test("within-days",l?.errorMessage||l?.withinDays&&im.DATE.WITHIN_DAYS(l?.withinDays),(e=>!w(e)||!l||am.checkWithinDays(e,{...l.withinDays,dateFormat:c}))).test("beyond-days",f?.errorMessage||f?.beyondDays&&im.DATE.BEYOND_DAYS(f?.beyondDays),(e=>!w(e)||!f||am.checkBeyondDays(e,{...f.beyondDays,dateFormat:c}))),d);const m=l?.withinDays&&am.calculateDisabledWithinDaysRange({...l.withinDays,dateFormat:c}),g=f?.beyondDays&&am.calculateDisabledBeyondDaysRange({...f.beyondDays,dateFormat:c}),y=A([p,t?.future&&_f.now().plusDays(1),i?.notPast&&_f.now(),m?.startDate,g?.startDate]),_=S([h,n?.past&&_f.now().minusDays(1),r?.notFuture&&_f.now(),m?.endDate,g?.endDate]),v=[...u?.excludedDates||[]];(y||_||v)&&b((e=>({...e,minDate:y?.format(QF),maxDate:_?.format(QF),disabledDates:v})))}),[d]),t.useEffect((()=>{if(c)if(p)if(w(p)){const e=am.toLocalDateOrTime(p,c,"date");_(am.formatDateTime(e?.toString(),XF,"date",im.DATE.INVALID))}else _(im.DATE.INVALID);else if(!o)if(l){const e=am.formatDateTime(_f.now().toString(),c,"date");g(a,e);const t=am.formatDateTime(_f.now().toString(),XF,"date");_(t)}else _(void 0)}),[l,p,c,o]);const S=e=>e.filter((e=>e)).sort(((e,t)=>e.isAfter(t)?1:-1))?.[0],A=e=>e.filter((e=>e)).sort(((e,t)=>e.isBefore(t)?1:-1))?.[0],w=e=>e&&e!==im.DATE.INVALID;return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.DateInput,{...f,...m,...v,id:a,"data-testid":exports.TestHelper.generateId(a,"date"),label:i,errorMessage:r?.message,onChange:e=>{s({target:{value:am.formatDateTime(e,c,"date",im.DATE.INVALID)}})},value:y}),e.jsx(wI,{id:a,message:h})]})},DateRangeField:n=>{const{error:r,formattedLabel:i,id:a,isDirty:o,onChange:s,schema:{dateFormat:u=tz,label:l,validation:c,variant:d,...f},value:p={from:void 0,to:void 0},warning:h,...m}=n,[g,y]=t.useState(p.from||""),[_,v]=t.useState(p.to||""),[b,E]=t.useState(),{setFieldValidationConfig:S}=Gk();t.useEffect((()=>{const e=c?.find((e=>"dateFormat"in e&&e.dateFormat)),t=c?.find((e=>"future"in e)),n=c?.find((e=>"past"in e)),r=c?.find((e=>"notFuture"in e)),i=c?.find((e=>"notPast"in e)),o=c?.find((e=>"minDate"in e)),s=c?.find((e=>"maxDate"in e)),l=c?.find((e=>"required"in e)),f=c?.find((e=>"excludedDates"in e)),p=c?.find((e=>"numberOfDays"in e)),h=am.toLocalDateOrTime(o?.minDate,u,"date"),m=am.toLocalDateOrTime(s?.maxDate,u,"date");S(a,DT().shape({from:gw(),to:gw()}).test("is-empty-string",l?.errorMessage||im.DATE_RANGE.REQUIRED,(e=>!e||!l||e.from?.length>0&&e.to?.length>0)).test("is-date",e?.errorMessage||im.DATE_RANGE.INVALID,(e=>!(!mI.exports.isEmpty(e?.from)&&!mI.exports.isEmpty(e?.to))||T(e.from)&&T(e.to)&&!!am.toLocalDateOrTime(e.from,u,"date")&&!!am.toLocalDateOrTime(e.to,u,"date"))).test("number-of-days",p?.errorMessage||im.DATE_RANGE.MUST_HAVE_NUMBER_OF_DAYS(p?.numberOfDays),(e=>{if("week"===d)return!0;if(!T(e.from)||!T(e.to)||!p?.numberOfDays)return!0;const t=am.toLocalDateOrTime(e.from,u,"date");return am.toLocalDateOrTime(e.to,u,"date").equals(t.plusDays(p?.numberOfDays-1))})).test("future",t?.errorMessage||im.DATE_RANGE.MUST_BE_FUTURE,(e=>{if("week"===d)return!0;if(!T(e.from)||!T(e.to)||!t?.future)return!0;const n=am.toLocalDateOrTime(e.from,u,"date"),r=am.toLocalDateOrTime(e.to,u,"date");return!!n?.isAfter(_f.now())&&!!r?.isAfter(_f.now())})).test("past",n?.errorMessage||im.DATE_RANGE.MUST_BE_PAST,(e=>{if("week"===d)return!0;if(!T(e.from)||!T(e.to)||!n?.past)return!0;const t=am.toLocalDateOrTime(e.from,u,"date"),r=am.toLocalDateOrTime(e.to,u,"date");return!!t?.isBefore(_f.now())&&!!r?.isBefore(_f.now())})).test("not-future",r?.errorMessage||im.DATE_RANGE.CANNOT_BE_FUTURE,(e=>{if("week"===d)return!0;if(!T(e.from)||!T(e.to)||!r?.notFuture)return!0;const t=am.toLocalDateOrTime(e.from,u,"date"),n=am.toLocalDateOrTime(e.to,u,"date");return!t?.isAfter(_f.now())&&!n?.isAfter(_f.now())})).test("not-past",i?.errorMessage||im.DATE_RANGE.CANNOT_BE_PAST,(e=>{if("week"===d)return!0;if(!T(e.from)||!T(e.to)||!i?.notPast)return!0;const t=am.toLocalDateOrTime(e.from,u,"date"),n=am.toLocalDateOrTime(e.to,u,"date");return!t?.isBefore(_f.now())&&!n?.isBefore(_f.now())})).test("min-date",o?.errorMessage||im.DATE_RANGE.MIN_DATE(am.formatDateTime(o?.minDate,"dd/MM/uuuu","date")),(e=>{if("week"===d)return!0;if(!T(e.from)||!T(e.to)||!h)return!0;const t=am.toLocalDateOrTime(e.from,u,"date"),n=am.toLocalDateOrTime(e.to,u,"date");return!t?.isBefore(h)&&!n?.isBefore(h)})).test("max-date",s?.errorMessage||im.DATE_RANGE.MAX_DATE(am.formatDateTime(s?.maxDate,"dd/MM/uuuu","date")),(e=>{if("week"===d)return!0;if(!T(e.from)||!T(e.to)||!m)return!0;const t=am.toLocalDateOrTime(e.from,u,"date"),n=am.toLocalDateOrTime(e.to,u,"date");return!t?.isAfter(m)&&!n?.isAfter(m)})).test("excluded-dates",f?.errorMessage||im.DATE_RANGE.DISABLED_DATES,(e=>{if("week"===d)return!0;if(!T(e.from)||!T(e.to)||!f)return!0;const t=am.toLocalDateOrTime(e.from,u,"date"),n=am.toLocalDateOrTime(e.to,u,"date");try{const e=f.excludedDates.map((e=>am.toLocalDateOrTime(e,u,"date")));for(const r of e)if(t.isEqual(r)||n.isEqual(r))return!1;return!0}catch{return!1}})),c);const g=w([h,t?.future&&_f.now().plusDays(1),i?.notPast&&_f.now()]),y=A([m,n?.past&&_f.now().minusDays(1),r?.notFuture&&_f.now()]),_=f?.excludedDates,v=p?.numberOfDays;(g||y||_||v)&&E((e=>({...e,minDate:g?.format(nz),maxDate:y?.format(nz),disabledDates:_,numberOfDays:v})))}),[c]),t.useEffect((()=>{M(ez.START)}),[p.from,u,o]),t.useEffect((()=>{M(ez.END)}),[p.to,u,o]);const A=e=>e.filter((e=>e)).sort(((e,t)=>e.isAfter(t)?1:-1))?.[0],w=e=>e.filter((e=>e)).sort(((e,t)=>e.isBefore(t)?1:-1))?.[0],T=e=>e&&e!==im.DATE_RANGE.INVALID,M=e=>{const t=e===ez.START?p.from:p.to,n=e===ez.START?y:v;if(u)if(t)if(T(t)){const e=am.toLocalDateOrTime(t,u,"date");n(am.formatDateTime(e?.toString(),tz,"date",im.DATE_RANGE.INVALID))}else n(im.DATE_RANGE.INVALID);else o||n(void 0)};return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.DateRangeInput,{...f,...m,...b,id:a,"data-testid":exports.TestHelper.generateId(a,"date"),label:i,errorMessage:r?.message,onChange:(e,t)=>{s({target:{value:{from:am.formatDateTime(e,u,"date",im.DATE_RANGE.INVALID),to:am.formatDateTime(t,u,"date",im.DATE_RANGE.INVALID)}}})},value:g,valueEnd:_,variant:d}),e.jsx(wI,{id:a,message:h})]})},get TDateRangeInputType(){return ez},ESignatureField:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,uiType:u,upload:l,validation:c,...d},value:f,warning:p}=n,[h,m]=t.useState(null),[g,y]=t.useState(0),[_,v]=t.useState(0),[b,E]=t.useState(null),{setFieldValidationConfig:S}=Gk(),A=t.useRef(null),{clearErrors:w}=we();t.useEffect((()=>{const e=c?.find((e=>"upload"in e&&e.upload));A.current=e,S(a,DT().shape({fileId:gw().required(),dataURL:gw(),fileUrl:gw(),uploadResponse:sw().nullable()}).default(void 0),c)}),[c]),t.useEffect((()=>{if(v(0),M(f)){if(f.dataURL)m(f.dataURL);else if(f.fileUrl){const e=C(f.fileId,f.fileUrl);return()=>e.abort()}}else m(null)}),[f]);const T=async e=>{const t=om();if(m(e),v(0),aE(l))o({target:{value:{fileId:t,dataURL:e}}});else try{const n=await O(t,e);o({target:{value:{fileId:t,..."base64"===l.type&&{dataURL:e},fileUrl:n?.data?.fileUrl,uploadResponse:n}}}),w(a),y(0)}catch(e){y((e=>e+1)),E(null)}},M=e=>!!e,O=async(e,t)=>{E(0);const n=new FormData;if(n.append("fileId",e),l.sessionId&&n.append("sessionId",l.sessionId),"base64"===l.type)n.append("dataURL",t);else if("multipart"===l.type){const r=await exports.FileHelper.dataUrlToBlob(t),i=exports.FileHelper.blobToFile(r,{name:e,lastModified:Date.now()});n.append("file",i,e)}const r=await new cc("",void 0,void 0,!0).post(l.url,n,{headers:{"Content-Type":"base64"===l.type?"application/json":"multipart/form-data",...l.headers},onUploadProgress:e=>{const{loaded:t,total:n}=e;E(t/n)}});return E(null),r},C=(e,t)=>{const n=new AbortController;return(async()=>{try{const r=await new cc("",void 0,void 0,!1,{responseType:"blob"}).get(t,{signal:n.signal}),i=await exports.FileHelper.getType(new File([r],e)),a=new File([r],e,{type:i.mime}),o=await exports.FileHelper.fileToDataUrl(a);m(o),v(0)}catch(e){if(e instanceof Wl)return;v((e=>e+1))}})(),n};return e.jsxs(rz,{children:[e.jsx(x.Form.ESignature,{...d,id:a,label:i,onChange:T,value:h,...null!==b&&{loadingProgress:b}}),(r?.message||g||_)&&null===b?g>0?e.jsxs(iz,{children:[A.current?.errorMessage||im.ESIGNATURE.UPLOAD,e.jsx(az,{type:"button",onClick:()=>T(h),children:"Please try again."}),g>=3&&e.jsx(oz,{type:"warning","data-testid":"upload-refresh-alert",children:"Refresh this page if you cannot upload your signature."})]}):_>0&&M(f)?e.jsxs(iz,{children:["Failed to load.",e.jsx(az,{type:"button",onClick:()=>C(f.fileId,f.fileUrl),children:"Please try again."}),_>=3&&e.jsx(oz,{type:"warning","data-testid":"load-refresh-alert",children:"Refresh this page if your signature failed to load."})]}):e.jsx(iz,{children:r?.message}):null,e.jsx(wI,{id:a,message:p})]})},ErrorField:n=>{const{id:r,schema:{children:i}}=n,{setFieldValidationConfig:a}=Gk();return t.useEffect((()=>{a(r,sw().test((()=>!1)),[])}),[]),i?e.jsx(eU,{children:i}):null},FileUploadInner:Rz,FileUpload:t=>e.jsx(Lz,{children:e.jsx(Rz,{...t})}),get EFileStatus(){return exports.EFileStatus},HiddenField:n=>{const{id:r,name:i,onBlur:a,onChange:o,schema:{showIf:s,uiType:u,validation:l,valueType:c,value:d,...f},value:p}=n,{setFieldValidationConfig:h}=Gk(),{setValue:m}=we();return t.useEffect((()=>{let e;switch(c){case"null":e=sw();break;case"number":e=_w();break;case"boolean":e=lw();break;default:e=gw()}h(r,e,l)}),[l,c]),t.useEffect((()=>{"null"===c&&null!==p?m(r,null):uE(d)||p===d||m(r,d)}),[m,r,c,d,p]),e.jsx("input",{onBlur:a,onChange:o,...f,type:"hidden",id:r,"data-testid":r,name:i,value:d??p??""})},HistogramSlider:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,bins:u,interval:l,validation:c,disabled:d,readOnly:f,className:p,ariaLabels:h,customOptions:m},value:g,warning:y}=n,{resetField:_}=we(),[v,b]=t.useState(void 0),{setFieldValidationConfig:E}=Gk();t.useEffect((()=>{if(g)b([g.from,g.to]);else{const e=Math.min(...u.map((e=>e.minValue))),t=Math.max(...u.map((e=>e.minValue)))+l;_(a,{defaultValue:{from:e,to:t},keepDirty:!0}),b([e,t])}}),[g]),t.useEffect((()=>{const e=c?.find((e=>"required"in e)),t=c?.find((e=>"bin"in e&&e.bin)),n=c?.find((e=>"incremental"in e&&e.incremental)),r=c?.find((e=>"withinRange"in e&&e.withinRange));E(a,DT({from:_w(),to:_w()}).test("is-required",e?.errorMessage||im.COMMON.REQUIRED_OPTIONS,(t=>!t||!e||!uE(t.from)&&!uE(t.to))).test("is-bin",t?.errorMessage||im.SLIDER.MUST_BE_INCREMENTAL,(e=>{if(!e||"number"!=typeof e.from||"number"!=typeof e.to)return!0;const{from:t,to:n}=e,r=Math.min(...u.map((e=>e.minValue)));return Number.isInteger((t-r)/l)&&Number.isInteger((n-r)/l)})).test("is-incremental",n?.errorMessage||im.SLIDER.MUST_BE_INCREMENTAL,(e=>!e||"number"!=typeof e.from||"number"!=typeof e.to||e.from<e.to)).test("is-within-range",r?.errorMessage||im.SLIDER.MUST_BE_INCREMENTAL,(e=>{if(!e||"number"!=typeof e.from||"number"!=typeof e.to)return!0;const{from:t,to:n}=e,r=Math.min(...u.map((e=>e.minValue))),i=Math.max(...u.map((e=>e.minValue)))+l;return!(t<r||n>i)})),c)}),[c,u,l]);return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.HistogramSlider,{...m,id:a,"data-testid":exports.TestHelper.generateId(a,"histogram-slider"),label:i,errorMessage:r?.message,onChangeEnd:e=>{const[t,n]=e;o({target:{value:{from:t,to:n}}})},value:v,bins:u,interval:l,disabled:d,readOnly:f,className:p,ariaLabels:h}),e.jsx(wI,{id:a,message:y})]})},ImageUploadInner:OZ,ImageUpload:t=>e.jsx(zz,{children:e.jsx(OZ,{...t})}),ACCEPTED_FILE_TYPES:jz,get EImageStatus(){return exports.EImageStatus},LocationField:n=>{const{error:r,formattedLabel:i,id:a,schema:{className:s="location",convertLatLngToXYEndpoint:u,disabled:l,gettingCurrentLocationFetchMessage:c,interactiveMapPinIconUrl:d,label:f,locationInputPlaceholder:p,locationListTitle:h,locationModalStyles:m,mapBannerText:g,mapPanZoom:y,mustHavePostalCode:_,readOnly:v,reverseGeoCodeEndpoint:b,staticMapPinColor:E,validation:S,hasExplicitEdit:A,locationSelectionMode:x="default",disableSearch:w,addressFieldPlaceholder:T,searchBarIcon:M,bufferRadius:O,pinsOnlyIndicateCurrentLocation:C},value:N,warning:D}=n,[L,I]=t.useState(!1),{setValue:k}=we(),{setFieldValidationConfig:$}=Gk(),{dispatchFieldEvent:R,addFieldEventListener:F,removeFieldEventListener:z}=WI();t.useEffect((()=>(F("show-location-modal",a,Z),()=>{z("show-location-modal",a,Z)})),[]),t.useEffect((()=>{const e=S?.find((e=>"required"in e)),t=S?.find((e=>"postalCode"in e));$(a,DT({address:gw(),blockNo:gw(),building:gw(),lat:_w(),lng:_w(),postalCode:gw(),roadName:gw(),x:_w(),y:_w()}).test("is-required",e?.errorMessage||im.COMMON.FIELD_REQUIRED,(t=>!e?.required||!!t&&!!t.lat&&!!t.lng)).test("must-have-postal-code",t?.errorMessage||im.LOCATION.MUST_HAVE_POSTAL_CODE,(t=>!e||!_||exports.LocationHelper.hasGotAddressValue(t.postalCode))),S)}),[S]);const P=(e,t=!0)=>{k(a,e,{shouldDirty:t})},j=()=>{v||l||(I(!0),R("show-location-modal",a))},Z=()=>{I(!0)};return e.jsxs("div",{id:a,"data-testid":exports.TestHelper.generateId(a),className:s,children:[e.jsx(RZ,{id:a,label:i,className:s,locationInputPlaceholder:p,onChange:e=>e.currentTarget.blur(),onFocus:j,value:N?.address||"",errorMessage:r?.message,disabled:"explicit"===A&&N?.address||l,readOnly:v}),A&&N?.address&&e.jsx(o.Button.Default,{id:exports.TestHelper.generateId(a,"edit-button"),"data-testid":exports.TestHelper.generateId(a,"edit-button"),styleType:"secondary",onClick:()=>{!R("click-edit-button",a)||I(!0)},type:"button",children:"Edit"}),!!N?.lat&&!!N?.lng&&e.jsx(xI,{id:a,className:`${s}-static-map`,lat:N.lat,lng:N.lng,staticMapPinColor:E,onClick:j,disabled:l}),e.jsx(t.Suspense,{fallback:null,children:FZ&&e.jsx(FZ,{id:a,className:s,showLocationModal:L,onClose:()=>{I(!1),R("hide-location-modal",a)},formValues:N,onConfirm:P,updateFormValues:P,mapPanZoom:y,reverseGeoCodeEndpoint:b,convertLatLngToXYEndpoint:u,interactiveMapPinIconUrl:d,gettingCurrentLocationFetchMessage:c,mustHavePostalCode:_,locationModalStyles:m,locationListTitle:h,mapBannerText:g,locationSelectionMode:x,disableSearch:w,addressFieldPlaceholder:T,searchBarIcon:M,bufferRadius:O,pinsOnlyIndicateCurrentLocation:C})}),e.jsx(wI,{id:a,message:D})]})},GeolocationPositionErrorWrapper:zZ,MaskedField:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,value:s,schema:{label:u,uiType:l,validation:c,maskRegex:d,iconMask:f,iconUnmask:p,...h},warning:m,...g}=n,[y,_]=t.useState(s||""),[v,b]=t.useState({}),{setFieldValidationConfig:E}=Gk();t.useEffect((()=>{E(a,gw(),c);const e=c?.find((e=>"max"in e)),t=c?.find((e=>"length"in e)),n={...v};e?.max>0?n.maxLength=e.max:t?.length>0&&(n.maxLength=t.length),b(n)}),[c]),t.useEffect((()=>{s!==y&&_(s||"")}),[s]);const S=t=>{if(!t)return;const n=G[t];return e.jsx(n,{"data-testid":t})};return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.MaskedInput,{...h,...g,...v,id:a,"data-testid":exports.TestHelper.generateId(a,l),label:i,onChange:e=>{o(e)},value:y,errorMessage:r?.message,maskRegex:(()=>{if(d)try{const e=d.match(/\/(.*)\/([a-z]+)?/);return new RegExp(e[1],e[2])}catch(e){console.warn(`invalid regex pattern: ${d}`)}})(),iconMask:S(f),iconUnmask:S(p)}),e.jsx(wI,{id:a,message:m})]})},MultiSelect:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,options:u=[],validation:l,...c},value:d,warning:f,...p}=n,{setValue:h}=we(),[m,g]=t.useState(d||[]),{setFieldValidationConfig:y}=Gk();t.useEffect((()=>{const e=l?.find((e=>"required"in e));y(a,IT().of(gw()).test("is-empty-array",e?.errorMessage||im.COMMON.REQUIRED_OPTION,(t=>!t||!e?.required||t.length>0)),l)}),[l]),vs((()=>{const e=d?.filter((e=>u.find((t=>t.value===e))));h(a,e)}),[u]),t.useEffect((()=>{g(d||[])}),[d]);return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.MultiSelect,{...c,...p,id:a,"data-testid":exports.TestHelper.generateId(a),label:i,options:u,onSelectOptions:e=>{const t=e.map((e=>e.value));o({target:{value:t}})},selectedOptions:u.filter((e=>m.includes(e.value))),valueExtractor:e=>e.value,listExtractor:e=>e.label,errorMessage:r?.message}),e.jsx(wI,{id:a,message:f})]})},NestedMultiSelect:n=>{const{schema:{label:r,validation:i,options:a=[],...o},id:s,value:u,formattedLabel:l,onChange:c,onBlur:d,error:f,warning:p,...h}=n,{setValue:m}=we(),{setFieldValidationConfig:g}=Gk(),[y,_]=t.useState(u),[v,b]=t.useState([]),E=t.useCallback((e=>{const t=[],n=(e,r)=>{for(const i in e){const a=[...r,i],o=e[i];"string"==typeof o?t.push(a):n(o,a)}};return n(e,[]),t}),[]);t.useEffect((()=>{const e=i?.find((e=>"required"in e));g(s,DT().test("is-required",e?.errorMessage||im.COMMON.REQUIRED_OPTION,(t=>!e?.required||!!t&&!!Object.keys(t).length)),i)}),[i]),vs((()=>{const e=(t,n)=>{const r={};for(const i of t){const{key:t,subItems:a}=i,o=n[t];if(o){const n="string"==typeof o?o:e(a||[],o);Object.keys(n).length?r[t]=n:delete r[t]}}return r},t=u?e(a,u):u;m(s,t)}),[a]),t.useEffect((()=>{_(u);const e=E(u);b(e)}),[E,y,u]);return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.NestedMultiSelect,{...o,...h,id:s,"data-testid":exports.TestHelper.generateId(s),label:l,options:a,onSelectOptions:(e,t)=>{const n=((e,t)=>{const n={};return e.forEach(((e,r)=>{e.reduce(((n,i,a)=>(a===e.length-1?n[i]=t[r]:n[i]||(n[i]={}),n[i])),n)})),n})(e,t);c({target:{value:n}})},selectedKeyPaths:v,errorMessage:f?.message,onBlur:d}),e.jsx(wI,{id:s,message:p})]})},RadioButtonGroup:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{className:s,customOptions:u,disabled:l,label:c,options:d,validation:f,...p},value:h,warning:m}=n,{setValue:g}=we(),[y,_]=t.useState(h||""),{setFieldValidationConfig:v}=Gk();t.useEffect((()=>{v(a,gw(),f)}),[f]),_s((()=>{d.find((e=>e.value===h))||g(a,"")}),[d]),t.useEffect((()=>{_(h||"")}),[h]);const b=e=>{o({target:{value:e}})},E=e=>y===e,S=()=>{const e=om();return`${a}-${e}`},A=t=>"string"==typeof t?e.jsx(hI,{inline:!0,children:t}):e.jsx(eU,{children:t});return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.CustomField,{id:a,label:i,errorMessage:r?.message,children:(()=>{switch(u?.styleType){case"toggle":return d.length>0&&"toggle"===u.styleType&&e.jsx(VZ,{className:s?`${s} ${s}-radio-container`:void 0,$layoutType:u?.layoutType??"horizontal",children:d.map(((n,i)=>{const o=S();return t.createElement(HZ,{...p,key:i,type:"radio",id:o,className:s?`${s}-radio`:void 0,"data-testid":exports.TestHelper.generateId(a,"radio"),disabled:l??n.disabled,name:o,indicator:u?.indicator,styleType:!1===u?.border?"no-border":"default",checked:E(n.value),onChange:()=>b(n.value),error:!!r?.message,compositeSection:n.children?{children:e.jsx(eU,{children:n.children}),collapsible:!1}:null,subLabel:!!n.subLabel&&A(n.subLabel)},A(n.label))}))});case"image-button":return d.length>0&&e.jsx(BZ,{className:s?`${s} ${s}-radio-container`:void 0,children:d.map(((e,n)=>{const i=S();return t.createElement(ZZ,{...p,type:"button",key:n,id:i,className:s?`${s}-radio`:void 0,"data-testid":exports.TestHelper.generateId(a,"radio"),disabled:l??e.disabled,name:i,selected:E(e.value),onClick:()=>b(e.value),imgSrc:e.imgSrc,error:!!r?.message},e.label)}))});default:return d.length>0&&d.map(((t,n)=>{const r=S();return e.jsxs(UZ,{className:s?`${s}-radio-container`:void 0,children:[e.jsx(jZ,{...p,className:s,id:r,"data-testid":exports.TestHelper.generateId(a,"radio"),disabled:l??t.disabled,name:r,value:t.value,checked:E(t.value),onChange:()=>b(t.value)}),e.jsx(PZ,{as:"label",htmlFor:r,disabled:l??t.disabled,children:A(t.label)})]},n)}))}})()}),e.jsx(wI,{id:a,message:m})]})},RangeSelect:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,options:u,validation:l,...c},value:d={from:void 0,to:void 0},warning:f,...p}=n,{setValue:h}=we(),[m,g]=t.useState(d.from||""),[y,_]=t.useState(d.to||""),{setFieldValidationConfig:v}=Gk();t.useEffect((()=>{const e=l?.find((e=>"required"in e));v(a,DT().shape({from:gw(),to:gw()}).test("is-empty-string",e?.errorMessage||im.COMMON.REQUIRED_OPTIONS,(t=>!t||!e?.required||t.from?.length>0&&t.to?.length>0)),l)}),[l]),_s((()=>{const e={};u.from.find((e=>e.value===d.from))||(e.from=""),u.to.find((e=>e.value===d.to))||(e.to=""),h(a,{...d,...e})}),[u]),t.useEffect((()=>{_(d.from),g(d.to)}),[d]);return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.RangeSelect,{...c,...p,id:a,onHideOptions:()=>{d.from&&d.to||o({target:{value:{from:void 0,to:void 0}}})},"data-testid":exports.TestHelper.generateId(a),label:i,options:u,onSelectOption:e=>{void 0===e.from&&void 0===e.to&&o({target:{value:{from:void 0,to:void 0}}}),e.from&&o({target:{value:{from:e.from.value,to:void 0}}}),e.to&&o({target:{value:{to:e.to.value,from:y}}})},selectedOptions:{from:u.from.find((({value:e})=>e===y)),to:u.to.find((({value:e})=>e===m))},valueToStringFunction:e=>`${e.from} - ${e.to}`,valueExtractor:e=>({from:e.value,to:e.value}),displayValueExtractor:e=>e.label,listExtractor:e=>e.label,errorMessage:r?.message}),e.jsx(wI,{id:a,message:f})]})},ResetButton:t=>{const{id:n,schema:{disabled:r,ignoreDefaultValues:i,label:a,...s},...u}=t,{reset:l,getValues:c}=we(),{resetFields:d}=Hk(),{formSchema:{defaultValues:f}}=Vk();return e.jsx(o.Button.Default,{...s,...u,disabled:r,"data-testid":n,id:n,type:"reset",onClick:()=>{if(i){const e=c();Object.entries(e).forEach((([t,n])=>{Gr(n)?e[t]=[]:m$(n)||FI(n)?e[t]="":Fr(n)&&(e[t]={})})),l(e),d(e)}else l(),d(f)},children:a})},Select:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,options:u,validation:l,...c},value:d,warning:f,...p}=n,{setValue:h}=we(),[m,g]=t.useState(d||""),{setFieldValidationConfig:y}=Gk();t.useEffect((()=>{y(a,gw(),l)}),[l]),_s((()=>{u.find((e=>e.value===d))||h(a,"")}),[u]),t.useEffect((()=>{g(d||"")}),[d]);return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.Select,{...c,...p,id:a,"data-testid":exports.TestHelper.generateId(a,"select"),label:i,errorMessage:r?.message,options:u,onSelectOption:(e,t)=>{o({target:{value:t}})},selectedOption:u.find((({value:e})=>e===m)),displayValueExtractor:e=>e.label,valueExtractor:e=>e.value,listExtractor:e=>e.label}),e.jsx(wI,{id:a,message:f})]})},SelectHistogram:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,validation:u,disabled:l,readOnly:c,className:d,histogramSlider:f,customOptions:p},value:h,warning:m,...g}=n,{bins:y,interval:_,...v}=f,{resetField:b}=we(),[E,S]=t.useState([0,0]),{setFieldValidationConfig:A}=Gk();t.useEffect((()=>{if(h)S([h.from,h.to]);else{const e=Math.min(...y.map((e=>e.minValue))),t=Math.max(...y.map((e=>e.minValue)))+_;b(a,{defaultValue:{from:e,to:t},keepDirty:!0}),S([e,t])}}),[h]),t.useEffect((()=>{const e=u?.find((e=>"required"in e)),t=u?.find((e=>"bin"in e&&e.bin)),n=u?.find((e=>"incremental"in e&&e.incremental)),r=u?.find((e=>"withinRange"in e&&e.withinRange));A(a,DT({from:_w(),to:_w()}).test("is-required",e?.errorMessage||im.COMMON.REQUIRED_OPTIONS,(t=>!t||!e||!uE(t.from)&&!uE(t.to))).test("is-bin",t?.errorMessage||im.SLIDER.MUST_BE_INCREMENTAL,(e=>{if(!e||"number"!=typeof e.from||"number"!=typeof e.to)return!0;const{from:t,to:n}=e,r=Math.min(...y.map((e=>e.minValue)));return Number.isInteger((t-r)/_)&&Number.isInteger((n-r)/_)})).test("is-incremental",n?.errorMessage||im.SLIDER.MUST_BE_INCREMENTAL,(e=>!e||"number"!=typeof e.from||"number"!=typeof e.to||e.from<e.to)).test("is-within-range",r?.errorMessage||im.SLIDER.MUST_BE_INCREMENTAL,(e=>{if(!e||"number"!=typeof e.from||"number"!=typeof e.to)return!0;const{from:t,to:n}=e,r=Math.min(...y.map((e=>e.minValue))),i=Math.max(...y.map((e=>e.minValue)))+_;return!(t<r||n>i)})),u)}),[u,y,_]);return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.SelectHistogram,{...g,id:a,"data-testid":exports.TestHelper.generateId(a,"select-histogram"),label:i,errorMessage:r?.message,onChangeEnd:e=>{const[t,n]=e;o({target:{value:{from:t,to:n}}})},disabled:l,readOnly:c,className:d,rangeLabelPrefix:p?.rangeLabelPrefix,rangeLabelSuffix:p?.rangeLabelSuffix,value:E,histogramSlider:{bins:y,interval:_,...v}}),e.jsx(wI,{id:a,message:m})]})},Slider:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,customOptions:u,validation:l,disabled:c,readOnly:d,className:f,ariaLabel:p},value:h,warning:m}=n,[g,y]=t.useState(),{setFieldValidationConfig:_}=Gk();t.useEffect((()=>{const e=l?.find((e=>"min"in e)),t=l?.find((e=>"max"in e)),n=l?.find((e=>"increment"in e));_(a,_w().test("is-incremental",n?.errorMessage||im.SLIDER.MUST_BE_INCREMENTAL,(t=>{if("number"!=typeof t||!n)return!0;const r=n.increment,i=(e?.min??0)-t;return Number.isInteger(i/r)})),l),(e||t||n)&&y({min:e?.min,max:t?.max,step:n?.increment})}),[l]);return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.Slider,{...u,...g,id:a,"data-testid":exports.TestHelper.generateId(a,"slider"),label:i,errorMessage:r?.message,onChangeEnd:e=>{o({target:{value:e}})},value:h,disabled:c,readOnly:d,className:f,ariaLabel:p}),e.jsx(wI,{id:a,message:m})]})},SubmitButton:n=>{const{id:r,schema:{disabled:i,label:a,...s},...u}=n,{submitHandler:l,wrapInForm:c}=Yk(),{setFieldValidationConfig:d}=Gk(),{hardValidationSchema:f}=Kk(),p=Re({disabled:"invalid-form"!==i}),[h,m]=t.useState(!0===i);t.useEffect((()=>{d(r,sw())}),[]),t.useEffect((()=>{"invalid-form"!==i&&m(!!i)}),[i]),_s((()=>{(async()=>{if("invalid-form"===i)try{await f.validate(p),m(!1)}catch(e){m(!0)}})()}),[p,f]);return e.jsx(o.Button.Default,{...s,...u,disabled:h,"data-testid":r,id:r,onClick:e=>{c||(e.preventDefault(),l?.())},type:"submit",children:a})},Switch:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{className:s,customOptions:u,disabled:l,label:c,validation:d,...f},value:p,warning:h}=n,[m,g]=t.useState(p||void 0),{setFieldValidationConfig:y}=Gk();t.useEffect((()=>{y(a,lw().strict(),d)}),[d]),t.useEffect((()=>{g(p)}),[p]);const _=e=>{o({target:{value:e}})},v=e=>m===e,b=e=>`${a}-${e}`;return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.CustomField,{id:a,label:i,errorMessage:r?.message,children:e.jsxs(GZ,{className:s,role:"radiogroup","aria-label":"string"==typeof c?c:pI(c.mainLabel,{allowedTags:[]}),children:[e.jsx(w.Toggle,{...f,type:"yes",id:b("yes"),"data-testid":exports.TestHelper.generateId(a,"switch-yes"),disabled:l,styleType:!1===u?.border?"no-border":"default",checked:v(!0),onChange:()=>_(!0),indicator:!0,name:a,error:!!r?.message,children:"Yes"}),e.jsx(w.Toggle,{...f,type:"no",id:b("no"),"data-testid":exports.TestHelper.generateId(a,"switch-no"),disabled:l,styleType:!1===u?.border?"no-border":"default",checked:v(!1),onChange:()=>_(!1),indicator:!0,name:a,error:!!r?.message,children:"No"})]})}),e.jsx(wI,{id:a,message:h})]})},TextField:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,value:s,schema:u,warning:l,...c}=n,{customOptions:d,inputMode:f,label:p,uiType:h,validation:m,...g}=u,[y,_]=t.useState(s||""),[v,b]=t.useState({}),{setFieldValidationConfig:E}=Gk(),S=t.useRef(null),A=t.useRef(0);t.useEffect((()=>{switch(h){case"numeric-field":{E(a,_w(),m);const e=m?.find((e=>"min"in e)),t=m?.find((e=>"max"in e)),n={...v};e?.min>0&&(n.min=e.min),t?.max>0&&(n.max=t.max),b(n);break}case"email-field":{const e=m?.find((e=>e.email));E(a,gw().email(e?.errorMessage||im.EMAIL.INVALID),m);const t=m?.find((e=>"max"in e)),n=m?.find((e=>"length"in e)),r={...v};t?.max>0?r.maxLength=t.max:n?.length>0&&(r.maxLength=n.length),b(r);break}case"text-field":{E(a,gw(),m);const e=m?.find((e=>"max"in e)),t=m?.find((e=>"length"in e)),n={...v};e?.max>0?n.maxLength=e.max:t?.length>0&&(n.maxLength=t.length),b(n);break}}}),[m]),t.useEffect((()=>{s!==y&&_(s||"")}),[s]),t.useEffect((()=>{"text-field"===h&&document?.activeElement===S.current&&S.current.selectionEnd!==A.current&&S.current.setSelectionRange(A.current,A.current)}),[y]),t.useEffect((()=>{"text-field"===u.uiType&&"uppercase"===u.customOptions?.textTransform&&y&&_((e=>e?.toString().toUpperCase()))}),["text-field"===u.uiType&&u.customOptions?.textTransform]);const w=()=>!!d?.addOn,T=w()?x.Form.InputGroup:x.Form.Input;return e.jsxs(e.Fragment,{children:[e.jsx(T,{...g,...c,...v,id:a,"data-testid":exports.TestHelper.generateId(a,h),ref:S,type:(()=>{switch(h){case"numeric-field":return"number";case"email-field":return"email";default:return"text"}})(),label:i,onPaste:e=>d?.preventCopyAndPaste?e.preventDefault():null,onDrop:e=>d?.preventDragAndDrop?e.preventDefault():null,inputMode:(()=>{if(f)return f;switch(h){case"numeric-field":return"numeric";case"email-field":return"email";case"text-field":return"text";default:return"none"}})(),onChange:e=>{if("numeric-field"===h){const t=!isNaN(parseFloat(e.target.value))?+e.target.value:void 0;return o({target:{value:t}}),void _(t)}"text-field"===u.uiType?(A.current=e.target.selectionEnd,"uppercase"===u.customOptions?.textTransform&&(e.target.value=e.target.value.toUpperCase()),o(e)):o(e),_(e.target.value)},value:y,errorMessage:r?.message,addon:(()=>{if(w()){if("label"===d.addOn.type)return{type:"label",position:d.addOn.position,attributes:{value:d.addOn.value}};if("icon"===d.addOn.type){const{icon:t,position:n,color:r}=d.addOn,i=G[t];return{type:"custom",position:n,attributes:{children:e.jsx(YZ,{as:i,$color:r})}}}}})()}),e.jsx(wI,{id:a,message:l})]})},Textarea:G$,TimeField:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{is24HourFormat:s,label:u,placeholder:l,useCurrentTime:c,validation:d,...f},value:p,warning:h,...m}=n,[g,y]=t.useState(p||""),{setFieldValidationConfig:_}=Gk();t.useEffect((()=>{_(a,gw(),d)}),[d]),t.useEffect((()=>{if(c&&!p){const e=s?"H:mm":"h:mma";setTimeout((()=>v(e)))}else y(p)}),[p,c,s]);const v=e=>{const t=am.formatDateTime(Ef.now().toString().toUpperCase(),e,"time");y(t),o({target:{value:t}})};return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.Timepicker,{...f,...m,id:a,"data-testid":exports.TestHelper.generateId(a,"time"),label:i,errorMessage:r?.message,value:g,placeholder:l,format:s?"24hr":"12hr",onChange:e=>{o({target:{value:e}})}}),e.jsx(wI,{id:a,message:h})]})},get EFieldType(){return exports.EFieldType},UnitNumberField:n=>{const{formattedLabel:r,error:i,id:a,onChange:o,schema:{label:s,validation:u,...l},value:c,warning:d,...f}=n,[p,h]=t.useState(c||""),{setFieldValidationConfig:m}=Gk();t.useEffect((()=>{const e=u?.find((e=>"unitNumberFormat"in e));m(a,gw().matches(/^([a-zA-Z0-9]{1,3}-[a-zA-Z0-9]{1,5})$/,{excludeEmptyString:!0,message:e?.errorMessage||im.UNIT_NUMBER.INVALID}),u)}),[u]),t.useEffect((()=>{h(c||"")}),[c]);return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.UnitNumberInput,{...l,...f,id:a,"data-testid":exports.TestHelper.generateId(a,"unit-number"),label:r,value:p,onChange:e=>{o({target:{value:e}})},errorMessage:i?.message}),e.jsx(wI,{id:a,message:d})]})}});const KZ=({id:t,children:n,childSchema:r})=>{if("columns"in r){const{desktop:i,tablet:a,mobile:o,...s}=r.columns||{};return e.jsx(d.Layout.ColDiv,{"data-testid":exports.TestHelper.generateId(t,"grid_item"),desktopCols:i??12,tabletCols:a,mobileCols:o,...s,children:n})}return e.jsx(e.Fragment,{children:n})},JZ=({id:n,renderRules:r,children:i,schema:a})=>{const{formValidationConfig:o,removeFieldValidationConfig:s}=Gk(),[u,l]=t.useState(void 0),{formValues:c}=Hk(),{unregister:d}=we();vs((()=>{if(aE(r))return;const e=f();if(e!==u){if(!e){[n,...p(a)].forEach((e=>{s(e),d(e)}))}l(e)}}),[o,c,r]);const f=()=>{if(aE(r))return!0;let e=!1;return r.forEach((t=>{if(!e){const n={};Object.entries(t).forEach((([e,t])=>{if(t.find((e=>e.shown))&&!o?.[e])return void(n[e]={schema:sw().test("shown",(()=>!1)),validationRules:[]});const r=o?.[e]?.schema.type;if(r){let i=OI.mapSchemaType(r);"number"===r&&(i=i.nullable().transform(((e,t)=>!isNaN(parseFloat(t?.toString()))?+t:void 0))),n[e]={schema:i,validationRules:t}}}));const r=OI.buildSchema(n);try{r.validateSync(c),e=!0}catch(e){}}})),e},p=e=>{const t=e.children,r=[];switch(e.uiType){case"chips":r.push(n+"-textarea");break;case"checkbox":case"radio":e.options.forEach((e=>{const t=e.children;!aE(t)&&ln(t)&&Object.entries(t).forEach((([e,t])=>{r.push(e),t.children&&r.push(...p(t.children))}))}))}return aE(t)||!ln(t)||Object.entries(t).forEach((([e,t])=>{r.push(e),t.children&&r.push(...p(t.children))})),r};return aE(r)||u?e.jsx(e.Fragment,{children:i}):null},XZ=Object.keys(exports.EFieldType),QZ=Object.keys(exports.EElementType),eU=n=>{const{id:r,schema:i,children:a}=n,{showIf:o,uiType:s,children:u,...l}=i||{},{warnings:c}=Kk(),[d,f]=t.useState(null),{control:p}=we(),{getCustomComponent:h}=GI(),{formSchema:{overrides:m},overrideSchema:g}=Vk();YI((()=>{const n=g(u||a,m);if("object"==typeof n){const r=[];Object.keys(n).forEach((i=>{const a=n[i];if(aE(a)||"object"!=typeof a)return;let o=e.jsx(t.Fragment,{children:im.GENERIC.UNSUPPORTED},i);if("referenceKey"in a){const n=a.referenceKey.toUpperCase();o=h(a.referenceKey)||S$[E$[n]]?y(i,a)(_):S$[b$[n]]?y(i,a)(v):e.jsx(t.Fragment,{},i)}else"uiType"in a&&(XZ.includes(a.uiType.toUpperCase())?o=y(i,a)(_):QZ.includes(a.uiType.toUpperCase())&&(o=y(i,a)(v)));r.push(o)})),f(r)}else f("string"==typeof n?n:im.GENERIC.UNSUPPORTED)}),[u||a,m,p,c,h]);const y=(t,n)=>r=>e.jsx(JZ,{id:t,...n&&"showIf"in n&&{renderRules:n.showIf},schema:n,children:r(t,n)},t),_=(t,n)=>{let r;return"uiType"in n?r=qZ[exports.EFieldType[n.uiType?.toUpperCase()]]:"referenceKey"in n&&(r=S$[E$[n.referenceKey?.toUpperCase()]]||h(n.referenceKey)),r?e.jsx(KZ,{id:t,childSchema:n,children:e.jsx(j$,{id:t,schema:n,Field:r,warning:c?.[t]})}):null},v=(t,n)=>{let r;return"uiType"in n?r=r$[exports.EElementType[n.uiType?.toUpperCase()]]||eU:"referenceKey"in n&&(r=S$[b$[n.referenceKey?.toUpperCase()]]),e.jsx(KZ,{id:t,childSchema:n,children:e.jsx(r,{schema:n,id:t})})},b=s;return b?e.jsx(b,{...l,id:r,"data-testid":exports.TestHelper.generateId(r,s),children:d}):e.jsx(e.Fragment,{children:d})},tU=H.default(d.Layout.Container)`
|
|
1050
|
+
`;var WZ;exports.EFieldType=void 0,(WZ=exports.EFieldType||(exports.EFieldType={})).BUTTON="ButtonField",WZ.CHECKBOX="CheckboxGroup",WZ.CHIPS="Chips",WZ["CONTACT-FIELD"]="ContactField",WZ["DATE-FIELD"]="DateField",WZ["DATE-RANGE-FIELD"]="DateRangeField",WZ["EMAIL-FIELD"]="TextField",WZ["E-SIGNATURE-FIELD"]="ESignatureField",WZ["ERROR-FIELD"]="ErrorField",WZ["FILE-UPLOAD"]="FileUpload",WZ["HIDDEN-FIELD"]="HiddenField",WZ["HISTOGRAM-SLIDER"]="HistogramSlider",WZ["IMAGE-UPLOAD"]="ImageUpload",WZ["LOCATION-FIELD"]="LocationField",WZ["MASKED-FIELD"]="MaskedField",WZ["MULTI-SELECT"]="MultiSelect",WZ["NESTED-MULTI-SELECT"]="NestedMultiSelect",WZ["RANGE-SELECT"]="RangeSelect",WZ["NUMERIC-FIELD"]="TextField",WZ.RADIO="RadioButtonGroup",WZ.RESET="ResetButton",WZ.SELECT="Select",WZ["SELECT-HISTOGRAM"]="SelectHistogram",WZ.SLIDER="Slider",WZ.SUBMIT="SubmitButton",WZ.SWITCH="Switch",WZ.TEXTAREA="Textarea",WZ["TEXT-FIELD"]="TextField",WZ["TIME-FIELD"]="TimeField",WZ["UNIT-NUMBER-FIELD"]="UnitNumberField";var qZ=Object.freeze({__proto__:null,ButtonField:t=>{const{schema:{label:n,uiType:r,startIcon:i,endIcon:a,href:o,target:s,...u},id:l,...c}=t,{dispatchFieldEvent:d}=WI(),f=t=>{if(!t)return null;const n=G[t];return e.jsx(n,{})};return e.jsxs(A$,{type:"button",...u,...c,onClick:e=>{d("click",l,e),o&&(e=>{try{return!!new URL(e)}catch{return!1}})(o)&&(s?window.open(o,s,"noopener noreferrer"):window.location.href=o)},children:[f(i),n,f(a)]})},CheckboxGroup:n=>{const{formattedLabel:r,error:i,id:a,onChange:o,schema:{className:s,customOptions:u,disabled:l,label:c,options:d,validation:f,...p},value:h,warning:m}=n,{setValue:g}=we(),[y,_]=t.useState(h||[]),{setFieldValidationConfig:v}=Gk();t.useEffect((()=>{const e=f?.find((e=>"required"in e));v(a,IT().of(gw()).test("is-empty-array",e?.errorMessage||im.COMMON.REQUIRED_OPTION,(t=>!t||!e?.required||t.length>0)),f)}),[f]),_s((()=>{const e=h?.filter((e=>d.find((t=>t.value===e))));g(a,e)}),[d]),t.useEffect((()=>{_(h||[])}),[h]);const b=(e,t)=>{const n=d.find((e=>!0===e.none));let r=[...y];t?r=r.includes(e)?[]:[e]:r.includes(e)?r=k$(r,e,n?.value):(r.push(e),r=k$(r,n?.value)),o({target:{value:r}})},E=e=>y.includes(e),S=()=>{const e=om();return`${a}-${e}`},A=t=>"string"==typeof t?e.jsx(hI,{inline:!0,children:t}):e.jsx(eU,{children:t});return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.CustomField,{id:a,label:r,errorMessage:i?.message,children:"toggle"===u?.styleType?d.length>0&&"toggle"===u.styleType&&e.jsx(z$,{$layoutType:u?.layoutType??"horizontal",className:s?`${s}-checkbox-container`:void 0,children:d.map(((t,n)=>{const r=S();return e.jsx(P$,{type:"checkbox","data-testid":exports.TestHelper.generateId(a,"toggle"),id:r,className:s,disabled:l??t.disabled,name:r,indicator:u?.indicator,styleType:!1===u?.border?"no-border":"default",checked:E(t.value),onChange:()=>b(t.value,t.none),error:!!i?.message,compositeSection:t.children?{children:e.jsx(eU,{children:t.children}),collapsible:!1}:null,subLabel:!!t.subLabel&&A(t.subLabel),children:A(t.label)},n)}))}):d.length>0&&d.map(((t,n)=>{const r=S();return e.jsxs(F$,{className:s?`${s}-checkbox-container`:void 0,children:[e.jsx(R$,{...p,"data-testid":exports.TestHelper.generateId(a,"checkbox"),id:r,className:s,disabled:l??t.disabled,name:r,value:t.value,checked:E(t.value),onChange:()=>b(t.value)}),e.jsx($$,{as:"label",htmlFor:r,disabled:l??t.disabled,children:A(t.label)})]},n)}))}),e.jsx(wI,{id:a,message:m})]})},Chips:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{disabled:s,label:u,options:l,textarea:c,validation:d,...f},value:p,warning:h,...m}=n,[g,y]=t.useState(p||[]),[_,v]=t.useState(!1),[b,E]=t.useState(!0),{setValue:S,unregister:A}=we(),{setFieldValidationConfig:w,removeFieldValidationConfig:T}=Gk();t.useEffect((()=>{_||A(O())}),[]),t.useEffect((()=>{const e=d?.find((e=>"required"in e)),t=d?.find((e=>"max"in e)),n=d?.find((e=>"length"in e));w(a,IT().of(gw()).test("is-empty-array",e?.errorMessage||im.COMMON.REQUIRED_OPTION,(t=>!t||!e?.required||t.length>0)),d),1!==t?.max&&1!==n?.length||E(!1)}),[d]),_s((()=>{const e=[...l.map((e=>e.value)),c?.label],t=p?.filter((t=>e.includes(t)));S(a,t)}),[l]),t.useEffect((()=>{p?.includes(C())?N(!0):N(),y(p||[])}),[p]);const M=e=>g.includes(e),O=()=>`${a}-textarea`,C=()=>"string"==typeof c?.label?c?.label:c?.label?.mainLabel,N=(e=!1)=>{v(e),e||T(O())},D=e=>{let t=[...g];if(t.includes(e))return t=t.filter((t=>t!==e)),void o({target:{value:t}});b?t.push(e):t=[e],o({target:{value:t}})};return e.jsxs(e.Fragment,{children:[e.jsxs(x.Form.CustomField,{label:i,errorMessage:r?.message,...m,children:[e.jsxs(Y$,{"data-testid":exports.TestHelper.generateId(a,"chips"),$showTextarea:_,children:[l.map(((e,n)=>t.createElement(jT,{...f,key:n,onClick:()=>D(e.value),isActive:M(e.value),disabled:s??e.disabled},e.label))),(()=>{if(!c?.label)return;const t=C();return e.jsx(jT,{...f,onClick:()=>{D(t)},isActive:M(t),children:t})})()]}),(()=>{if(!c?.label)return e.jsx(e.Fragment,{});const t=O(),n={uiType:"textarea",className:f.className?`${f.className}-textarea`:void 0,...c};return _?e.jsx(j$,{id:t,schema:n,Field:G$}):e.jsx(e.Fragment,{})})()]}),e.jsx(wI,{id:a,message:h})]})},ContactField:n=>{const{isDirty:r,formattedLabel:i,error:a,id:o,name:s,onChange:u,schema:{defaultCountry:l,disabled:c,enableSearch:d,label:f,placeholder:p,validation:h,...m},value:g,warning:y,..._}=n,{resetField:v}=we(),[b,E]=t.useState(g||""),S=qk(l),[A,w]=t.useState(l),[T]=t.useState((()=>{const e=new Map;return W$.forEach((t=>{const[n,...r]=t,i=r.find((e=>/^\d+$/.test(e)));e.set(n,i)})),e})()),[M,O]=t.useState(),[C,N]=t.useState(),[D,L]=t.useState(void 0),{setFieldValidationConfig:I}=Gk();t.useEffect((()=>{const e=h?.find((e=>"contactNumber"in e)),t=e?.contactNumber?.singaporeNumber,n=e?.contactNumber?.internationalNumber,r=e?.errorMessage;T.has(n)?(w(n),L(!0)):["default","house","mobile"].includes(t)?(w("Singapore"),L(!0)):L(!1),N(t),I(o,gw().test("singaporeNumber",r||im.CONTACT.INVALID_SINGAPORE_NUMBER,(e=>!e||!t||JF.isSingaporeNumber(e,t))).test("internationalNumber",r||im.CONTACT.INVALID_INTERNATIONAL_NUMBER,(e=>!(e&&!t&&n)||JF.isInternationalNumber(M?.name,e))),h)}),[h,M]),t.useEffect((()=>{const e=A||"Singapore";O({name:e,prefix:T.get(e)})}),[A,T]),t.useEffect((()=>{const e=h?.find((e=>"contactNumber"in e)),t=e?.contactNumber?.singaporeNumber,n=e?.contactNumber?.internationalNumber;!l||S===l||T.has(n)||["default","house","mobile"].includes(t)||w(l)}),[h,l]),t.useEffect((()=>{if(void 0!==D&&!r){const{prefix:e,number:t}=JF.getParsedPhoneNumber(g||""),n=e.replace(/\+/g,""),r=(e=>{for(const[t,,,n]of W$)if(t===e)return n})(A||"Singapore");if(!D||D&&n===r){const n=k({countryCode:e||r,number:t});v(o,{defaultValue:n,keepDirty:!0})}else{const e=k({countryCode:"",number:""});v(o,{defaultValue:e,keepDirty:!0})}}}),[g,r,D,A]);const k=e=>{const{countryCode:t,number:n}=e,r=t.replace(/\+/g,"");if(!1===D&&r!==M?.prefix){const e=((e,t)=>{for(const[n,r]of t.entries())if(r===e)return n})(r,T);e&&O({name:e,prefix:t})}return E(n),JF.formatPhoneNumber(e.countryCode,e.number)||""};return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.PhoneNumberInput,{...m,..._,"data-testid":exports.TestHelper.generateId(o,"contact"),disabled:c,enableSearch:d,errorMessage:a?.message,fixedCountry:D,id:o,label:i,name:s,placeholder:(()=>{if(p)return p;if(C){return`Enter ${"mobile"===C?"mobile":"home"} number`}return"Enter contact number"})(),value:(()=>{if(!M)return;const{prefix:e}=M;return{number:b,countryCode:e}})(),onChange:e=>{const t=k(e);u({target:{value:t}})}}),e.jsx(wI,{id:o,message:y})]})},DateField:n=>{const{error:r,formattedLabel:i,id:a,isDirty:o,onChange:s,schema:{label:u,useCurrentDate:l,dateFormat:c=XF,validation:d,...f},value:p,warning:h,...m}=n,{setValue:g}=we(),[y,_]=t.useState(p||""),[v,b]=t.useState(),{setFieldValidationConfig:E}=Gk();t.useEffect((()=>{const e=d?.find((e=>"dateFormat"in e&&e.dateFormat)),t=d?.find((e=>"future"in e)),n=d?.find((e=>"past"in e)),r=d?.find((e=>"notFuture"in e)),i=d?.find((e=>"notPast"in e)),o=d?.find((e=>"minDate"in e)),s=d?.find((e=>"maxDate"in e)),u=d?.find((e=>"excludedDates"in e)),l=d?.find((e=>"withinDays"in e)),f=d?.find((e=>"beyondDays"in e)),p=am.toLocalDateOrTime(o?.minDate,c,"date"),h=am.toLocalDateOrTime(s?.maxDate,c,"date");E(a,gw().test("is-date",e?.errorMessage||im.DATE.INVALID,(e=>!e||""===e||!!w(e)&&!!am.toLocalDateOrTime(e,c,"date"))).test("future",t?.errorMessage||im.DATE.MUST_BE_FUTURE,(e=>{if(!w(e)||!t?.future)return!0;const n=am.toLocalDateOrTime(e,c,"date");return!!n?.isAfter(_f.now())})).test("past",n?.errorMessage||im.DATE.MUST_BE_PAST,(e=>{if(!w(e)||!n?.past)return!0;const t=am.toLocalDateOrTime(e,c,"date");return!!t?.isBefore(_f.now())})).test("not-future",r?.errorMessage||im.DATE.CANNOT_BE_FUTURE,(e=>{if(!w(e)||!r?.notFuture)return!0;const t=am.toLocalDateOrTime(e,c,"date");return!t?.isAfter(_f.now())})).test("not-past",i?.errorMessage||im.DATE.CANNOT_BE_PAST,(e=>{if(!w(e)||!i?.notPast)return!0;const t=am.toLocalDateOrTime(e,c,"date");return!t?.isBefore(_f.now())})).test("min-date",o?.errorMessage||im.DATE.MIN_DATE(am.formatDateTime(o?.minDate,"dd/MM/uuuu","date")),(e=>{if(!w(e)||!p)return!0;const t=am.toLocalDateOrTime(e,c,"date");return!t?.isBefore(p)})).test("max-date",s?.errorMessage||im.DATE.MAX_DATE(am.formatDateTime(s?.maxDate,"dd/MM/uuuu","date")),(e=>{if(!w(e)||!h)return!0;const t=am.toLocalDateOrTime(e,c,"date");return!t?.isAfter(h)})).test("excluded-dates",u?.errorMessage||im.DATE.DISABLED_DATES,(e=>!w(e)||!u||!u.excludedDates.includes(e))).test("within-days",l?.errorMessage||l?.withinDays&&im.DATE.WITHIN_DAYS(l?.withinDays),(e=>!w(e)||!l||am.checkWithinDays(e,{...l.withinDays,dateFormat:c}))).test("beyond-days",f?.errorMessage||f?.beyondDays&&im.DATE.BEYOND_DAYS(f?.beyondDays),(e=>!w(e)||!f||am.checkBeyondDays(e,{...f.beyondDays,dateFormat:c}))),d);const m=l?.withinDays&&am.calculateDisabledWithinDaysRange({...l.withinDays,dateFormat:c}),g=f?.beyondDays&&am.calculateDisabledBeyondDaysRange({...f.beyondDays,dateFormat:c}),y=A([p,t?.future&&_f.now().plusDays(1),i?.notPast&&_f.now(),m?.startDate,g?.startDate]),_=S([h,n?.past&&_f.now().minusDays(1),r?.notFuture&&_f.now(),m?.endDate,g?.endDate]),v=[...u?.excludedDates||[]];(y||_||v)&&b((e=>({...e,minDate:y?.format(QF),maxDate:_?.format(QF),disabledDates:v})))}),[d]),t.useEffect((()=>{if(c)if(p)if(w(p)){const e=am.toLocalDateOrTime(p,c,"date");_(am.formatDateTime(e?.toString(),XF,"date",im.DATE.INVALID))}else _(im.DATE.INVALID);else if(!o)if(l){const e=am.formatDateTime(_f.now().toString(),c,"date");g(a,e);const t=am.formatDateTime(_f.now().toString(),XF,"date");_(t)}else _(void 0)}),[l,p,c,o]);const S=e=>e.filter((e=>e)).sort(((e,t)=>e.isAfter(t)?1:-1))?.[0],A=e=>e.filter((e=>e)).sort(((e,t)=>e.isBefore(t)?1:-1))?.[0],w=e=>e&&e!==im.DATE.INVALID;return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.DateInput,{...f,...m,...v,id:a,"data-testid":exports.TestHelper.generateId(a,"date"),label:i,errorMessage:r?.message,onChange:e=>{s({target:{value:am.formatDateTime(e,c,"date",im.DATE.INVALID)}})},value:y}),e.jsx(wI,{id:a,message:h})]})},DateRangeField:n=>{const{error:r,formattedLabel:i,id:a,isDirty:o,onChange:s,schema:{dateFormat:u=tz,label:l,validation:c,variant:d,...f},value:p={from:void 0,to:void 0},warning:h,...m}=n,[g,y]=t.useState(p.from||""),[_,v]=t.useState(p.to||""),[b,E]=t.useState(),{setFieldValidationConfig:S}=Gk();t.useEffect((()=>{const e=c?.find((e=>"dateFormat"in e&&e.dateFormat)),t=c?.find((e=>"future"in e)),n=c?.find((e=>"past"in e)),r=c?.find((e=>"notFuture"in e)),i=c?.find((e=>"notPast"in e)),o=c?.find((e=>"minDate"in e)),s=c?.find((e=>"maxDate"in e)),l=c?.find((e=>"required"in e)),f=c?.find((e=>"excludedDates"in e)),p=c?.find((e=>"numberOfDays"in e)),h=am.toLocalDateOrTime(o?.minDate,u,"date"),m=am.toLocalDateOrTime(s?.maxDate,u,"date");S(a,DT().shape({from:gw(),to:gw()}).test("is-empty-string",l?.errorMessage||im.DATE_RANGE.REQUIRED,(e=>!e||!l||e.from?.length>0&&e.to?.length>0)).test("is-date",e?.errorMessage||im.DATE_RANGE.INVALID,(e=>!(!mI.exports.isEmpty(e?.from)&&!mI.exports.isEmpty(e?.to))||T(e.from)&&T(e.to)&&!!am.toLocalDateOrTime(e.from,u,"date")&&!!am.toLocalDateOrTime(e.to,u,"date"))).test("number-of-days",p?.errorMessage||im.DATE_RANGE.MUST_HAVE_NUMBER_OF_DAYS(p?.numberOfDays),(e=>{if("week"===d)return!0;if(!T(e.from)||!T(e.to)||!p?.numberOfDays)return!0;const t=am.toLocalDateOrTime(e.from,u,"date");return am.toLocalDateOrTime(e.to,u,"date").equals(t.plusDays(p?.numberOfDays-1))})).test("future",t?.errorMessage||im.DATE_RANGE.MUST_BE_FUTURE,(e=>{if("week"===d)return!0;if(!T(e.from)||!T(e.to)||!t?.future)return!0;const n=am.toLocalDateOrTime(e.from,u,"date"),r=am.toLocalDateOrTime(e.to,u,"date");return!!n?.isAfter(_f.now())&&!!r?.isAfter(_f.now())})).test("past",n?.errorMessage||im.DATE_RANGE.MUST_BE_PAST,(e=>{if("week"===d)return!0;if(!T(e.from)||!T(e.to)||!n?.past)return!0;const t=am.toLocalDateOrTime(e.from,u,"date"),r=am.toLocalDateOrTime(e.to,u,"date");return!!t?.isBefore(_f.now())&&!!r?.isBefore(_f.now())})).test("not-future",r?.errorMessage||im.DATE_RANGE.CANNOT_BE_FUTURE,(e=>{if("week"===d)return!0;if(!T(e.from)||!T(e.to)||!r?.notFuture)return!0;const t=am.toLocalDateOrTime(e.from,u,"date"),n=am.toLocalDateOrTime(e.to,u,"date");return!t?.isAfter(_f.now())&&!n?.isAfter(_f.now())})).test("not-past",i?.errorMessage||im.DATE_RANGE.CANNOT_BE_PAST,(e=>{if("week"===d)return!0;if(!T(e.from)||!T(e.to)||!i?.notPast)return!0;const t=am.toLocalDateOrTime(e.from,u,"date"),n=am.toLocalDateOrTime(e.to,u,"date");return!t?.isBefore(_f.now())&&!n?.isBefore(_f.now())})).test("min-date",o?.errorMessage||im.DATE_RANGE.MIN_DATE(am.formatDateTime(o?.minDate,"dd/MM/uuuu","date")),(e=>{if("week"===d)return!0;if(!T(e.from)||!T(e.to)||!h)return!0;const t=am.toLocalDateOrTime(e.from,u,"date"),n=am.toLocalDateOrTime(e.to,u,"date");return!t?.isBefore(h)&&!n?.isBefore(h)})).test("max-date",s?.errorMessage||im.DATE_RANGE.MAX_DATE(am.formatDateTime(s?.maxDate,"dd/MM/uuuu","date")),(e=>{if("week"===d)return!0;if(!T(e.from)||!T(e.to)||!m)return!0;const t=am.toLocalDateOrTime(e.from,u,"date"),n=am.toLocalDateOrTime(e.to,u,"date");return!t?.isAfter(m)&&!n?.isAfter(m)})).test("excluded-dates",f?.errorMessage||im.DATE_RANGE.DISABLED_DATES,(e=>{if("week"===d)return!0;if(!T(e.from)||!T(e.to)||!f)return!0;const t=am.toLocalDateOrTime(e.from,u,"date"),n=am.toLocalDateOrTime(e.to,u,"date");try{const e=f.excludedDates.map((e=>am.toLocalDateOrTime(e,u,"date")));for(const r of e)if(t.isEqual(r)||n.isEqual(r))return!1;return!0}catch{return!1}})),c);const g=w([h,t?.future&&_f.now().plusDays(1),i?.notPast&&_f.now()]),y=A([m,n?.past&&_f.now().minusDays(1),r?.notFuture&&_f.now()]),_=f?.excludedDates,v=p?.numberOfDays;(g||y||_||v)&&E((e=>({...e,minDate:g?.format(nz),maxDate:y?.format(nz),disabledDates:_,numberOfDays:v})))}),[c]),t.useEffect((()=>{M(ez.START)}),[p.from,u,o]),t.useEffect((()=>{M(ez.END)}),[p.to,u,o]);const A=e=>e.filter((e=>e)).sort(((e,t)=>e.isAfter(t)?1:-1))?.[0],w=e=>e.filter((e=>e)).sort(((e,t)=>e.isBefore(t)?1:-1))?.[0],T=e=>e&&e!==im.DATE_RANGE.INVALID,M=e=>{const t=e===ez.START?p.from:p.to,n=e===ez.START?y:v;if(u)if(t)if(T(t)){const e=am.toLocalDateOrTime(t,u,"date");n(am.formatDateTime(e?.toString(),tz,"date",im.DATE_RANGE.INVALID))}else n(im.DATE_RANGE.INVALID);else o||n(void 0)};return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.DateRangeInput,{...f,...m,...b,id:a,"data-testid":exports.TestHelper.generateId(a,"date"),label:i,errorMessage:r?.message,onChange:(e,t)=>{s({target:{value:{from:am.formatDateTime(e,u,"date",im.DATE_RANGE.INVALID),to:am.formatDateTime(t,u,"date",im.DATE_RANGE.INVALID)}}})},value:g,valueEnd:_,variant:d}),e.jsx(wI,{id:a,message:h})]})},get TDateRangeInputType(){return ez},ESignatureField:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,uiType:u,upload:l,validation:c,...d},value:f,warning:p}=n,[h,m]=t.useState(null),[g,y]=t.useState(0),[_,v]=t.useState(0),[b,E]=t.useState(null),{setFieldValidationConfig:S}=Gk(),A=t.useRef(null),{clearErrors:w}=we();t.useEffect((()=>{const e=c?.find((e=>"upload"in e&&e.upload));A.current=e,S(a,DT().shape({fileId:gw().required(),dataURL:gw(),fileUrl:gw(),uploadResponse:sw().nullable()}).default(void 0),c)}),[c]),t.useEffect((()=>{if(v(0),M(f)){if(f.dataURL)m(f.dataURL);else if(f.fileUrl){const e=C(f.fileId,f.fileUrl);return()=>e.abort()}}else m(null)}),[f]);const T=async e=>{const t=om();if(m(e),v(0),aE(l))o({target:{value:{fileId:t,dataURL:e}}});else try{const n=await O(t,e);o({target:{value:{fileId:t,..."base64"===l.type&&{dataURL:e},fileUrl:n?.data?.fileUrl,uploadResponse:n}}}),w(a),y(0)}catch(e){y((e=>e+1)),E(null)}},M=e=>!!e,O=async(e,t)=>{E(0);const n=new FormData;if(n.append("fileId",e),l.sessionId&&n.append("sessionId",l.sessionId),"base64"===l.type)n.append("dataURL",t);else if("multipart"===l.type){const r=await exports.FileHelper.dataUrlToBlob(t),i=exports.FileHelper.blobToFile(r,{name:e,lastModified:Date.now()});n.append("file",i,e)}const r=await new cc("",void 0,void 0,!0).post(l.url,n,{headers:{"Content-Type":"base64"===l.type?"application/json":"multipart/form-data",...l.headers},onUploadProgress:e=>{const{loaded:t,total:n}=e;E(t/n)}});return E(null),r},C=(e,t)=>{const n=new AbortController;return(async()=>{try{const r=await new cc("",void 0,void 0,!1,{responseType:"blob"}).get(t,{signal:n.signal}),i=await exports.FileHelper.getType(new File([r],e)),a=new File([r],e,{type:i.mime}),o=await exports.FileHelper.fileToDataUrl(a);m(o),v(0)}catch(e){if(e instanceof Wl)return;v((e=>e+1))}})(),n};return e.jsxs(rz,{children:[e.jsx(x.Form.ESignature,{...d,id:a,label:i,onChange:T,value:h,...null!==b&&{loadingProgress:b}}),(r?.message||g||_)&&null===b?g>0?e.jsxs(iz,{children:[A.current?.errorMessage||im.ESIGNATURE.UPLOAD,e.jsx(az,{type:"button",onClick:()=>T(h),children:"Please try again."}),g>=3&&e.jsx(oz,{type:"warning","data-testid":"upload-refresh-alert",children:"Refresh this page if you cannot upload your signature."})]}):_>0&&M(f)?e.jsxs(iz,{children:["Failed to load.",e.jsx(az,{type:"button",onClick:()=>C(f.fileId,f.fileUrl),children:"Please try again."}),_>=3&&e.jsx(oz,{type:"warning","data-testid":"load-refresh-alert",children:"Refresh this page if your signature failed to load."})]}):e.jsx(iz,{children:r?.message}):null,e.jsx(wI,{id:a,message:p})]})},ErrorField:n=>{const{id:r,schema:{children:i}}=n,{setFieldValidationConfig:a}=Gk();return t.useEffect((()=>{a(r,sw().test((()=>!1)),[])}),[]),i?e.jsx(eU,{children:i}):null},FileUploadInner:Rz,FileUpload:t=>e.jsx(Lz,{children:e.jsx(Rz,{...t})}),get EFileStatus(){return exports.EFileStatus},HiddenField:n=>{const{id:r,name:i,onBlur:a,onChange:o,schema:{showIf:s,uiType:u,validation:l,valueType:c,value:d,...f},value:p}=n,{setFieldValidationConfig:h}=Gk(),{setValue:m}=we();return t.useEffect((()=>{let e;switch(c){case"null":e=sw();break;case"number":e=_w();break;case"boolean":e=lw();break;default:e=gw()}h(r,e,l)}),[l,c]),t.useEffect((()=>{"null"===c&&null!==p?m(r,null):uE(d)||p===d||m(r,d)}),[m,r,c,d,p]),e.jsx("input",{onBlur:a,onChange:o,...f,type:"hidden",id:r,"data-testid":r,name:i,value:d??p??""})},HistogramSlider:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,bins:u,interval:l,validation:c,disabled:d,readOnly:f,className:p,ariaLabels:h,customOptions:m},value:g,warning:y}=n,{resetField:_}=we(),[v,b]=t.useState(void 0),{setFieldValidationConfig:E}=Gk();t.useEffect((()=>{if(g)b([g.from,g.to]);else{const e=Math.min(...u.map((e=>e.minValue))),t=Math.max(...u.map((e=>e.minValue)))+l;_(a,{defaultValue:{from:e,to:t},keepDirty:!0}),b([e,t])}}),[g]),t.useEffect((()=>{const e=c?.find((e=>"required"in e)),t=c?.find((e=>"bin"in e&&e.bin)),n=c?.find((e=>"incremental"in e&&e.incremental)),r=c?.find((e=>"withinRange"in e&&e.withinRange));E(a,DT({from:_w(),to:_w()}).test("is-required",e?.errorMessage||im.COMMON.REQUIRED_OPTIONS,(t=>!t||!e||!uE(t.from)&&!uE(t.to))).test("is-bin",t?.errorMessage||im.SLIDER.MUST_BE_INCREMENTAL,(e=>{if(!e||"number"!=typeof e.from||"number"!=typeof e.to)return!0;const{from:t,to:n}=e,r=Math.min(...u.map((e=>e.minValue)));return Number.isInteger((t-r)/l)&&Number.isInteger((n-r)/l)})).test("is-incremental",n?.errorMessage||im.SLIDER.MUST_BE_INCREMENTAL,(e=>!e||"number"!=typeof e.from||"number"!=typeof e.to||e.from<e.to)).test("is-within-range",r?.errorMessage||im.SLIDER.MUST_BE_INCREMENTAL,(e=>{if(!e||"number"!=typeof e.from||"number"!=typeof e.to)return!0;const{from:t,to:n}=e,r=Math.min(...u.map((e=>e.minValue))),i=Math.max(...u.map((e=>e.minValue)))+l;return!(t<r||n>i)})),c)}),[c,u,l]);return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.HistogramSlider,{...m,id:a,"data-testid":exports.TestHelper.generateId(a,"histogram-slider"),label:i,errorMessage:r?.message,onChangeEnd:e=>{const[t,n]=e;o({target:{value:{from:t,to:n}}})},value:v,bins:u,interval:l,disabled:d,readOnly:f,className:p,ariaLabels:h}),e.jsx(wI,{id:a,message:y})]})},ImageUploadInner:OZ,ImageUpload:t=>e.jsx(zz,{children:e.jsx(OZ,{...t})}),ACCEPTED_FILE_TYPES:jz,get EImageStatus(){return exports.EImageStatus},LocationField:n=>{const{error:r,formattedLabel:i,id:a,schema:{className:s="location",convertLatLngToXYEndpoint:u,disabled:l,gettingCurrentLocationFetchMessage:c,interactiveMapPinIconUrl:d,label:f,locationInputPlaceholder:p,locationListTitle:h,locationModalStyles:m,mapBannerText:g,mapPanZoom:y,mustHavePostalCode:_,readOnly:v,reverseGeoCodeEndpoint:b,staticMapPinColor:E,validation:S,hasExplicitEdit:A,locationSelectionMode:x="default",disableSearch:w,addressFieldPlaceholder:T,searchBarIcon:M,bufferRadius:O,pinsOnlyIndicateCurrentLocation:C},value:N,warning:D}=n,[L,I]=t.useState(!1),{setValue:k}=we(),{setFieldValidationConfig:$}=Gk(),{dispatchFieldEvent:R,addFieldEventListener:F,removeFieldEventListener:z}=WI();t.useEffect((()=>(F("show-location-modal",a,Z),()=>{z("show-location-modal",a,Z)})),[]),t.useEffect((()=>{const e=S?.find((e=>"required"in e)),t=S?.find((e=>"postalCode"in e));$(a,DT({address:gw(),blockNo:gw(),building:gw(),lat:_w(),lng:_w(),postalCode:gw(),roadName:gw(),x:_w(),y:_w()}).test("is-required",e?.errorMessage||im.COMMON.FIELD_REQUIRED,(t=>!e?.required||!!t&&!!t.lat&&!!t.lng)).test("must-have-postal-code",t?.errorMessage||im.LOCATION.MUST_HAVE_POSTAL_CODE,(t=>!e||!_||exports.LocationHelper.hasGotAddressValue(t.postalCode))),S)}),[S]);const P=(e,t=!0)=>{k(a,e,{shouldDirty:t})},j=()=>{v||l||(I(!0),R("show-location-modal",a))},Z=()=>{I(!0)};return e.jsxs("div",{id:a,"data-testid":exports.TestHelper.generateId(a),className:s,children:[e.jsx(RZ,{id:a,label:i,className:s,locationInputPlaceholder:p,onChange:e=>e.currentTarget.blur(),onFocus:j,value:N?.address||"",errorMessage:r?.message,disabled:"explicit"===A&&N?.address||l,readOnly:v}),A&&N?.address&&e.jsx(o.Button.Default,{id:exports.TestHelper.generateId(a,"edit-button"),"data-testid":exports.TestHelper.generateId(a,"edit-button"),styleType:"secondary",onClick:()=>{!R("click-edit-button",a)||I(!0)},type:"button",children:"Edit"}),!!N?.lat&&!!N?.lng&&e.jsx(xI,{id:a,className:`${s}-static-map`,lat:N.lat,lng:N.lng,staticMapPinColor:E,onClick:j,disabled:l}),e.jsx(t.Suspense,{fallback:null,children:FZ&&e.jsx(FZ,{id:a,className:s,showLocationModal:L,onClose:()=>{I(!1),R("hide-location-modal",a)},formValues:N,onConfirm:P,updateFormValues:P,mapPanZoom:y,reverseGeoCodeEndpoint:b,convertLatLngToXYEndpoint:u,interactiveMapPinIconUrl:d,gettingCurrentLocationFetchMessage:c,mustHavePostalCode:_,locationModalStyles:m,locationListTitle:h,mapBannerText:g,locationSelectionMode:x,disableSearch:w,addressFieldPlaceholder:T,searchBarIcon:M,bufferRadius:O,pinsOnlyIndicateCurrentLocation:C})}),e.jsx(wI,{id:a,message:D})]})},GeolocationPositionErrorWrapper:zZ,MaskedField:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,value:s,schema:{label:u,uiType:l,validation:c,maskRegex:d,iconMask:f,iconUnmask:p,...h},warning:m,...g}=n,[y,_]=t.useState(s||""),[v,b]=t.useState({}),{setFieldValidationConfig:E}=Gk();t.useEffect((()=>{E(a,gw(),c);const e=c?.find((e=>"max"in e)),t=c?.find((e=>"length"in e)),n={...v};e?.max>0?n.maxLength=e.max:t?.length>0&&(n.maxLength=t.length),b(n)}),[c]),t.useEffect((()=>{s!==y&&_(s||"")}),[s]);const S=t=>{if(!t)return;const n=G[t];return e.jsx(n,{"data-testid":t})};return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.MaskedInput,{...h,...g,...v,id:a,"data-testid":exports.TestHelper.generateId(a,l),label:i,onChange:e=>{o(e)},value:y,errorMessage:r?.message,maskRegex:(()=>{if(d)try{const e=d.match(/\/(.*)\/([a-z]+)?/);return new RegExp(e[1],e[2])}catch(e){console.warn(`invalid regex pattern: ${d}`)}})(),iconMask:S(f),iconUnmask:S(p)}),e.jsx(wI,{id:a,message:m})]})},MultiSelect:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,options:u=[],validation:l,...c},value:d,warning:f,...p}=n,{setValue:h}=we(),[m,g]=t.useState(d||[]),{setFieldValidationConfig:y}=Gk();t.useEffect((()=>{const e=l?.find((e=>"required"in e));y(a,IT().of(gw()).test("is-empty-array",e?.errorMessage||im.COMMON.REQUIRED_OPTION,(t=>!t||!e?.required||t.length>0)),l)}),[l]),vs((()=>{const e=d?.filter((e=>u.find((t=>t.value===e))));h(a,e)}),[u]),t.useEffect((()=>{g(d||[])}),[d]);return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.MultiSelect,{...c,...p,id:a,"data-testid":exports.TestHelper.generateId(a),label:i,options:u,onSelectOptions:e=>{const t=e.map((e=>e.value));o({target:{value:t}})},selectedOptions:u.filter((e=>m.includes(e.value))),valueExtractor:e=>e.value,listExtractor:e=>e.label,errorMessage:r?.message}),e.jsx(wI,{id:a,message:f})]})},NestedMultiSelect:n=>{const{schema:{label:r,validation:i,options:a=[],...o},id:s,value:u,formattedLabel:l,onChange:c,onBlur:d,error:f,warning:p,...h}=n,{setValue:m}=we(),{setFieldValidationConfig:g}=Gk(),[y,_]=t.useState(u),[v,b]=t.useState([]),E=t.useCallback((e=>{const t=[],n=(e,r)=>{for(const i in e){const a=[...r,i],o=e[i];"string"==typeof o?t.push(a):n(o,a)}};return n(e,[]),t}),[]);t.useEffect((()=>{const e=i?.find((e=>"required"in e));g(s,DT().test("is-required",e?.errorMessage||im.COMMON.REQUIRED_OPTION,(t=>!e?.required||!!t&&!!Object.keys(t).length)),i)}),[i]),vs((()=>{const e=(t,n)=>{const r={};for(const i of t){const{key:t,subItems:a}=i,o=n[t];if(o){const n="string"==typeof o?o:e(a||[],o);Object.keys(n).length?r[t]=n:delete r[t]}}return r},t=u?e(a,u):u;m(s,t)}),[a]),t.useEffect((()=>{_(u);const e=E(u);b(e)}),[E,y,u]);return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.NestedMultiSelect,{...o,...h,id:s,"data-testid":exports.TestHelper.generateId(s),label:l,options:a,onSelectOptions:(e,t)=>{const n=((e,t)=>{const n={};return e.forEach(((e,r)=>{e.reduce(((n,i,a)=>(a===e.length-1?n[i]=t[r]:n[i]||(n[i]={}),n[i])),n)})),n})(e,t);c({target:{value:n}})},selectedKeyPaths:v,errorMessage:f?.message,onBlur:d}),e.jsx(wI,{id:s,message:p})]})},RadioButtonGroup:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{className:s,customOptions:u,disabled:l,label:c,options:d,validation:f,...p},value:h,warning:m}=n,{setValue:g}=we(),[y,_]=t.useState(h||""),{setFieldValidationConfig:v}=Gk();t.useEffect((()=>{v(a,gw(),f)}),[f]),_s((()=>{d.find((e=>e.value===h))||g(a,"")}),[d]),t.useEffect((()=>{_(h||"")}),[h]);const b=e=>{o({target:{value:e}})},E=e=>y===e,S=()=>{const e=om();return`${a}-${e}`},A=t=>"string"==typeof t?e.jsx(hI,{inline:!0,children:t}):e.jsx(eU,{children:t});return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.CustomField,{id:a,label:i,errorMessage:r?.message,children:(()=>{switch(u?.styleType){case"toggle":return d.length>0&&"toggle"===u.styleType&&e.jsx(VZ,{className:s?`${s} ${s}-radio-container`:void 0,$layoutType:u?.layoutType??"horizontal",children:d.map(((n,i)=>{const o=S();return t.createElement(HZ,{...p,key:i,type:"radio",id:o,className:s?`${s}-radio`:void 0,"data-testid":exports.TestHelper.generateId(a,"radio"),disabled:l??n.disabled,name:o,indicator:u?.indicator,styleType:!1===u?.border?"no-border":"default",checked:E(n.value),onChange:()=>b(n.value),error:!!r?.message,compositeSection:n.children?{children:e.jsx(eU,{children:n.children}),collapsible:!1}:null,subLabel:!!n.subLabel&&A(n.subLabel)},A(n.label))}))});case"image-button":return d.length>0&&e.jsx(BZ,{className:s?`${s} ${s}-radio-container`:void 0,children:d.map(((e,n)=>{const i=S();return t.createElement(ZZ,{...p,type:"button",key:n,id:i,className:s?`${s}-radio`:void 0,"data-testid":exports.TestHelper.generateId(a,"radio"),disabled:l??e.disabled,name:i,selected:E(e.value),onClick:()=>b(e.value),imgSrc:e.imgSrc,error:!!r?.message},e.label)}))});default:return d.length>0&&d.map(((t,n)=>{const r=S();return e.jsxs(UZ,{className:s?`${s}-radio-container`:void 0,children:[e.jsx(jZ,{...p,className:s,id:r,"data-testid":exports.TestHelper.generateId(a,"radio"),disabled:l??t.disabled,name:r,value:t.value,checked:E(t.value),onChange:()=>b(t.value)}),e.jsx(PZ,{as:"label",htmlFor:r,disabled:l??t.disabled,children:A(t.label)})]},n)}))}})()}),e.jsx(wI,{id:a,message:m})]})},RangeSelect:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,options:u,validation:l,...c},value:d={from:void 0,to:void 0},warning:f,...p}=n,{setValue:h}=we(),[m,g]=t.useState(d.from||""),[y,_]=t.useState(d.to||""),{setFieldValidationConfig:v}=Gk();t.useEffect((()=>{const e=l?.find((e=>"required"in e));v(a,DT().shape({from:gw(),to:gw()}).test("is-empty-string",e?.errorMessage||im.COMMON.REQUIRED_OPTIONS,(t=>!t||!e?.required||t.from?.length>0&&t.to?.length>0)),l)}),[l]),_s((()=>{const e={};u.from.find((e=>e.value===d.from))||(e.from=""),u.to.find((e=>e.value===d.to))||(e.to=""),h(a,{...d,...e})}),[u]),t.useEffect((()=>{_(d.from),g(d.to)}),[d]);return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.RangeSelect,{...c,...p,id:a,onHideOptions:()=>{d.from&&d.to||o({target:{value:{from:void 0,to:void 0}}})},"data-testid":exports.TestHelper.generateId(a),label:i,options:u,onSelectOption:e=>{void 0===e.from&&void 0===e.to&&o({target:{value:{from:void 0,to:void 0}}}),e.from&&o({target:{value:{from:e.from.value,to:void 0}}}),e.to&&o({target:{value:{to:e.to.value,from:y}}})},selectedOptions:{from:u.from.find((({value:e})=>e===y)),to:u.to.find((({value:e})=>e===m))},valueToStringFunction:e=>`${e.from} - ${e.to}`,valueExtractor:e=>({from:e.value,to:e.value}),displayValueExtractor:e=>e.label,listExtractor:e=>e.label,errorMessage:r?.message}),e.jsx(wI,{id:a,message:f})]})},ResetButton:t=>{const{id:n,schema:{disabled:r,ignoreDefaultValues:i,label:a,...s},...u}=t,{reset:l,getValues:c}=we(),{resetFields:d}=Hk(),{formSchema:{defaultValues:f}}=Vk();return e.jsx(o.Button.Default,{...s,...u,disabled:r,"data-testid":n,id:n,type:"reset",onClick:()=>{if(i){const e=c();Object.entries(e).forEach((([t,n])=>{Gr(n)?e[t]=[]:m$(n)||FI(n)?e[t]="":Fr(n)&&(e[t]={})})),l(e),d(e)}else l(),d(f)},children:a})},Select:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,options:u,validation:l,...c},value:d,warning:f,...p}=n,{setValue:h}=we(),[m,g]=t.useState(d||""),{setFieldValidationConfig:y}=Gk();t.useEffect((()=>{y(a,gw(),l)}),[l]),_s((()=>{u.find((e=>e.value===d))||h(a,"")}),[u]),t.useEffect((()=>{g(d||"")}),[d]);return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.Select,{...c,...p,id:a,"data-testid":exports.TestHelper.generateId(a,"select"),label:i,errorMessage:r?.message,options:u,onSelectOption:(e,t)=>{o({target:{value:t}})},selectedOption:u.find((({value:e})=>e===m)),displayValueExtractor:e=>e.label,valueExtractor:e=>e.value,listExtractor:e=>e.label}),e.jsx(wI,{id:a,message:f})]})},SelectHistogram:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,validation:u,disabled:l,readOnly:c,className:d,histogramSlider:f,customOptions:p},value:h,warning:m,...g}=n,{bins:y,interval:_,...v}=f,{resetField:b}=we(),[E,S]=t.useState([0,0]),{setFieldValidationConfig:A}=Gk();t.useEffect((()=>{if(h)S([h.from,h.to]);else{const e=Math.min(...y.map((e=>e.minValue))),t=Math.max(...y.map((e=>e.minValue)))+_;b(a,{defaultValue:{from:e,to:t},keepDirty:!0}),S([e,t])}}),[h]),t.useEffect((()=>{const e=u?.find((e=>"required"in e)),t=u?.find((e=>"bin"in e&&e.bin)),n=u?.find((e=>"incremental"in e&&e.incremental)),r=u?.find((e=>"withinRange"in e&&e.withinRange));A(a,DT({from:_w(),to:_w()}).test("is-required",e?.errorMessage||im.COMMON.REQUIRED_OPTIONS,(t=>!t||!e||!uE(t.from)&&!uE(t.to))).test("is-bin",t?.errorMessage||im.SLIDER.MUST_BE_INCREMENTAL,(e=>{if(!e||"number"!=typeof e.from||"number"!=typeof e.to)return!0;const{from:t,to:n}=e,r=Math.min(...y.map((e=>e.minValue)));return Number.isInteger((t-r)/_)&&Number.isInteger((n-r)/_)})).test("is-incremental",n?.errorMessage||im.SLIDER.MUST_BE_INCREMENTAL,(e=>!e||"number"!=typeof e.from||"number"!=typeof e.to||e.from<e.to)).test("is-within-range",r?.errorMessage||im.SLIDER.MUST_BE_INCREMENTAL,(e=>{if(!e||"number"!=typeof e.from||"number"!=typeof e.to)return!0;const{from:t,to:n}=e,r=Math.min(...y.map((e=>e.minValue))),i=Math.max(...y.map((e=>e.minValue)))+_;return!(t<r||n>i)})),u)}),[u,y,_]);return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.SelectHistogram,{...g,id:a,"data-testid":exports.TestHelper.generateId(a,"select-histogram"),label:i,errorMessage:r?.message,onChangeEnd:e=>{const[t,n]=e;o({target:{value:{from:t,to:n}}})},disabled:l,readOnly:c,className:d,rangeLabelPrefix:p?.rangeLabelPrefix,rangeLabelSuffix:p?.rangeLabelSuffix,value:E,histogramSlider:{bins:y,interval:_,...v}}),e.jsx(wI,{id:a,message:m})]})},Slider:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{label:s,customOptions:u,validation:l,disabled:c,readOnly:d,className:f,ariaLabel:p},value:h,warning:m}=n,[g,y]=t.useState(),{setFieldValidationConfig:_}=Gk();t.useEffect((()=>{const e=l?.find((e=>"min"in e)),t=l?.find((e=>"max"in e)),n=l?.find((e=>"increment"in e));_(a,_w().test("is-incremental",n?.errorMessage||im.SLIDER.MUST_BE_INCREMENTAL,(t=>{if("number"!=typeof t||!n)return!0;const r=n.increment,i=(e?.min??0)-t;return Number.isInteger(i/r)})),l),(e||t||n)&&y({min:e?.min,max:t?.max,step:n?.increment})}),[l]);return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.Slider,{...u,...g,id:a,"data-testid":exports.TestHelper.generateId(a,"slider"),label:i,errorMessage:r?.message,onChangeEnd:e=>{o({target:{value:e}})},value:h,disabled:c,readOnly:d,className:f,ariaLabel:p}),e.jsx(wI,{id:a,message:m})]})},SubmitButton:n=>{const{id:r,schema:{disabled:i,label:a,...s},...u}=n,{submitHandler:l,wrapInForm:c}=Yk(),{setFieldValidationConfig:d}=Gk(),{hardValidationSchema:f}=Kk(),p=Re({disabled:"invalid-form"!==i}),[h,m]=t.useState(!0===i);t.useEffect((()=>{d(r,sw())}),[]),t.useEffect((()=>{"invalid-form"!==i&&m(!!i)}),[i]),_s((()=>{(async()=>{if("invalid-form"===i)try{await f.validate(p),m(!1)}catch(e){m(!0)}})()}),[p,f]);return e.jsx(o.Button.Default,{...s,...u,disabled:h,"data-testid":r,id:r,onClick:e=>{c||(e.preventDefault(),l?.())},type:"submit",children:a})},Switch:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{className:s,customOptions:u,disabled:l,label:c,validation:d,...f},value:p,warning:h}=n,[m,g]=t.useState(p||void 0),{setFieldValidationConfig:y}=Gk();t.useEffect((()=>{y(a,lw().strict(),d)}),[d]),t.useEffect((()=>{g(p)}),[p]);const _=e=>{o({target:{value:e}})},v=e=>m===e,b=e=>`${a}-${e}`;return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.CustomField,{id:a,label:i,errorMessage:r?.message,children:e.jsxs(GZ,{className:s,role:"radiogroup","aria-label":"string"==typeof c?c:pI(c.mainLabel,{allowedTags:[]}),children:[e.jsx(w.Toggle,{...f,type:"yes",id:b("yes"),"data-testid":exports.TestHelper.generateId(a,"switch-yes"),disabled:l,styleType:!1===u?.border?"no-border":"default",checked:v(!0),onChange:()=>_(!0),indicator:!0,name:a,error:!!r?.message,children:"Yes"}),e.jsx(w.Toggle,{...f,type:"no",id:b("no"),"data-testid":exports.TestHelper.generateId(a,"switch-no"),disabled:l,styleType:!1===u?.border?"no-border":"default",checked:v(!1),onChange:()=>_(!1),indicator:!0,name:a,error:!!r?.message,children:"No"})]})}),e.jsx(wI,{id:a,message:h})]})},TextField:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,value:s,schema:u,warning:l,...c}=n,{customOptions:d,inputMode:f,label:p,uiType:h,validation:m,...g}=u,[y,_]=t.useState(s||""),[v,b]=t.useState({}),{setFieldValidationConfig:E}=Gk(),S=t.useRef(null),A=t.useRef(0);t.useEffect((()=>{switch(h){case"numeric-field":{E(a,_w(),m);const e=m?.find((e=>"min"in e)),t=m?.find((e=>"max"in e)),n={...v};e?.min>0&&(n.min=e.min),t?.max>0&&(n.max=t.max),b(n);break}case"email-field":{const e=m?.find((e=>e.email));E(a,gw().email(e?.errorMessage||im.EMAIL.INVALID),m);const t=m?.find((e=>"max"in e)),n=m?.find((e=>"length"in e)),r={...v};t?.max>0?r.maxLength=t.max:n?.length>0&&(r.maxLength=n.length),b(r);break}case"text-field":{E(a,gw(),m);const e=m?.find((e=>"max"in e)),t=m?.find((e=>"length"in e)),n={...v};e?.max>0?n.maxLength=e.max:t?.length>0&&(n.maxLength=t.length),b(n);break}}}),[m]),t.useEffect((()=>{s!==y&&_(s||"")}),[s]),t.useEffect((()=>{"text-field"===h&&document?.activeElement===S.current&&S.current.selectionEnd!==A.current&&S.current.setSelectionRange(A.current,A.current)}),[y]),t.useEffect((()=>{"text-field"===u.uiType&&"uppercase"===u.customOptions?.textTransform&&y&&_((e=>e?.toString().toUpperCase()))}),["text-field"===u.uiType&&u.customOptions?.textTransform]);const w=()=>!!d?.addOn,T=w()?x.Form.InputGroup:x.Form.Input;return e.jsxs(e.Fragment,{children:[e.jsx(T,{...g,...c,...v,id:a,"data-testid":exports.TestHelper.generateId(a,h),ref:S,type:(()=>{switch(h){case"numeric-field":return"number";case"email-field":return"email";default:return"text"}})(),label:i,onPaste:e=>d?.preventCopyAndPaste?e.preventDefault():null,onDrop:e=>d?.preventDragAndDrop?e.preventDefault():null,inputMode:(()=>{if(f)return f;switch(h){case"numeric-field":return"numeric";case"email-field":return"email";case"text-field":return"text";default:return"none"}})(),onChange:e=>{if("numeric-field"===h){const t=!isNaN(parseFloat(e.target.value))?+e.target.value:void 0;return o({target:{value:t}}),void _(t)}"text-field"===u.uiType?(A.current=e.target.selectionEnd,"uppercase"===u.customOptions?.textTransform&&(e.target.value=e.target.value.toUpperCase()),o(e)):o(e),_(e.target.value)},onKeyDown:e=>{"numeric-field"===h&&"e"===e.key.toLowerCase()&&e.preventDefault()},value:y,errorMessage:r?.message,addon:(()=>{if(w()){if("label"===d.addOn.type)return{type:"label",position:d.addOn.position,attributes:{value:d.addOn.value}};if("icon"===d.addOn.type){const{icon:t,position:n,color:r}=d.addOn,i=G[t];return{type:"custom",position:n,attributes:{children:e.jsx(YZ,{as:i,$color:r})}}}}})()}),e.jsx(wI,{id:a,message:l})]})},Textarea:G$,TimeField:n=>{const{error:r,formattedLabel:i,id:a,onChange:o,schema:{is24HourFormat:s,label:u,placeholder:l,useCurrentTime:c,validation:d,...f},value:p,warning:h,...m}=n,[g,y]=t.useState(p||""),{setFieldValidationConfig:_}=Gk();t.useEffect((()=>{_(a,gw(),d)}),[d]),t.useEffect((()=>{if(c&&!p){const e=s?"H:mm":"h:mma";setTimeout((()=>v(e)))}else y(p)}),[p,c,s]);const v=e=>{const t=am.formatDateTime(Ef.now().toString().toUpperCase(),e,"time");y(t),o({target:{value:t}})};return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.Timepicker,{...f,...m,id:a,"data-testid":exports.TestHelper.generateId(a,"time"),label:i,errorMessage:r?.message,value:g,placeholder:l,format:s?"24hr":"12hr",onChange:e=>{o({target:{value:e}})}}),e.jsx(wI,{id:a,message:h})]})},get EFieldType(){return exports.EFieldType},UnitNumberField:n=>{const{formattedLabel:r,error:i,id:a,onChange:o,schema:{label:s,validation:u,...l},value:c,warning:d,...f}=n,[p,h]=t.useState(c||""),{setFieldValidationConfig:m}=Gk();t.useEffect((()=>{const e=u?.find((e=>"unitNumberFormat"in e));m(a,gw().matches(/^([a-zA-Z0-9]{1,3}-[a-zA-Z0-9]{1,5})$/,{excludeEmptyString:!0,message:e?.errorMessage||im.UNIT_NUMBER.INVALID}),u)}),[u]),t.useEffect((()=>{h(c||"")}),[c]);return e.jsxs(e.Fragment,{children:[e.jsx(x.Form.UnitNumberInput,{...l,...f,id:a,"data-testid":exports.TestHelper.generateId(a,"unit-number"),label:r,value:p,onChange:e=>{o({target:{value:e}})},errorMessage:i?.message}),e.jsx(wI,{id:a,message:d})]})}});const KZ=({id:t,children:n,childSchema:r})=>{if("columns"in r){const{desktop:i,tablet:a,mobile:o,...s}=r.columns||{};return e.jsx(d.Layout.ColDiv,{"data-testid":exports.TestHelper.generateId(t,"grid_item"),desktopCols:i??12,tabletCols:a,mobileCols:o,...s,children:n})}return e.jsx(e.Fragment,{children:n})},JZ=({id:n,renderRules:r,children:i,schema:a})=>{const{formValidationConfig:o,removeFieldValidationConfig:s}=Gk(),[u,l]=t.useState(void 0),{formValues:c}=Hk(),{unregister:d}=we();vs((()=>{if(aE(r))return;const e=f();if(e!==u){if(!e){[n,...p(a)].forEach((e=>{s(e),d(e)}))}l(e)}}),[o,c,r]);const f=()=>{if(aE(r))return!0;let e=!1;return r.forEach((t=>{if(!e){const n={};Object.entries(t).forEach((([e,t])=>{if(t.find((e=>e.shown))&&!o?.[e])return void(n[e]={schema:sw().test("shown",(()=>!1)),validationRules:[]});const r=o?.[e]?.schema.type;if(r){let i=OI.mapSchemaType(r);"number"===r&&(i=i.nullable().transform(((e,t)=>!isNaN(parseFloat(t?.toString()))?+t:void 0))),n[e]={schema:i,validationRules:t}}}));const r=OI.buildSchema(n);try{r.validateSync(c),e=!0}catch(e){}}})),e},p=e=>{const t=e.children,r=[];switch(e.uiType){case"chips":r.push(n+"-textarea");break;case"checkbox":case"radio":e.options.forEach((e=>{const t=e.children;!aE(t)&&ln(t)&&Object.entries(t).forEach((([e,t])=>{r.push(e),t.children&&r.push(...p(t.children))}))}))}return aE(t)||!ln(t)||Object.entries(t).forEach((([e,t])=>{r.push(e),t.children&&r.push(...p(t.children))})),r};return aE(r)||u?e.jsx(e.Fragment,{children:i}):null},XZ=Object.keys(exports.EFieldType),QZ=Object.keys(exports.EElementType),eU=n=>{const{id:r,schema:i,children:a}=n,{showIf:o,uiType:s,children:u,...l}=i||{},{warnings:c}=Kk(),[d,f]=t.useState(null),{control:p}=we(),{getCustomComponent:h}=GI(),{formSchema:{overrides:m},overrideSchema:g}=Vk();YI((()=>{const n=g(u||a,m);if("object"==typeof n){const r=[];Object.keys(n).forEach((i=>{const a=n[i];if(aE(a)||"object"!=typeof a)return;let o=e.jsx(t.Fragment,{children:im.GENERIC.UNSUPPORTED},i);if("referenceKey"in a){const n=a.referenceKey.toUpperCase();o=h(a.referenceKey)||S$[E$[n]]?y(i,a)(_):S$[b$[n]]?y(i,a)(v):e.jsx(t.Fragment,{},i)}else"uiType"in a&&(XZ.includes(a.uiType.toUpperCase())?o=y(i,a)(_):QZ.includes(a.uiType.toUpperCase())&&(o=y(i,a)(v)));r.push(o)})),f(r)}else f("string"==typeof n?n:im.GENERIC.UNSUPPORTED)}),[u||a,m,p,c,h]);const y=(t,n)=>r=>e.jsx(JZ,{id:t,...n&&"showIf"in n&&{renderRules:n.showIf},schema:n,children:r(t,n)},t),_=(t,n)=>{let r;return"uiType"in n?r=qZ[exports.EFieldType[n.uiType?.toUpperCase()]]:"referenceKey"in n&&(r=S$[E$[n.referenceKey?.toUpperCase()]]||h(n.referenceKey)),r?e.jsx(KZ,{id:t,childSchema:n,children:e.jsx(j$,{id:t,schema:n,Field:r,warning:c?.[t]})}):null},v=(t,n)=>{let r;return"uiType"in n?r=r$[exports.EElementType[n.uiType?.toUpperCase()]]||eU:"referenceKey"in n&&(r=S$[b$[n.referenceKey?.toUpperCase()]]),e.jsx(KZ,{id:t,childSchema:n,children:e.jsx(r,{schema:n,id:t})})},b=s;return b?e.jsx(b,{...l,id:r,"data-testid":exports.TestHelper.generateId(r,s),children:d}):e.jsx(e.Fragment,{children:d})},tU=H.default(d.Layout.Container)`
|
|
1051
1051
|
gap: 2rem;
|
|
1052
1052
|
`,nU=H.default.div`
|
|
1053
1053
|
flex: 1;
|
|
1054
1054
|
`,rU=t=>{const{sectionSchema:{children:n,layoutType:r},...i}=t;switch(r){case"grid":return e.jsx(d.Layout.Section,{children:e.jsx(tU,{type:"grid",children:e.jsx(eU,{...i,children:n})})});case"contain":return e.jsx(d.Layout.Content,{children:e.jsx(nU,{children:e.jsx(eU,{...i,children:n})})});default:return e.jsx(eU,{...i,children:n})}},iU=()=>{const{formSchema:{sections:t,overrides:n},overrideSchema:r}=Vk();return e.jsx(e.Fragment,{children:(()=>{const i=r(t,n);return i?Object.entries(i).map((([t,n],r)=>e.jsx(rU,{id:t,sectionSchema:n},`section-${r}`))):e.jsxs(e.Fragment,{children:["Unable to render Frontend Engine schema, make sure schema is declared within ",e.jsx("code",{children:"sections"}),"."]})})()})},aU=t.forwardRef(((n,r)=>{const{data:i,className:a=null,components:o,onSubmit:s,onSubmitError:u,wrapInForm:l=!0}=n,{className:c=null,defaultValues:d,id:f,stripUnknown:p,revalidationMode:h="onChange",validationMode:m="onTouched"}=i||{},{addFieldEventListener:g,dispatchFieldEvent:y,removeFieldEventListener:_}=WI(),{setCustomComponents:v}=GI(),{setSubmitHandler:b,setWrapInForm:E}=Yk(),{addWarnings:S,performSoftValidation:A,softValidationSchema:x,hardValidationSchema:w,rebuildValidationSchema:T,yupId:M}=Kk(),O=function(e={}){const t=B.default.useRef(void 0),n=B.default.useRef(void 0),[r,i]=B.default.useState({isDirty:!1,isValidating:!1,isLoading:Ve(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1,defaultValues:Ve(e.defaultValues)?void 0:e.defaultValues});t.current||(t.current={...vt(e),formState:r});const a=t.current.control;return a._options=e,Le({subject:a._subjects.state,next:e=>{Ce(e,a._proxyFormState,a._updateFormState,!0)&&i({...a._formState})}}),B.default.useEffect((()=>a._disableForm(e.disabled)),[a,e.disabled]),B.default.useEffect((()=>{if(a._proxyFormState.isDirty){const e=a._getDirty();e!==r.isDirty&&a._subjects.state.next({isDirty:e})}}),[a,r.isDirty]),B.default.useEffect((()=>{e.values&&!ot(e.values,n.current)?(a._reset(e.values,a._options.resetOptions),n.current=e.values,i((e=>({...e})))):a._resetDefaultValues()}),[e.values,a]),B.default.useEffect((()=>{e.errors&&a._setErrors(e.errors)}),[e.errors,a]),B.default.useEffect((()=>{a._state.mount||(a._updateValid(),a._state.mount=!0),a._state.watch&&(a._state.watch=!1,a._subjects.state.next({...a._formState})),a._removeUnmounted()})),B.default.useEffect((()=>{e.shouldUnregister&&a._subjects.values.next({values:a._getWatch()})}),[e.shouldUnregister,a]),t.current.formState=Me(r,a),t.current}({mode:m,reValidateMode:h,defaultValues:d,resolver:async(e,t,n)=>(A(x,e),await function(e,t,n){return void 0===t&&(t={}),void 0===n&&(n={}),function(r,i,a){try{return Promise.resolve(function(o,s){try{var u=(t.context&&"development"===process.env.NODE_ENV&&console.warn("You should not used the yup options context. Please, use the 'useForm' context object instead"),Promise.resolve(e["sync"===n.mode?"validateSync":"validate"](r,Object.assign({abortEarly:!1},t,{context:i}))).then((function(e){return a.shouldUseNativeValidation&&Et({},a),{values:n.rawValues?r:e,errors:{}}})))}catch(e){return s(e)}return u&&u.then?u.then(void 0,s):u}(0,(function(e){if(!e.inner)throw e;return{values:{},errors:St((t=e,n=!a.shouldUseNativeValidation&&"all"===a.criteriaMode,(t.inner||[]).reduce((function(e,t){if(e[t.path]||(e[t.path]={message:t.message,type:t.type}),n){var r=e[t.path].types,i=r&&r[t.type];e[t.path]=ze(t.path,n,e,t.type,i?[].concat(i,t.message):t.message)}return e}),{})),a)};var t,n})))}catch(e){return Promise.reject(e)}}}(w)(e,t,n))}),{setFormSchema:C}=Vk(),{reset:N,handleSubmit:D,getValues:L,setValue:I,setError:k,trigger:$,formState:R,clearErrors:F}=O,{resetFields:z,setFields:P,getFormValues:j,registeredFields:Z}=Hk(O),U=t.useRef(Z),{checkIsFormValid:V}=((e,n)=>{const{data:r,onChange:i,onValueChange:a}=e,{stripUnknown:o}=r||{},{hardValidationSchema:s}=Kk(),{formValidationConfig:u}=Gk(),{watch:l,getValues:c,formState:d,clearErrors:f}=n,{setFields:p,setField:h,getFormValues:m}=Hk(n),[g,y]=t.useState({}),[_,v]=t.useState(!1),b=qk(u),E=qk(s),S=t.useRef(void 0),A=t.useRef(void 0),x=t.useCallback(((e=!1)=>{if(!e)try{return s.validateSync(c()),!0}catch(e){return!1}return(async()=>{try{return await s.validate(c()),!0}catch(e){return!1}})()}),[c,s]),w=t.useRef((async()=>{}));return w.current=async()=>{const e=m(void 0,o),t=await x(!0);a&&Object.keys(u||{}).length&&(A.current===t&&II(S.current,e)||a(e,t)),S.current=e,A.current=t},t.useEffect((()=>{const e=l(((e,{name:t})=>{t?h(t,e[t]):p(e)}));return()=>e.unsubscribe()}),[]),t.useEffect((()=>{if(i&&Object.keys(u||{}).length){const e=l((async()=>{const e=await x(!0);i(m(void 0,o),e)}));return x(!0).then((e=>i(m(void 0,o),e))),()=>e.unsubscribe()}}),[x,i,l,u]),t.useEffect((()=>{const e=l((async()=>{await w.current()}));return()=>e.unsubscribe()}),[l]),t.useEffect((()=>{if(b){const e=e=>Object.entries(e).map((([e,{validationRules:t}])=>[e,t])),t=e(b),n=e(u);II(t,n)||v(!0)}}),[u]),t.useEffect((()=>{_&&E!==s&&w.current().then((()=>v(!1)))}),[_,s]),t.useEffect((()=>{const e=d.errors;if(e&&!aE(e)){const e=l((e=>{const t=Object.fromEntries(Object.entries(d.errors).filter((([e,t])=>"api"===t.type)));t&&!aE(t)&&Object.keys(t).forEach((t=>{g[t]!==e[t]&&f(t)})),y(e)}));return()=>e.unsubscribe()}}),[d,l]),{checkIsFormValid:x}})(n,O);t.useImperativeHandle(r,(()=>({addFieldEventListener:g,addCustomValidation:H,dispatchFieldEvent:y,getValues:e=>j(e,p),isDirty:R.isDirty,isValid:V,validate:$,removeFieldEventListener:_,reset:(e,t)=>{N(e,t),z("function"==typeof e?e(O.getValues())??d:e??d)},setErrors:W,clearErrors:F,setWarnings:q,setValue:I,submit:D(G,Y)})));const H=(e,t,n,r=!1)=>{OI.addCondition(e,t,n,M,r),T()},G=t.useCallback((()=>{s?.(j(void 0,p))}),[j,s,p]),Y=t.useCallback((e=>{setTimeout((()=>u?.(e)))}),[u]),W=e=>{Object.entries(e).forEach((([e,t])=>{U.current.includes(e)&&(Array.isArray(t)?k(e,{type:"api",message:t[0]}):k(e,"object"==typeof t?{type:"api",message:JSON.stringify(t)}:{type:"api",message:t}))}))},q=e=>{const t={};Object.entries(e).forEach((([e,n])=>{U.current.includes(e)&&(t[e]=n)})),S(t)};t.useEffect((()=>{P(L())}),[]),vs((()=>{N(fs(d))}),[d]),_s((()=>{C(i)}),[i||{}]),t.useEffect((()=>{v(o)}),[o]),t.useEffect((()=>{b((()=>D(G,Y)))}),[G,Y]),t.useEffect((()=>{E(l)}),[l]),t.useEffect((()=>{U.current=Z}),[Z]);const K=f?`frontend-engine-${f}`:"frontend-engine",J=[a,c].join(" ").trim(),X=l?"form":"div";return i?e.jsx(Te,{...O,children:e.jsx(X,{id:K,"data-testid":f?exports.TestHelper.generateId(f,"frontend-engine"):K,className:J,noValidate:!0,onSubmit:D(G,Y),ref:r,children:e.jsx(iU,{})})}):e.jsxs(e.Fragment,{children:["Missing ",e.jsx("code",{children:"data"})," prop, unable to render Frontend Engine."]})})),oU=t.forwardRef(((t,n)=>e.jsx(HI,{children:e.jsx(aU,{...t,ref:n})})));exports.AxiosApiClient=cc,exports.Description=WT,exports.ERROR_MESSAGES=im,exports.FileUploadContext=Dz,exports.FrontendEngine=oU,exports.GeolocationPositionErrorWrapper=zZ,exports.ImageContext=Fz,exports.OneMapError=bI,exports.OneMapService=_I,exports.Prompt=KT,exports.Sanitize=hI,exports.commonjsGlobal=At,exports.generateRandomId=om,exports.lodash=mI,exports.useFieldEvent=WI,exports.useFormContext=we,exports.useFrontendEngineComponent=()=>{const{addFieldEventListener:e,dispatchFieldEvent:t,removeFieldEventListener:n}=WI(),r=we(),{setFieldValidationConfig:i,removeFieldValidationConfig:a}=Gk();return{event:{addFieldEventListener:e,dispatchFieldEvent:t,removeFieldEventListener:n},formContext:r,validation:{setValidation:i,removeValidation:a}}},exports.usePrevious=qk;
|
|
1055
|
-
//# sourceMappingURL=index.
|
|
1055
|
+
//# sourceMappingURL=index.20f9dfab.js.map
|