@incodetech/welcome 1.70.0-rc.20240412150645 → 1.70.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -38061,7 +38061,7 @@ function renderUserConsent(ue, {
38061
38061
  })
38062
38062
  }), ue, He);
38063
38063
  }
38064
- const version = "1.70.0-rc.20240412150645";
38064
+ const version = "1.70.0";
38065
38065
  function r(ue) {
38066
38066
  for (var me = "", Ue = 0; Ue < ue.length; ++Ue)
38067
38067
  if (Ue > 0) {
@@ -2359,7 +2359,7 @@ newPrivacyConsent.text4
2359
2359
  `).filter(it=>!!it.trim());return jsxs(ConsentWrapper$1,{role:"region","aria-live":"assertive",className:`
2360
2360
  ${me.default?"IncodeDefaultConsent":"IncodeCustomConsent"}
2361
2361
  `,children:[jsx(ConsentTitle,{tabIndex:0,children:rt}),at.map((it,ot)=>jsx(ConsentParagraph,{tabIndex:0,children:me.default?jsx(Markdown,{disallowedElements:disallowedMarkdownElements,children:Ge(it)}):jsx(Markdown,{disallowedElements:disallowedMarkdownElements,children:it})},ot)),jsx(AcceptCheck$2,{consentChecked:He,setConsentChecked:Xe,text:tt,id:"one"}),Ze?jsx(AcceptCheck$2,{consentChecked:Ke,setConsentChecked:$e,text:Ge("privacyCheck.aeromexico"),id:"two"}):null,jsx("div",{children:jsx(Button$9,{tabIndex:0,"aria-disabled":et,disabled:et,onClick:nt,children:Ge("privacyConsent.button.continue")})})]})}function PrivacyConsent({session:ue,title:me,text:Ue,goNext:Qe,isAeroMexicoClient:Ze,customCheck:Je}){const{t:Ge}=useTranslation(),[He,Xe]=React$1.useState(null);React$1.useEffect(()=>{Object.hasOwn||(Object.hasOwn=(nt,tt)=>Object.prototype.hasOwnProperty.call(nt,tt))},[]);const Ke=nt=>{const tt=nt.split(`
2362
- `);return tt.length===1?tt.join(" "):tt.filter(et=>!!et.trim()).map(et=>Ge(et)).join(" ")},$e=({title:nt,content:tt,isDefault:et})=>{addConsent({title:`${et?Ge(nt):nt}`,content:et?Ke(tt):tt,status:!0,session:ue})};return React$1.useEffect(()=>{if(me||Ue){Xe({title:me||defaultPrivacyConsent.title,text:Ue||defaultPrivacyConsent.text,consentType:defaultPrivacyConsent.consentType,default:!Ue});return}getPrivacyConsentData({session:ue,type:"PRIVACY"}).then(({consents:nt})=>{const tt=nt.find(({consentType:et})=>et==="PRIVACY");tt!=null&&tt.text?Xe({...tt,title:(tt==null?void 0:tt.title.trim())||defaultPrivacyConsent.title,text:tt.text.trim()||defaultPrivacyConsent.text,default:!(tt!=null&&tt.text)}):Xe(defaultPrivacyConsent)}).catch(()=>{Xe(defaultPrivacyConsent)})},[ue,me,Ue]),He?jsx(NormalPrivacyConsent,{consent:He,goNext:Qe,addPrivacyConsent:$e,session:ue,isAeroMexicoClient:Ze,customCheck:Je}):null}function renderUserConsent(ue,{session:me,onSuccess:Ue,title:Qe,text:Ze,isAeroMexicoClient:Je=!1,customCheck:Ge=null}){const He=createRoot$1(ue),Xe=handleUnmountRoot(Ue,He,ue);customRender(jsx(App$1,{token:me.token,children:jsx(PrivacyConsent,{goNext:Xe,session:me,title:Qe,text:Ze,isAeroMexicoClient:Je,customCheck:Ge})}),ue,He)}const version="1.70.0-rc.20240412150645";function r(ue){for(var me="",Ue=0;Ue<ue.length;++Ue)if(Ue>0){var Qe=ue[Ue].toLowerCase();Qe!==ue[Ue]?me+=" ".concat(Qe):me+=ue[Ue]}else me+=ue[Ue].toUpperCase();return me}function o(ue,me){return function(Ue,Qe){return Object.prototype.hasOwnProperty.call(Ue,Qe)}(ue,me)?ue[me]:void 0}var i$1={default:"endpoint"},u={default:"tlsEndpoint"},a="Client timeout",R="Network connection error",c="Network request aborted",s="Response cannot be parsed",E="Blocked by CSP",f="The endpoint parameter is not a valid URL",d=r("WrongRegion"),l=r("SubscriptionNotActive"),_=r("UnsupportedVersion"),p=r("InstallationMethodRestricted"),v=r("HostnameRestricted"),O=r("IntegrationFailed"),I="API key required",h="API key not found",N="API key expired",T="Request cannot be parsed",m="Request failed",w="Request failed to process",A="Too many requests, rate limit exceeded",P="Not available for this origin",y="Not available with restricted header",D=I,S=h,L=N,U="3.8.6",b="9319";function g(ue,me){var Ue=[];return function(Qe,Ze){var Je=5,Ge=(tt=Qe,et=__spreadArray$1([],tt,!0),{current:function(){return et[0]},postpone:function(){var at=et.shift();at!==void 0&&et.push(at)},exclude:function(){et.shift()}}),He=(Ke=100,$e=3e3,nt=0,function(){return Math.random()*Math.min($e,Ke*Math.pow(2,nt++))}),Xe=Ge.current(),Ke,$e,nt,tt,et;if(Xe===void 0)return Promise.reject(new TypeError("The list of script URL patterns is empty"));var rt=function(at,it){return Ze(at).catch(function(ot){if(it+1>=Je)throw ot;(function(ct){if(!(ct instanceof Error))return!1;var dt=ct.message;return dt===E||dt===b})(ot)?Ge.exclude():Ge.postpone();var st,ut=Ge.current();if(ut===void 0)throw ot;return(st=He(),new Promise(function(ct){return setTimeout(ct,st)})).then(function(){return rt(ut,it+1)})})};return rt(Xe,0)}(ue,function(Qe){var Ze=new Date,Je=function(He){return Ue.push({url:Qe,startedAt:Ze,finishedAt:new Date,error:He})},Ge=me(Qe);return Ge.then(function(){return Je()},Je),Ge}).then(function(Qe){return[Qe,Ue]})}var C="https://fpnpmcdn.net/v<version>/<apiKey>/loader_v<loaderVersion>.js",K=C,M="Failed to load the JS script of the agent";function B(ue){var me;ue.scriptUrlPattern;var Ue=ue.token,Qe=ue.apiKey,Ze=Qe===void 0?Ue:Qe,Je=__rest$1(ue,["scriptUrlPattern","token","apiKey"]),Ge=(me=o(ue,"scriptUrlPattern"))!==null&&me!==void 0?me:C,He=function(){var $e=[],nt=function(){$e.push({time:new Date,state:document.visibilityState})},tt=function(et,rt,at,it){return et.addEventListener(rt,at,it),function(){return et.removeEventListener(rt,at,it)}}(document,"visibilitychange",nt);return nt(),[$e,tt]}(),Xe=He[0],Ke=He[1];return Promise.resolve().then(function(){if(!Ze||typeof Ze!="string")throw new Error(I);var $e=function(nt,tt){return(Array.isArray(nt)?nt:[nt]).map(function(et){return function(rt,at){var it=encodeURIComponent;return rt.replace(/<[^<>]+>/g,function(ot){return ot==="<version>"?"3":ot==="<apiKey>"?it(at):ot==="<loaderVersion>"?it(U):ot})}(String(et),tt)})}(Ge,Ze);return g($e,F)}).catch(function($e){throw Ke(),function(nt){return nt instanceof Error&&nt.message===b?new Error(M):nt}($e)}).then(function($e){var nt=$e[0],tt=$e[1];return Ke(),nt.load(__assign$1(__assign$1({},Je),{ldi:{attempts:tt,visibilityStates:Xe}}))})}function F(ue){return function(me,Ue,Qe,Ze){var Je,Ge=document,He="securitypolicyviolation",Xe=function($e){var nt=new URL(me,location.href),tt=$e.blockedURI;tt!==nt.href&&tt!==nt.protocol.slice(0,-1)&&tt!==nt.origin||(Je=$e,Ke())};Ge.addEventListener(He,Xe);var Ke=function(){return Ge.removeEventListener(He,Xe)};return Ze==null||Ze.then(Ke,Ke),Promise.resolve().then(Ue).then(function($e){return Ke(),$e},function($e){return new Promise(function(nt){return setTimeout(nt)}).then(function(){if(Ke(),Je)return Qe(Je);throw $e})})}(ue,function(){return function(me){return new Promise(function(Ue,Qe){var Ze=document.createElement("script"),Je=function(){var He;return(He=Ze.parentNode)===null||He===void 0?void 0:He.removeChild(Ze)},Ge=document.head||document.getElementsByTagName("head")[0];Ze.onload=function(){Je(),Ue()},Ze.onerror=function(){Je(),Qe(new Error(M))},Ze.async=!0,Ze.src=me,Ge.appendChild(Ze)})}(ue)},function(){throw new Error(E)}).then(V)}function V(){var ue=window,me="__fpjs_p_l_b",Ue=ue[me];if(function(Qe,Ze){var Je,Ge=(Je=Object.getOwnPropertyDescriptor)===null||Je===void 0?void 0:Je.call(Object,Qe,Ze);Ge!=null&&Ge.configurable?delete Qe[Ze]:Ge&&!Ge.writable||(Qe[Ze]=void 0)}(ue,me),typeof(Ue==null?void 0:Ue.load)!="function")throw new Error(b);return Ue}var k={load:B,defaultScriptUrlPattern:K,ERROR_SCRIPT_LOAD_FAIL:M,ERROR_API_KEY_EXPIRED:N,ERROR_API_KEY_INVALID:h,ERROR_API_KEY_MISSING:I,ERROR_BAD_REQUEST_FORMAT:T,ERROR_BAD_RESPONSE_FORMAT:s,ERROR_CLIENT_TIMEOUT:a,ERROR_CSP_BLOCK:E,ERROR_FORBIDDEN_ENDPOINT:v,ERROR_FORBIDDEN_HEADER:y,ERROR_FORBIDDEN_ORIGIN:P,ERROR_GENERAL_SERVER_FAILURE:m,ERROR_INSTALLATION_METHOD_RESTRICTED:p,ERROR_INTEGRATION_FAILURE:O,ERROR_INVALID_ENDPOINT:f,ERROR_NETWORK_ABORT:c,ERROR_NETWORK_CONNECTION:R,ERROR_RATE_LIMIT:A,ERROR_SERVER_TIMEOUT:w,ERROR_SUBSCRIPTION_NOT_ACTIVE:l,ERROR_TOKEN_EXPIRED:L,ERROR_TOKEN_INVALID:S,ERROR_TOKEN_MISSING:D,ERROR_UNSUPPORTED_VERSION:_,ERROR_WRONG_REGION:d,defaultEndpoint:i$1,defaultTlsEndpoint:u};let fingerprintApiKey;function setFingerprintApiKey(ue){fingerprintApiKey=ue}async function getFingerPrint(){return k.load({token:fingerprintApiKey,endpoint:"https://fingerprint.incodesmile.com",scriptUrlPattern:"https://fingerprint.incodesmile.com/web/v<version>/<apiKey>/loader_v<loaderVersion>.js"}).then(ue=>ue.get({extendedResult:!0}))}const fingerPrintUrl="/omni/add/device-fingerprint";function postFingerprint({hash:ue,ip:me,deviceType:Ue,token:Qe,data:Ze,osVersion:Je,deviceModel:Ge,browser:He,sdkVersion:Xe,hasLiedBrowser:Ke,hostingApp:$e,ipLocation:nt}){return exports.api.post(fingerPrintUrl,{hash:ue,ip:me,deviceType:Ue,data:Ze,osVersion:Je,deviceModel:Ge,browser:He,hasLiedBrowser:Ke,sdkVersion:Xe,hostingApp:$e,ipLocation:nt},{headers:{"X-Incode-Hardware-Id":Qe}}).then(tt=>tt.data).catch(tt=>Promise.reject(tt.response.data))}function formatDeviceModel({vendor:ue,model:me}){return`${ue||""} ${me||""}`.trim()}const emptyFingerprint={visitorId:void 0,ip:void 0,ipLocation:{country:{name:void 0},subdivisions:[],city:{name:void 0},latitude:void 0,longitude:void 0}};async function sendFingerprint({token:ue},me=!0,Ue=!0){var Xe,Ke,$e;const Qe="WEBAPP",{os:Ze,device:Je,browser:Ge}=getUAParserResults(),He=Ue?await getFingerPrint().catch(nt=>(addEvent({code:"fingerprintFetchFailed",payload:{message:nt.message},token:ue}),emptyFingerprint)):emptyFingerprint;return postFingerprint({hash:He.visitorId||"",ip:me&&He.ip||"",deviceType:Qe,token:ue,data:JSON.stringify(He),osVersion:`${Ze.name} ${Ze.version}`,deviceModel:formatDeviceModel(Je),browser:`${Ge.name} ${Ge.version}`,hasLiedBrowser:isBrowserSimulation(),hostingApp:options.hostingApp,sdkVersion:version,ipLocation:{ipCountry:(Xe=He.ipLocation.country)==null?void 0:Xe.name,ipRegion:(Ke=He.ipLocation.subdivisions)==null?void 0:Ke[0].name,ipCity:($e=He.ipLocation.city)==null?void 0:$e.name,ipLatitude:He.ipLocation.latitude,ipLongitude:He.ipLocation.longitude}}).then(nt=>(emptyDeviceStatsQueue(ue),nt))}function mapI18nLang(ue){const me={en:"en-US",es:"es-ES",pt:"pt-BR"},Ue=ue==null?void 0:ue.substring(0,2);return me[Ue]||"en-US"}const createSessionUrl="/omni/start";async function createNewSession({externalId:ue,externalCustomerId:me,configurationId:Ue,uuid:Qe,interviewId:Ze,customFields:Je,language:Ge}={}){const He=Ge||mapI18nLang(i18nInstance.language);try{const Xe=await exports.api.post(createSessionUrl,{externalId:ue,externalCustomerId:me,configurationId:Ue,uuid:Qe,interviewId:Ze,customFields:Je,language:He});state.token=Xe.data;const Ke=Xe.data;emptyQueue(Ke.token);const $e=await sendFingerprint({token:Ke.token,interviewId:Ke.interviewId}).catch(()=>({regulationType:"",showMandatoryConsent:!1}));Ke.regulationType=$e.regulationType??"",Ke.showMandatoryConsent=$e.showMandatoryConsent??!1;const tt=new UAParser().getResult();return addEvent({code:"browser",payload:{userAgent:window.navigator.userAgent,isWebRtcSupported:isWebRtcSupported(),...tt},token:Ke.token}),Ke}catch(Xe){throw Xe!=null&&Xe.response?Xe.response.data:Xe}}const createRedirectUrl=async({session:ue})=>{const{url:me}=await exports.api.get("/omni/onboarding-url",{params:{clientId:ue.clientId},headers:{"X-Incode-Hardware-Id":ue.token}}).then(Ue=>Ue.data);return me};async function createSession$4(ue,me,{externalCustomerId:Ue,configurationId:Qe,uuid:Ze,interviewId:Je,customFields:Ge,language:He}={}){return createNewSession({externalId:me,externalCustomerId:Ue,configurationId:Qe,uuid:Ze,interviewId:Je,customFields:Ge,language:He})}var isHTMLElement=ue=>ue instanceof HTMLElement;const EVENTS={BLUR:"blur",CHANGE:"change",INPUT:"input"},VALIDATION_MODE={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},SELECT="select",UNDEFINED="undefined",INPUT_VALIDATION_RULES={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"};function attachEventListeners({ref:ue},me,Ue){isHTMLElement(ue)&&Ue&&(ue.addEventListener(me?EVENTS.CHANGE:EVENTS.INPUT,Ue),ue.addEventListener(EVENTS.BLUR,Ue))}var isNullOrUndefined=ue=>ue==null;const isObjectType=ue=>typeof ue=="object";var isObject$4=ue=>!isNullOrUndefined(ue)&&!Array.isArray(ue)&&isObjectType(ue)&&!(ue instanceof Date),isKey=ue=>/^\w*$/.test(ue),compact=ue=>ue.filter(Boolean),stringToPath=ue=>compact(ue.replace(/["|']/g,"").replace(/\[/g,".").replace(/\]/g,"").split("."));function set(ue,me,Ue){let Qe=-1;const Ze=isKey(me)?[me]:stringToPath(me),Je=Ze.length,Ge=Je-1;for(;++Qe<Je;){const He=Ze[Qe];let Xe=Ue;if(Qe!==Ge){const Ke=ue[He];Xe=isObject$4(Ke)||Array.isArray(Ke)?Ke:isNaN(+Ze[Qe+1])?{}:[]}ue[He]=Xe,ue=ue[He]}return ue}var transformToNestObject=(ue,me={})=>{for(const Ue in ue)isKey(Ue)?me[Ue]=ue[Ue]:set(me,Ue,ue[Ue]);return me},isUndefined$1=ue=>ue===void 0,get=(ue={},me,Ue)=>{const Qe=compact(me.split(/[,[\].]+?/)).reduce((Ze,Je)=>isNullOrUndefined(Ze)?Ze:Ze[Je],ue);return isUndefined$1(Qe)||Qe===ue?isUndefined$1(ue[me])?Ue:ue[me]:Qe},focusOnErrorField=(ue,me)=>{for(const Ue in ue)if(get(me,Ue)){const Qe=ue[Ue];if(Qe){if(Qe.ref.focus&&isUndefined$1(Qe.ref.focus()))break;if(Qe.options){Qe.options[0].ref.focus();break}}}},removeAllEventListeners=(ue,me)=>{isHTMLElement(ue)&&ue.removeEventListener&&(ue.removeEventListener(EVENTS.INPUT,me),ue.removeEventListener(EVENTS.CHANGE,me),ue.removeEventListener(EVENTS.BLUR,me))};const defaultReturn={isValid:!1,value:null};var getRadioValue=ue=>Array.isArray(ue)?ue.reduce((me,Ue)=>Ue&&Ue.ref.checked?{isValid:!0,value:Ue.ref.value}:me,defaultReturn):defaultReturn,getMultipleSelectValue=ue=>[...ue].filter(({selected:me})=>me).map(({value:me})=>me),isRadioInput=ue=>ue.type==="radio",isFileInput=ue=>ue.type==="file",isCheckBoxInput=ue=>ue.type==="checkbox",isMultipleSelect=ue=>ue.type===`${SELECT}-multiple`;const defaultResult={value:!1,isValid:!1},validResult={value:!0,isValid:!0};var getCheckboxValue=ue=>{if(Array.isArray(ue)){if(ue.length>1){const Ze=ue.filter(Je=>Je&&Je.ref.checked).map(({ref:{value:Je}})=>Je);return{value:Ze,isValid:!!Ze.length}}const{checked:me,value:Ue,attributes:Qe}=ue[0].ref;return me?Qe&&!isUndefined$1(Qe.value)?isUndefined$1(Ue)||Ue===""?validResult:{value:Ue,isValid:!0}:validResult:defaultResult}return defaultResult};function getFieldValue(ue,me,Ue,Qe,Ze){const Je=ue.current[me];if(Je){const{ref:{value:Ge,disabled:He},ref:Xe,valueAsNumber:Ke,valueAsDate:$e,setValueAs:nt}=Je;return He&&Qe?void 0:isFileInput(Xe)?Xe.files:isRadioInput(Xe)?getRadioValue(Je.options).value:isMultipleSelect(Xe)?getMultipleSelectValue(Xe.options):isCheckBoxInput(Xe)?getCheckboxValue(Je.options).value:Ze?Ge:Ke?Ge===""?NaN:+Ge:$e?Xe.valueAsDate:nt?nt(Ge):Ge}if(Ue)return get(Ue.current,me)}function isDetached(ue){return ue?!(ue instanceof HTMLElement)||ue.nodeType===Node.DOCUMENT_NODE?!1:isDetached(ue.parentNode):!0}var isEmptyObject=ue=>isObject$4(ue)&&!Object.keys(ue).length,isBoolean=ue=>typeof ue=="boolean";function baseGet(ue,me){const Ue=me.slice(0,-1).length;let Qe=0;for(;Qe<Ue;)ue=isUndefined$1(ue)?Qe++:ue[me[Qe++]];return ue}function unset(ue,me){const Ue=isKey(me)?[me]:stringToPath(me),Qe=Ue.length==1?ue:baseGet(ue,Ue),Ze=Ue[Ue.length-1];let Je;Qe&&delete Qe[Ze];for(let Ge=0;Ge<Ue.slice(0,-1).length;Ge++){let He=-1,Xe;const Ke=Ue.slice(0,-(Ge+1)),$e=Ke.length-1;for(Ge>0&&(Je=ue);++He<Ke.length;){const nt=Ke[He];Xe=Xe?Xe[nt]:ue[nt],$e===He&&(isObject$4(Xe)&&isEmptyObject(Xe)||Array.isArray(Xe)&&!Xe.filter(tt=>isObject$4(tt)&&!isEmptyObject(tt)||isBoolean(tt)).length)&&(Je?delete Je[nt]:delete ue[nt]),Je=Xe}}return ue}const isSameRef=(ue,me)=>ue&&ue.ref===me;function findRemovedFieldAndRemoveListener(ue,me,Ue,Qe,Ze,Je){const{ref:Ge,ref:{name:He}}=Ue,Xe=ue.current[He];if(!Ze){const Ke=getFieldValue(ue,He,Qe);!isUndefined$1(Ke)&&set(Qe.current,He,Ke)}if(!Ge.type||!Xe){delete ue.current[He];return}isRadioInput(Ge)||isCheckBoxInput(Ge)?Array.isArray(Xe.options)&&Xe.options.length?(compact(Xe.options).forEach((Ke={},$e)=>{(isDetached(Ke.ref)&&isSameRef(Ke,Ke.ref)||Je)&&(removeAllEventListeners(Ke.ref,me),unset(Xe.options,`[${$e}]`))}),Xe.options&&!compact(Xe.options).length&&delete ue.current[He]):delete ue.current[He]:(isDetached(Ge)&&isSameRef(Xe,Ge)||Je)&&(removeAllEventListeners(Ge,me),delete ue.current[He])}var isPrimitive=ue=>isNullOrUndefined(ue)||!isObjectType(ue);function deepMerge(ue,me){if(isPrimitive(ue)||isPrimitive(me))return me;for(const Ue in me){const Qe=ue[Ue],Ze=me[Ue];try{ue[Ue]=isObject$4(Qe)&&isObject$4(Ze)||Array.isArray(Qe)&&Array.isArray(Ze)?deepMerge(Qe,Ze):Ze}catch{}}return ue}function deepEqual(ue,me,Ue){if(isPrimitive(ue)||isPrimitive(me)||ue instanceof Date||me instanceof Date)return ue===me;if(!React$1.isValidElement(ue)){const Qe=Object.keys(ue),Ze=Object.keys(me);if(Qe.length!==Ze.length)return!1;for(const Je of Qe){const Ge=ue[Je];if(!(Ue&&Je==="ref")){const He=me[Je];if((isObject$4(Ge)||Array.isArray(Ge))&&(isObject$4(He)||Array.isArray(He))?!deepEqual(Ge,He,Ue):Ge!==He)return!1}}}return!0}function setDirtyFields(ue,me,Ue,Qe,Ze){let Je=-1;for(;++Je<ue.length;){for(const Ge in ue[Je])Array.isArray(ue[Je][Ge])?(!Ue[Je]&&(Ue[Je]={}),Ue[Je][Ge]=[],setDirtyFields(ue[Je][Ge],get(me[Je]||{},Ge,[]),Ue[Je][Ge],Ue[Je],Ge)):deepEqual(get(me[Je]||{},Ge),ue[Je][Ge])?set(Ue[Je]||{},Ge):Ue[Je]=Object.assign(Object.assign({},Ue[Je]),{[Ge]:!0});Qe&&!Ue.length&&delete Qe[Ze]}return Ue}var setFieldArrayDirtyFields=(ue,me,Ue)=>deepMerge(setDirtyFields(ue,me,Ue.slice(0,ue.length)),setDirtyFields(me,ue,Ue.slice(0,ue.length))),isString$2=ue=>typeof ue=="string",getFieldsValues=(ue,me,Ue,Qe,Ze)=>{const Je={};for(const Ge in ue.current)(isUndefined$1(Ze)||(isString$2(Ze)?Ge.startsWith(Ze):Array.isArray(Ze)&&Ze.find(He=>Ge.startsWith(He))))&&(Je[Ge]=getFieldValue(ue,Ge,void 0,Qe));return Ue?transformToNestObject(Je):deepMerge(me,transformToNestObject(Je))},isErrorStateChanged=({errors:ue,name:me,error:Ue,validFields:Qe,fieldsWithValidation:Ze})=>{const Je=isUndefined$1(Ue),Ge=get(ue,me);return Je&&!!Ge||!Je&&!deepEqual(Ge,Ue,!0)||Je&&get(Ze,me)&&!get(Qe,me)},isRegex=ue=>ue instanceof RegExp,getValueAndMessage=ue=>isObject$4(ue)&&!isRegex(ue)?ue:{value:ue,message:""},isFunction$1=ue=>typeof ue=="function",isMessage=ue=>isString$2(ue)||React$1.isValidElement(ue);function getValidateError(ue,me,Ue="validate"){if(isMessage(ue)||isBoolean(ue)&&!ue)return{type:Ue,message:isMessage(ue)?ue:"",ref:me}}var appendErrors=(ue,me,Ue,Qe,Ze)=>me?Object.assign(Object.assign({},Ue[ue]),{types:Object.assign(Object.assign({},Ue[ue]&&Ue[ue].types?Ue[ue].types:{}),{[Qe]:Ze||!0})}):{},validateField=async(ue,me,{ref:Ue,ref:{value:Qe},options:Ze,required:Je,maxLength:Ge,minLength:He,min:Xe,max:Ke,pattern:$e,validate:nt},tt)=>{const et=Ue.name,rt={},at=isRadioInput(Ue),it=isCheckBoxInput(Ue),ot=at||it,st=Qe==="",ut=appendErrors.bind(null,et,me,rt),ct=(dt,ht,pt,gt=INPUT_VALIDATION_RULES.maxLength,Mt=INPUT_VALIDATION_RULES.minLength)=>{const vt=dt?ht:pt;rt[et]=Object.assign({type:dt?gt:Mt,message:vt,ref:Ue},ut(dt?gt:Mt,vt))};if(Je&&(!at&&!it&&(st||isNullOrUndefined(Qe))||isBoolean(Qe)&&!Qe||it&&!getCheckboxValue(Ze).isValid||at&&!getRadioValue(Ze).isValid)){const{value:dt,message:ht}=isMessage(Je)?{value:!!Je,message:Je}:getValueAndMessage(Je);if(dt&&(rt[et]=Object.assign({type:INPUT_VALIDATION_RULES.required,message:ht,ref:ot?((ue.current[et].options||[])[0]||{}).ref:Ue},ut(INPUT_VALIDATION_RULES.required,ht)),!me))return rt}if((!isNullOrUndefined(Xe)||!isNullOrUndefined(Ke))&&Qe!==""){let dt,ht;const pt=getValueAndMessage(Ke),gt=getValueAndMessage(Xe);if(isNaN(Qe)){const Mt=Ue.valueAsDate||new Date(Qe);isString$2(pt.value)&&(dt=Mt>new Date(pt.value)),isString$2(gt.value)&&(ht=Mt<new Date(gt.value))}else{const Mt=Ue.valueAsNumber||parseFloat(Qe);isNullOrUndefined(pt.value)||(dt=Mt>pt.value),isNullOrUndefined(gt.value)||(ht=Mt<gt.value)}if((dt||ht)&&(ct(!!dt,pt.message,gt.message,INPUT_VALIDATION_RULES.max,INPUT_VALIDATION_RULES.min),!me))return rt}if(isString$2(Qe)&&!st&&(Ge||He)){const dt=getValueAndMessage(Ge),ht=getValueAndMessage(He),pt=!isNullOrUndefined(dt.value)&&Qe.length>dt.value,gt=!isNullOrUndefined(ht.value)&&Qe.length<ht.value;if((pt||gt)&&(ct(pt,dt.message,ht.message),!me))return rt}if(isString$2(Qe)&&$e&&!st){const{value:dt,message:ht}=getValueAndMessage($e);if(isRegex(dt)&&!dt.test(Qe)&&(rt[et]=Object.assign({type:INPUT_VALIDATION_RULES.pattern,message:ht,ref:Ue},ut(INPUT_VALIDATION_RULES.pattern,ht)),!me))return rt}if(nt){const dt=getFieldValue(ue,et,tt,!1,!0),ht=ot&&Ze?Ze[0].ref:Ue;if(isFunction$1(nt)){const pt=await nt(dt),gt=getValidateError(pt,ht);if(gt&&(rt[et]=Object.assign(Object.assign({},gt),ut(INPUT_VALIDATION_RULES.validate,gt.message)),!me))return rt}else if(isObject$4(nt)){let pt={};for(const[gt,Mt]of Object.entries(nt)){if(!isEmptyObject(pt)&&!me)break;const vt=await Mt(dt),Dt=getValidateError(vt,ht,gt);Dt&&(pt=Object.assign(Object.assign({},Dt),ut(gt,Dt.message)),me&&(rt[et]=pt))}if(!isEmptyObject(pt)&&(rt[et]=Object.assign({ref:ht},pt),!me))return rt}}return rt};const getPath=(ue,me,Ue=[])=>{for(const Qe in me){const Ze=ue+(isObject$4(me)?`.${Qe}`:`[${Qe}]`);isPrimitive(me[Qe])?Ue.push(Ze):getPath(Ze,me[Qe],Ue)}return Ue};var assignWatchFields=(ue,me,Ue,Qe,Ze)=>{let Je;return Ue.add(me),isEmptyObject(ue)||(Je=get(ue,me),(isObject$4(Je)||Array.isArray(Je))&&getPath(me,Je).forEach(Ge=>Ue.add(Ge))),isUndefined$1(Je)?Ze?Qe:get(Qe,me):Je},skipValidation=({isOnBlur:ue,isOnChange:me,isOnTouch:Ue,isTouched:Qe,isReValidateOnBlur:Ze,isReValidateOnChange:Je,isBlurEvent:Ge,isSubmitted:He,isOnAll:Xe})=>Xe?!1:!He&&Ue?!(Qe||Ge):(He?Ze:ue)?!Ge:(He?Je:me)?Ge:!0,getFieldArrayParentName=ue=>ue.substring(0,ue.indexOf("["));const isMatchFieldArrayName=(ue,me)=>RegExp(`^${me}([|.)\\d+`.replace(/\[/g,"\\[").replace(/\]/g,"\\]")).test(ue);var isNameInFieldArray=(ue,me)=>[...ue].some(Ue=>isMatchFieldArrayName(me,Ue)),isSelectInput=ue=>ue.type===`${SELECT}-one`;function onDomRemove(ue,me){const Ue=new MutationObserver(()=>{for(const Qe of Object.values(ue.current))if(Qe&&Qe.options)for(const Ze of Qe.options)Ze&&Ze.ref&&isDetached(Ze.ref)&&me(Qe);else Qe&&isDetached(Qe.ref)&&me(Qe)});return Ue.observe(window.document,{childList:!0,subtree:!0}),Ue}var isWeb=typeof window!==UNDEFINED&&typeof document!==UNDEFINED;function cloneObject(ue){var me;let Ue;if(isPrimitive(ue)||isWeb&&(ue instanceof File||isHTMLElement(ue))||!["Set","Map","Object","Date","Array"].includes((me=ue.constructor)===null||me===void 0?void 0:me.name))return ue;if(ue instanceof Date)return Ue=new Date(ue.getTime()),Ue;if(ue instanceof Set){Ue=new Set;for(const Qe of ue)Ue.add(Qe);return Ue}if(ue instanceof Map){Ue=new Map;for(const Qe of ue.keys())Ue.set(Qe,cloneObject(ue.get(Qe)));return Ue}Ue=Array.isArray(ue)?[]:{};for(const Qe in ue)Ue[Qe]=cloneObject(ue[Qe]);return Ue}var modeChecker=ue=>({isOnSubmit:!ue||ue===VALIDATION_MODE.onSubmit,isOnBlur:ue===VALIDATION_MODE.onBlur,isOnChange:ue===VALIDATION_MODE.onChange,isOnAll:ue===VALIDATION_MODE.all,isOnTouch:ue===VALIDATION_MODE.onTouched}),isRadioOrCheckboxFunction=ue=>isRadioInput(ue)||isCheckBoxInput(ue);const isWindowUndefined=typeof window===UNDEFINED,isProxyEnabled=isWeb?"Proxy"in window:typeof Proxy!==UNDEFINED;function useForm({mode:ue=VALIDATION_MODE.onSubmit,reValidateMode:me=VALIDATION_MODE.onChange,resolver:Ue,context:Qe,defaultValues:Ze={},shouldFocusError:Je=!0,shouldUnregister:Ge=!0,criteriaMode:He}={}){const Xe=React$1.useRef({}),Ke=React$1.useRef({}),$e=React$1.useRef({}),nt=React$1.useRef(new Set),tt=React$1.useRef({}),et=React$1.useRef({}),rt=React$1.useRef({}),at=React$1.useRef({}),it=React$1.useRef(Ze),ot=React$1.useRef(!1),st=React$1.useRef(!1),ut=React$1.useRef(),ct=React$1.useRef({}),dt=React$1.useRef({}),ht=React$1.useRef(Qe),pt=React$1.useRef(Ue),gt=React$1.useRef(new Set),Mt=React$1.useRef(modeChecker(ue)),{isOnSubmit:vt,isOnTouch:Dt}=Mt.current,yt=He===VALIDATION_MODE.all,[It,mt]=React$1.useState({isDirty:!1,isValidating:!1,dirtyFields:{},isSubmitted:!1,submitCount:0,touched:{},isSubmitting:!1,isSubmitSuccessful:!1,isValid:!vt,errors:{}}),Ft=React$1.useRef({isDirty:!isProxyEnabled,dirtyFields:!isProxyEnabled,touched:!isProxyEnabled||Dt,isValidating:!isProxyEnabled,isSubmitting:!isProxyEnabled,isValid:!isProxyEnabled}),At=React$1.useRef(It),St=React$1.useRef(),{isOnBlur:Rt,isOnChange:bt}=React$1.useRef(modeChecker(me)).current;ht.current=Qe,pt.current=Ue,At.current=It,ct.current=Ge?{}:isEmptyObject(ct.current)?cloneObject(Ze):ct.current;const Tt=React$1.useCallback((Ht={})=>{ot.current||(At.current=Object.assign(Object.assign({},At.current),Ht),mt(At.current))},[]),xt=()=>Ft.current.isValidating&&Tt({isValidating:!0}),wt=React$1.useCallback((Ht,$t,nn=!1,sn={},rn)=>{let pn=nn||isErrorStateChanged({errors:At.current.errors,error:$t,name:Ht,validFields:at.current,fieldsWithValidation:rt.current});const Nn=get(At.current.errors,Ht);$t?(unset(at.current,Ht),pn=pn||!Nn||!deepEqual(Nn,$t,!0),set(At.current.errors,Ht,$t)):((get(rt.current,Ht)||pt.current)&&(set(at.current,Ht,!0),pn=pn||Nn),unset(At.current.errors,Ht)),(pn&&!isNullOrUndefined(nn)||!isEmptyObject(sn)||Ft.current.isValidating)&&Tt(Object.assign(Object.assign(Object.assign({},sn),pt.current?{isValid:!!rn}:{}),{isValidating:!1}))},[]),Ct=React$1.useCallback((Ht,$t)=>{const{ref:nn,options:sn}=Xe.current[Ht],rn=isWeb&&isHTMLElement(nn)&&isNullOrUndefined($t)?"":$t;isRadioInput(nn)?(sn||[]).forEach(({ref:pn})=>pn.checked=pn.value===rn):isFileInput(nn)&&!isString$2(rn)?nn.files=rn:isMultipleSelect(nn)?[...nn.options].forEach(pn=>pn.selected=rn.includes(pn.value)):isCheckBoxInput(nn)&&sn?sn.length>1?sn.forEach(({ref:pn})=>pn.checked=Array.isArray(rn)?!!rn.find(Nn=>Nn===pn.value):rn===pn.value):sn[0].ref.checked=!!rn:nn.value=rn},[]),Zt=React$1.useCallback((Ht,$t)=>{if(Ft.current.isDirty){const nn=jt();return Ht&&$t&&set(nn,Ht,$t),!deepEqual(nn,it.current)}return!1},[]),Pt=React$1.useCallback((Ht,$t=!0)=>{if(Ft.current.isDirty||Ft.current.dirtyFields){const nn=!deepEqual(get(it.current,Ht),getFieldValue(Xe,Ht,ct)),sn=get(At.current.dirtyFields,Ht),rn=At.current.isDirty;nn?set(At.current.dirtyFields,Ht,!0):unset(At.current.dirtyFields,Ht);const pn={isDirty:Zt(),dirtyFields:At.current.dirtyFields},Nn=Ft.current.isDirty&&rn!==pn.isDirty||Ft.current.dirtyFields&&sn!==get(At.current.dirtyFields,Ht);return Nn&&$t&&Tt(pn),Nn?pn:{}}return{}},[]),Ot=React$1.useCallback(async(Ht,$t)=>{if(process.env.NODE_ENV!=="production"&&!Xe.current[Ht])return console.warn("📋 Field is missing with `name` attribute: ",Ht),!1;const nn=(await validateField(Xe,yt,Xe.current[Ht],ct))[Ht];return wt(Ht,nn,$t),isUndefined$1(nn)},[wt,yt]),Xt=React$1.useCallback(async Ht=>{const{errors:$t}=await pt.current(jt(),ht.current,yt),nn=At.current.isValid;if(Array.isArray(Ht)){const sn=Ht.map(rn=>{const pn=get($t,rn);return pn?set(At.current.errors,rn,pn):unset(At.current.errors,rn),!pn}).every(Boolean);return Tt({isValid:isEmptyObject($t),isValidating:!1}),sn}else{const sn=get($t,Ht);return wt(Ht,sn,nn!==isEmptyObject($t),{},isEmptyObject($t)),!sn}},[wt,yt]),Kt=React$1.useCallback(async Ht=>{const $t=Ht||Object.keys(Xe.current);if(xt(),pt.current)return Xt($t);if(Array.isArray($t)){!Ht&&(At.current.errors={});const nn=await Promise.all($t.map(async sn=>await Ot(sn,null)));return Tt({isValidating:!1}),nn.every(Boolean)}return await Ot($t)},[Xt,Ot]),Wt=React$1.useCallback((Ht,$t,{shouldDirty:nn,shouldValidate:sn})=>{const rn={};set(rn,Ht,$t);for(const pn of getPath(Ht,$t))Xe.current[pn]&&(Ct(pn,get(rn,pn)),nn&&Pt(pn),sn&&Kt(pn))},[Kt,Ct,Pt]),kt=React$1.useCallback((Ht,$t,nn)=>{if(!Ge&&!isPrimitive($t)&&set(ct.current,Ht,Array.isArray($t)?[...$t]:Object.assign({},$t)),Xe.current[Ht])Ct(Ht,$t),nn.shouldDirty&&Pt(Ht),nn.shouldValidate&&Kt(Ht);else if(!isPrimitive($t)&&(Wt(Ht,$t,nn),gt.current.has(Ht))){const sn=getFieldArrayParentName(Ht)||Ht;set(Ke.current,Ht,$t),dt.current[sn]({[sn]:get(Ke.current,sn)}),(Ft.current.isDirty||Ft.current.dirtyFields)&&nn.shouldDirty&&(set(At.current.dirtyFields,Ht,setFieldArrayDirtyFields($t,get(it.current,Ht,[]),get(At.current.dirtyFields,Ht,[]))),Tt({isDirty:!deepEqual(Object.assign(Object.assign({},jt()),{[Ht]:$t}),it.current)}))}!Ge&&set(ct.current,Ht,$t)},[Pt,Ct,Wt]),Et=Ht=>st.current||nt.current.has(Ht)||nt.current.has((Ht.match(/\w+/)||[])[0]),lt=Ht=>{let $t=!0;if(!isEmptyObject(tt.current))for(const nn in tt.current)(!Ht||!tt.current[nn].size||tt.current[nn].has(Ht)||tt.current[nn].has(getFieldArrayParentName(Ht)))&&(et.current[nn](),$t=!1);return $t};function Ut(Ht,$t,nn){kt(Ht,$t,nn||{}),Et(Ht)&&Tt(),lt(Ht)}ut.current=ut.current?ut.current:async({type:Ht,target:$t})=>{let nn=$t.name;const sn=Xe.current[nn];let rn,pn;if(sn){const Nn=Ht===EVENTS.BLUR,En=skipValidation(Object.assign({isBlurEvent:Nn,isReValidateOnChange:bt,isReValidateOnBlur:Rt,isTouched:!!get(At.current.touched,nn),isSubmitted:At.current.isSubmitted},Mt.current));let Cn=Pt(nn,!1),zn=!isEmptyObject(Cn)||!Nn&&Et(nn);if(Nn&&!get(At.current.touched,nn)&&Ft.current.touched&&(set(At.current.touched,nn,!0),Cn=Object.assign(Object.assign({},Cn),{touched:At.current.touched})),!Ge&&isCheckBoxInput($t)&&set(ct.current,nn,getFieldValue(Xe,nn)),En)return!Nn&&lt(nn),(!isEmptyObject(Cn)||zn&&isEmptyObject(Cn))&&Tt(Cn);if(xt(),pt.current){const{errors:jn}=await pt.current(jt(),ht.current,yt),Qn=At.current.isValid;if(rn=get(jn,nn),isCheckBoxInput($t)&&!rn&&pt.current){const Hn=getFieldArrayParentName(nn),wn=get(jn,Hn,{});wn.type&&wn.message&&(rn=wn),Hn&&(wn||get(At.current.errors,Hn))&&(nn=Hn)}pn=isEmptyObject(jn),Qn!==pn&&(zn=!0)}else rn=(await validateField(Xe,yt,sn,ct))[nn];!Nn&&lt(nn),wt(nn,rn,zn,Cn,pn)}};function Qt(Ht){if(!Ge){let $t=cloneObject(Ht);for(const nn of gt.current)isKey(nn)&&!$t[nn]&&($t=Object.assign(Object.assign({},$t),{[nn]:[]}));return $t}return Ht}function jt(Ht){if(isString$2(Ht))return getFieldValue(Xe,Ht,ct);if(Array.isArray(Ht)){const $t={};for(const nn of Ht)set($t,nn,getFieldValue(Xe,nn,ct));return $t}return Qt(getFieldsValues(Xe,cloneObject(ct.current),Ge))}const zt=React$1.useCallback(async(Ht={})=>{const $t=isEmptyObject(Xe.current)?it.current:{},{errors:nn}=await pt.current(Object.assign(Object.assign(Object.assign({},$t),jt()),Ht),ht.current,yt)||{},sn=isEmptyObject(nn);At.current.isValid!==sn&&Tt({isValid:sn})},[yt]),Yt=React$1.useCallback((Ht,$t)=>{findRemovedFieldAndRemoveListener(Xe,ut.current,Ht,ct,Ge,$t),Ge&&(unset(at.current,Ht.ref.name),unset(rt.current,Ht.ref.name))},[Ge]),_t=React$1.useCallback(Ht=>{if(st.current)Tt();else{for(const $t of nt.current)if($t.startsWith(Ht)){Tt();break}lt(Ht)}},[]),Jt=React$1.useCallback((Ht,$t)=>{Ht&&(Yt(Ht,$t),Ge&&!compact(Ht.options||[]).length&&(unset(At.current.errors,Ht.ref.name),set(At.current.dirtyFields,Ht.ref.name,!0),Tt({isDirty:Zt()}),Ft.current.isValid&&pt.current&&zt(),_t(Ht.ref.name)))},[zt,Yt]);function ln(Ht){Ht&&(Array.isArray(Ht)?Ht:[Ht]).forEach($t=>Xe.current[$t]&&isKey($t)?delete At.current.errors[$t]:unset(At.current.errors,$t)),Tt({errors:Ht?At.current.errors:{}})}function cn(Ht,$t){const nn=(Xe.current[Ht]||{}).ref;set(At.current.errors,Ht,Object.assign(Object.assign({},$t),{ref:nn})),Tt({isValid:!1}),$t.shouldFocus&&nn&&nn.focus&&nn.focus()}const hn=React$1.useCallback((Ht,$t,nn)=>{const sn=nn?tt.current[nn]:nt.current;let rn=getFieldsValues(Xe,cloneObject(ct.current),Ge,!1,Ht);if(isString$2(Ht)){const Nn=getFieldArrayParentName(Ht)||Ht;return gt.current.has(Nn)&&(rn=Object.assign(Object.assign({},$e.current),rn)),assignWatchFields(rn,Ht,sn,isUndefined$1(get(it.current,Ht))?$t:get(it.current,Ht),!0)}const pn=isUndefined$1($t)?it.current:$t;return Array.isArray(Ht)?Ht.reduce((Nn,En)=>Object.assign(Object.assign({},Nn),{[En]:assignWatchFields(rn,En,sn,pn)}),{}):(st.current=isUndefined$1(nn),transformToNestObject(!isEmptyObject(rn)&&rn||pn))},[]);function yn(Ht,$t){return hn(Ht,$t)}function Tn(Ht){for(const $t of Array.isArray(Ht)?Ht:[Ht])Jt(Xe.current[$t],!0)}function on(Ht,$t={}){if(process.env.NODE_ENV!=="production"){if(!Ht.name)return console.warn("📋 Field is missing `name` attribute",Ht,"https://react-hook-form.com/api#useForm");if(gt.current.has(Ht.name.split(/\[\d+\]$/)[0])&&!RegExp(`^${Ht.name.split(/\[\d+\]$/)[0]}[\\d+].\\w+`.replace(/\[/g,"\\[").replace(/\]/g,"\\]")).test(Ht.name))return console.warn('📋 `name` prop should be in object shape: name="test[index].name"',Ht,"https://react-hook-form.com/api#useFieldArray")}const{name:nn,type:sn,value:rn}=Ht,pn=Object.assign({ref:Ht},$t),Nn=Xe.current,En=isRadioOrCheckboxFunction(Ht),Cn=isNameInFieldArray(gt.current,nn),zn=xn=>isWeb&&(!isHTMLElement(Ht)||xn===Ht);let jn=Nn[nn],Qn=!0,Hn;if(jn&&(En?Array.isArray(jn.options)&&compact(jn.options).find(xn=>rn===xn.ref.value&&zn(xn.ref)):zn(jn.ref))){Nn[nn]=Object.assign(Object.assign({},jn),$t);return}sn?jn=En?Object.assign({options:[...compact(jn&&jn.options||[]),{ref:Ht}],ref:{type:sn,name:nn}},$t):Object.assign({},pn):jn=pn,Nn[nn]=jn;const wn=isUndefined$1(get(ct.current,nn));(!isEmptyObject(it.current)||!wn)&&(Hn=get(wn?it.current:ct.current,nn),Qn=isUndefined$1(Hn),!Qn&&!Cn&&Ct(nn,Hn)),isEmptyObject($t)||(set(rt.current,nn,!0),!vt&&Ft.current.isValid&&validateField(Xe,yt,jn,ct).then(xn=>{const Yn=At.current.isValid;isEmptyObject(xn)?set(at.current,nn,!0):unset(at.current,nn),Yn!==isEmptyObject(xn)&&Tt()})),Ge&&!(Cn&&Qn)&&!Cn&&unset(At.current.dirtyFields,nn),sn&&attachEventListeners(En&&jn.options?jn.options[jn.options.length-1]:jn,En||isSelectInput(Ht),ut.current)}function fn(Ht,$t){if(!isWindowUndefined)if(isString$2(Ht))on({name:Ht},$t);else if(isObject$4(Ht)&&"name"in Ht)on(Ht,$t);else return nn=>nn&&on(nn,Ht)}const mn=React$1.useCallback((Ht,$t)=>async nn=>{nn&&nn.preventDefault&&(nn.preventDefault(),nn.persist());let sn={},rn=Qt(getFieldsValues(Xe,cloneObject(ct.current),Ge,!0));Ft.current.isSubmitting&&Tt({isSubmitting:!0});try{if(pt.current){const{errors:pn,values:Nn}=await pt.current(rn,ht.current,yt);At.current.errors=sn=pn,rn=Nn}else for(const pn of Object.values(Xe.current))if(pn){const{name:Nn}=pn.ref,En=await validateField(Xe,yt,pn,ct);En[Nn]?(set(sn,Nn,En[Nn]),unset(at.current,Nn)):get(rt.current,Nn)&&(unset(At.current.errors,Nn),set(at.current,Nn,!0))}isEmptyObject(sn)&&Object.keys(At.current.errors).every(pn=>pn in Xe.current)?(Tt({errors:{},isSubmitting:!0}),await Ht(rn,nn)):(At.current.errors=Object.assign(Object.assign({},At.current.errors),sn),$t&&await $t(At.current.errors,nn),Je&&focusOnErrorField(Xe.current,At.current.errors))}finally{At.current.isSubmitting=!1,Tt({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:isEmptyObject(At.current.errors),submitCount:At.current.submitCount+1})}},[Je,yt]),vn=({errors:Ht,isDirty:$t,isSubmitted:nn,touched:sn,isValid:rn,submitCount:pn,dirtyFields:Nn})=>{rn||(at.current={},rt.current={}),Ke.current={},nt.current=new Set,st.current=!1,Tt({submitCount:pn?At.current.submitCount:0,isDirty:$t?At.current.isDirty:!1,isSubmitted:nn?At.current.isSubmitted:!1,isValid:rn?At.current.isValid:!1,dirtyFields:Nn?At.current.dirtyFields:{},touched:sn?At.current.touched:{},errors:Ht?At.current.errors:{},isSubmitting:!1,isSubmitSuccessful:!1})},un=(Ht,$t={})=>{if(isWeb){for(const nn of Object.values(Xe.current))if(nn){const{ref:sn,options:rn}=nn,pn=isRadioOrCheckboxFunction(sn)&&Array.isArray(rn)?rn[0].ref:sn;if(isHTMLElement(pn))try{pn.closest("form").reset();break}catch{}}}Xe.current={},it.current=Object.assign({},Ht||it.current),Ht&&lt(""),Object.values(dt.current).forEach(nn=>isFunction$1(nn)&&nn()),ct.current=Ge?{}:cloneObject(Ht||it.current),vn($t)};React$1.useEffect(()=>{Ue&&Ft.current.isValid&&zt(),St.current=St.current||!isWeb?St.current:onDomRemove(Xe,Jt)},[Jt,it.current]),React$1.useEffect(()=>()=>{St.current&&St.current.disconnect(),ot.current=!0,process.env.NODE_ENV==="production"&&Object.values(Xe.current).forEach(Ht=>Jt(Ht,!0))},[]),!Ue&&Ft.current.isValid&&(It.isValid=deepEqual(at.current,rt.current)&&isEmptyObject(At.current.errors));const dn={trigger:Kt,setValue:React$1.useCallback(Ut,[kt,Kt]),getValues:React$1.useCallback(jt,[]),register:React$1.useCallback(fn,[it.current]),unregister:React$1.useCallback(Tn,[]),formState:isProxyEnabled?new Proxy(It,{get:(Ht,$t)=>{if(process.env.NODE_ENV!=="production"&&$t==="isValid"&&vt&&console.warn("📋 `formState.isValid` is applicable with `onTouched`, `onChange` or `onBlur` mode. https://react-hook-form.com/api#formState"),$t in Ht)return Ft.current[$t]=!0,Ht[$t]}}):It},qt=React$1.useMemo(()=>Object.assign({isFormDirty:Zt,updateWatchedValue:_t,shouldUnregister:Ge,updateFormState:Tt,removeFieldEventListener:Yt,watchInternal:hn,mode:Mt.current,reValidateMode:{isReValidateOnBlur:Rt,isReValidateOnChange:bt},validateResolver:Ue?zt:void 0,fieldsRef:Xe,resetFieldArrayFunctionRef:dt,useWatchFieldsRef:tt,useWatchRenderFunctionsRef:et,fieldArrayDefaultValuesRef:Ke,validFieldsRef:at,fieldsWithValidationRef:rt,fieldArrayNamesRef:gt,readFormStateRef:Ft,formStateRef:At,defaultValuesRef:it,shallowFieldsStateRef:ct,fieldArrayValuesRef:$e},dn),[it.current,_t,Ge,Yt,hn]);return Object.assign({watch:yn,control:qt,handleSubmit:mn,reset:React$1.useCallback(un,[]),clearErrors:React$1.useCallback(ln,[]),setError:React$1.useCallback(cn,[]),errors:It.errors},dn)}/*! *****************************************************************************
2362
+ `);return tt.length===1?tt.join(" "):tt.filter(et=>!!et.trim()).map(et=>Ge(et)).join(" ")},$e=({title:nt,content:tt,isDefault:et})=>{addConsent({title:`${et?Ge(nt):nt}`,content:et?Ke(tt):tt,status:!0,session:ue})};return React$1.useEffect(()=>{if(me||Ue){Xe({title:me||defaultPrivacyConsent.title,text:Ue||defaultPrivacyConsent.text,consentType:defaultPrivacyConsent.consentType,default:!Ue});return}getPrivacyConsentData({session:ue,type:"PRIVACY"}).then(({consents:nt})=>{const tt=nt.find(({consentType:et})=>et==="PRIVACY");tt!=null&&tt.text?Xe({...tt,title:(tt==null?void 0:tt.title.trim())||defaultPrivacyConsent.title,text:tt.text.trim()||defaultPrivacyConsent.text,default:!(tt!=null&&tt.text)}):Xe(defaultPrivacyConsent)}).catch(()=>{Xe(defaultPrivacyConsent)})},[ue,me,Ue]),He?jsx(NormalPrivacyConsent,{consent:He,goNext:Qe,addPrivacyConsent:$e,session:ue,isAeroMexicoClient:Ze,customCheck:Je}):null}function renderUserConsent(ue,{session:me,onSuccess:Ue,title:Qe,text:Ze,isAeroMexicoClient:Je=!1,customCheck:Ge=null}){const He=createRoot$1(ue),Xe=handleUnmountRoot(Ue,He,ue);customRender(jsx(App$1,{token:me.token,children:jsx(PrivacyConsent,{goNext:Xe,session:me,title:Qe,text:Ze,isAeroMexicoClient:Je,customCheck:Ge})}),ue,He)}const version="1.70.0";function r(ue){for(var me="",Ue=0;Ue<ue.length;++Ue)if(Ue>0){var Qe=ue[Ue].toLowerCase();Qe!==ue[Ue]?me+=" ".concat(Qe):me+=ue[Ue]}else me+=ue[Ue].toUpperCase();return me}function o(ue,me){return function(Ue,Qe){return Object.prototype.hasOwnProperty.call(Ue,Qe)}(ue,me)?ue[me]:void 0}var i$1={default:"endpoint"},u={default:"tlsEndpoint"},a="Client timeout",R="Network connection error",c="Network request aborted",s="Response cannot be parsed",E="Blocked by CSP",f="The endpoint parameter is not a valid URL",d=r("WrongRegion"),l=r("SubscriptionNotActive"),_=r("UnsupportedVersion"),p=r("InstallationMethodRestricted"),v=r("HostnameRestricted"),O=r("IntegrationFailed"),I="API key required",h="API key not found",N="API key expired",T="Request cannot be parsed",m="Request failed",w="Request failed to process",A="Too many requests, rate limit exceeded",P="Not available for this origin",y="Not available with restricted header",D=I,S=h,L=N,U="3.8.6",b="9319";function g(ue,me){var Ue=[];return function(Qe,Ze){var Je=5,Ge=(tt=Qe,et=__spreadArray$1([],tt,!0),{current:function(){return et[0]},postpone:function(){var at=et.shift();at!==void 0&&et.push(at)},exclude:function(){et.shift()}}),He=(Ke=100,$e=3e3,nt=0,function(){return Math.random()*Math.min($e,Ke*Math.pow(2,nt++))}),Xe=Ge.current(),Ke,$e,nt,tt,et;if(Xe===void 0)return Promise.reject(new TypeError("The list of script URL patterns is empty"));var rt=function(at,it){return Ze(at).catch(function(ot){if(it+1>=Je)throw ot;(function(ct){if(!(ct instanceof Error))return!1;var dt=ct.message;return dt===E||dt===b})(ot)?Ge.exclude():Ge.postpone();var st,ut=Ge.current();if(ut===void 0)throw ot;return(st=He(),new Promise(function(ct){return setTimeout(ct,st)})).then(function(){return rt(ut,it+1)})})};return rt(Xe,0)}(ue,function(Qe){var Ze=new Date,Je=function(He){return Ue.push({url:Qe,startedAt:Ze,finishedAt:new Date,error:He})},Ge=me(Qe);return Ge.then(function(){return Je()},Je),Ge}).then(function(Qe){return[Qe,Ue]})}var C="https://fpnpmcdn.net/v<version>/<apiKey>/loader_v<loaderVersion>.js",K=C,M="Failed to load the JS script of the agent";function B(ue){var me;ue.scriptUrlPattern;var Ue=ue.token,Qe=ue.apiKey,Ze=Qe===void 0?Ue:Qe,Je=__rest$1(ue,["scriptUrlPattern","token","apiKey"]),Ge=(me=o(ue,"scriptUrlPattern"))!==null&&me!==void 0?me:C,He=function(){var $e=[],nt=function(){$e.push({time:new Date,state:document.visibilityState})},tt=function(et,rt,at,it){return et.addEventListener(rt,at,it),function(){return et.removeEventListener(rt,at,it)}}(document,"visibilitychange",nt);return nt(),[$e,tt]}(),Xe=He[0],Ke=He[1];return Promise.resolve().then(function(){if(!Ze||typeof Ze!="string")throw new Error(I);var $e=function(nt,tt){return(Array.isArray(nt)?nt:[nt]).map(function(et){return function(rt,at){var it=encodeURIComponent;return rt.replace(/<[^<>]+>/g,function(ot){return ot==="<version>"?"3":ot==="<apiKey>"?it(at):ot==="<loaderVersion>"?it(U):ot})}(String(et),tt)})}(Ge,Ze);return g($e,F)}).catch(function($e){throw Ke(),function(nt){return nt instanceof Error&&nt.message===b?new Error(M):nt}($e)}).then(function($e){var nt=$e[0],tt=$e[1];return Ke(),nt.load(__assign$1(__assign$1({},Je),{ldi:{attempts:tt,visibilityStates:Xe}}))})}function F(ue){return function(me,Ue,Qe,Ze){var Je,Ge=document,He="securitypolicyviolation",Xe=function($e){var nt=new URL(me,location.href),tt=$e.blockedURI;tt!==nt.href&&tt!==nt.protocol.slice(0,-1)&&tt!==nt.origin||(Je=$e,Ke())};Ge.addEventListener(He,Xe);var Ke=function(){return Ge.removeEventListener(He,Xe)};return Ze==null||Ze.then(Ke,Ke),Promise.resolve().then(Ue).then(function($e){return Ke(),$e},function($e){return new Promise(function(nt){return setTimeout(nt)}).then(function(){if(Ke(),Je)return Qe(Je);throw $e})})}(ue,function(){return function(me){return new Promise(function(Ue,Qe){var Ze=document.createElement("script"),Je=function(){var He;return(He=Ze.parentNode)===null||He===void 0?void 0:He.removeChild(Ze)},Ge=document.head||document.getElementsByTagName("head")[0];Ze.onload=function(){Je(),Ue()},Ze.onerror=function(){Je(),Qe(new Error(M))},Ze.async=!0,Ze.src=me,Ge.appendChild(Ze)})}(ue)},function(){throw new Error(E)}).then(V)}function V(){var ue=window,me="__fpjs_p_l_b",Ue=ue[me];if(function(Qe,Ze){var Je,Ge=(Je=Object.getOwnPropertyDescriptor)===null||Je===void 0?void 0:Je.call(Object,Qe,Ze);Ge!=null&&Ge.configurable?delete Qe[Ze]:Ge&&!Ge.writable||(Qe[Ze]=void 0)}(ue,me),typeof(Ue==null?void 0:Ue.load)!="function")throw new Error(b);return Ue}var k={load:B,defaultScriptUrlPattern:K,ERROR_SCRIPT_LOAD_FAIL:M,ERROR_API_KEY_EXPIRED:N,ERROR_API_KEY_INVALID:h,ERROR_API_KEY_MISSING:I,ERROR_BAD_REQUEST_FORMAT:T,ERROR_BAD_RESPONSE_FORMAT:s,ERROR_CLIENT_TIMEOUT:a,ERROR_CSP_BLOCK:E,ERROR_FORBIDDEN_ENDPOINT:v,ERROR_FORBIDDEN_HEADER:y,ERROR_FORBIDDEN_ORIGIN:P,ERROR_GENERAL_SERVER_FAILURE:m,ERROR_INSTALLATION_METHOD_RESTRICTED:p,ERROR_INTEGRATION_FAILURE:O,ERROR_INVALID_ENDPOINT:f,ERROR_NETWORK_ABORT:c,ERROR_NETWORK_CONNECTION:R,ERROR_RATE_LIMIT:A,ERROR_SERVER_TIMEOUT:w,ERROR_SUBSCRIPTION_NOT_ACTIVE:l,ERROR_TOKEN_EXPIRED:L,ERROR_TOKEN_INVALID:S,ERROR_TOKEN_MISSING:D,ERROR_UNSUPPORTED_VERSION:_,ERROR_WRONG_REGION:d,defaultEndpoint:i$1,defaultTlsEndpoint:u};let fingerprintApiKey;function setFingerprintApiKey(ue){fingerprintApiKey=ue}async function getFingerPrint(){return k.load({token:fingerprintApiKey,endpoint:"https://fingerprint.incodesmile.com",scriptUrlPattern:"https://fingerprint.incodesmile.com/web/v<version>/<apiKey>/loader_v<loaderVersion>.js"}).then(ue=>ue.get({extendedResult:!0}))}const fingerPrintUrl="/omni/add/device-fingerprint";function postFingerprint({hash:ue,ip:me,deviceType:Ue,token:Qe,data:Ze,osVersion:Je,deviceModel:Ge,browser:He,sdkVersion:Xe,hasLiedBrowser:Ke,hostingApp:$e,ipLocation:nt}){return exports.api.post(fingerPrintUrl,{hash:ue,ip:me,deviceType:Ue,data:Ze,osVersion:Je,deviceModel:Ge,browser:He,hasLiedBrowser:Ke,sdkVersion:Xe,hostingApp:$e,ipLocation:nt},{headers:{"X-Incode-Hardware-Id":Qe}}).then(tt=>tt.data).catch(tt=>Promise.reject(tt.response.data))}function formatDeviceModel({vendor:ue,model:me}){return`${ue||""} ${me||""}`.trim()}const emptyFingerprint={visitorId:void 0,ip:void 0,ipLocation:{country:{name:void 0},subdivisions:[],city:{name:void 0},latitude:void 0,longitude:void 0}};async function sendFingerprint({token:ue},me=!0,Ue=!0){var Xe,Ke,$e;const Qe="WEBAPP",{os:Ze,device:Je,browser:Ge}=getUAParserResults(),He=Ue?await getFingerPrint().catch(nt=>(addEvent({code:"fingerprintFetchFailed",payload:{message:nt.message},token:ue}),emptyFingerprint)):emptyFingerprint;return postFingerprint({hash:He.visitorId||"",ip:me&&He.ip||"",deviceType:Qe,token:ue,data:JSON.stringify(He),osVersion:`${Ze.name} ${Ze.version}`,deviceModel:formatDeviceModel(Je),browser:`${Ge.name} ${Ge.version}`,hasLiedBrowser:isBrowserSimulation(),hostingApp:options.hostingApp,sdkVersion:version,ipLocation:{ipCountry:(Xe=He.ipLocation.country)==null?void 0:Xe.name,ipRegion:(Ke=He.ipLocation.subdivisions)==null?void 0:Ke[0].name,ipCity:($e=He.ipLocation.city)==null?void 0:$e.name,ipLatitude:He.ipLocation.latitude,ipLongitude:He.ipLocation.longitude}}).then(nt=>(emptyDeviceStatsQueue(ue),nt))}function mapI18nLang(ue){const me={en:"en-US",es:"es-ES",pt:"pt-BR"},Ue=ue==null?void 0:ue.substring(0,2);return me[Ue]||"en-US"}const createSessionUrl="/omni/start";async function createNewSession({externalId:ue,externalCustomerId:me,configurationId:Ue,uuid:Qe,interviewId:Ze,customFields:Je,language:Ge}={}){const He=Ge||mapI18nLang(i18nInstance.language);try{const Xe=await exports.api.post(createSessionUrl,{externalId:ue,externalCustomerId:me,configurationId:Ue,uuid:Qe,interviewId:Ze,customFields:Je,language:He});state.token=Xe.data;const Ke=Xe.data;emptyQueue(Ke.token);const $e=await sendFingerprint({token:Ke.token,interviewId:Ke.interviewId}).catch(()=>({regulationType:"",showMandatoryConsent:!1}));Ke.regulationType=$e.regulationType??"",Ke.showMandatoryConsent=$e.showMandatoryConsent??!1;const tt=new UAParser().getResult();return addEvent({code:"browser",payload:{userAgent:window.navigator.userAgent,isWebRtcSupported:isWebRtcSupported(),...tt},token:Ke.token}),Ke}catch(Xe){throw Xe!=null&&Xe.response?Xe.response.data:Xe}}const createRedirectUrl=async({session:ue})=>{const{url:me}=await exports.api.get("/omni/onboarding-url",{params:{clientId:ue.clientId},headers:{"X-Incode-Hardware-Id":ue.token}}).then(Ue=>Ue.data);return me};async function createSession$4(ue,me,{externalCustomerId:Ue,configurationId:Qe,uuid:Ze,interviewId:Je,customFields:Ge,language:He}={}){return createNewSession({externalId:me,externalCustomerId:Ue,configurationId:Qe,uuid:Ze,interviewId:Je,customFields:Ge,language:He})}var isHTMLElement=ue=>ue instanceof HTMLElement;const EVENTS={BLUR:"blur",CHANGE:"change",INPUT:"input"},VALIDATION_MODE={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},SELECT="select",UNDEFINED="undefined",INPUT_VALIDATION_RULES={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"};function attachEventListeners({ref:ue},me,Ue){isHTMLElement(ue)&&Ue&&(ue.addEventListener(me?EVENTS.CHANGE:EVENTS.INPUT,Ue),ue.addEventListener(EVENTS.BLUR,Ue))}var isNullOrUndefined=ue=>ue==null;const isObjectType=ue=>typeof ue=="object";var isObject$4=ue=>!isNullOrUndefined(ue)&&!Array.isArray(ue)&&isObjectType(ue)&&!(ue instanceof Date),isKey=ue=>/^\w*$/.test(ue),compact=ue=>ue.filter(Boolean),stringToPath=ue=>compact(ue.replace(/["|']/g,"").replace(/\[/g,".").replace(/\]/g,"").split("."));function set(ue,me,Ue){let Qe=-1;const Ze=isKey(me)?[me]:stringToPath(me),Je=Ze.length,Ge=Je-1;for(;++Qe<Je;){const He=Ze[Qe];let Xe=Ue;if(Qe!==Ge){const Ke=ue[He];Xe=isObject$4(Ke)||Array.isArray(Ke)?Ke:isNaN(+Ze[Qe+1])?{}:[]}ue[He]=Xe,ue=ue[He]}return ue}var transformToNestObject=(ue,me={})=>{for(const Ue in ue)isKey(Ue)?me[Ue]=ue[Ue]:set(me,Ue,ue[Ue]);return me},isUndefined$1=ue=>ue===void 0,get=(ue={},me,Ue)=>{const Qe=compact(me.split(/[,[\].]+?/)).reduce((Ze,Je)=>isNullOrUndefined(Ze)?Ze:Ze[Je],ue);return isUndefined$1(Qe)||Qe===ue?isUndefined$1(ue[me])?Ue:ue[me]:Qe},focusOnErrorField=(ue,me)=>{for(const Ue in ue)if(get(me,Ue)){const Qe=ue[Ue];if(Qe){if(Qe.ref.focus&&isUndefined$1(Qe.ref.focus()))break;if(Qe.options){Qe.options[0].ref.focus();break}}}},removeAllEventListeners=(ue,me)=>{isHTMLElement(ue)&&ue.removeEventListener&&(ue.removeEventListener(EVENTS.INPUT,me),ue.removeEventListener(EVENTS.CHANGE,me),ue.removeEventListener(EVENTS.BLUR,me))};const defaultReturn={isValid:!1,value:null};var getRadioValue=ue=>Array.isArray(ue)?ue.reduce((me,Ue)=>Ue&&Ue.ref.checked?{isValid:!0,value:Ue.ref.value}:me,defaultReturn):defaultReturn,getMultipleSelectValue=ue=>[...ue].filter(({selected:me})=>me).map(({value:me})=>me),isRadioInput=ue=>ue.type==="radio",isFileInput=ue=>ue.type==="file",isCheckBoxInput=ue=>ue.type==="checkbox",isMultipleSelect=ue=>ue.type===`${SELECT}-multiple`;const defaultResult={value:!1,isValid:!1},validResult={value:!0,isValid:!0};var getCheckboxValue=ue=>{if(Array.isArray(ue)){if(ue.length>1){const Ze=ue.filter(Je=>Je&&Je.ref.checked).map(({ref:{value:Je}})=>Je);return{value:Ze,isValid:!!Ze.length}}const{checked:me,value:Ue,attributes:Qe}=ue[0].ref;return me?Qe&&!isUndefined$1(Qe.value)?isUndefined$1(Ue)||Ue===""?validResult:{value:Ue,isValid:!0}:validResult:defaultResult}return defaultResult};function getFieldValue(ue,me,Ue,Qe,Ze){const Je=ue.current[me];if(Je){const{ref:{value:Ge,disabled:He},ref:Xe,valueAsNumber:Ke,valueAsDate:$e,setValueAs:nt}=Je;return He&&Qe?void 0:isFileInput(Xe)?Xe.files:isRadioInput(Xe)?getRadioValue(Je.options).value:isMultipleSelect(Xe)?getMultipleSelectValue(Xe.options):isCheckBoxInput(Xe)?getCheckboxValue(Je.options).value:Ze?Ge:Ke?Ge===""?NaN:+Ge:$e?Xe.valueAsDate:nt?nt(Ge):Ge}if(Ue)return get(Ue.current,me)}function isDetached(ue){return ue?!(ue instanceof HTMLElement)||ue.nodeType===Node.DOCUMENT_NODE?!1:isDetached(ue.parentNode):!0}var isEmptyObject=ue=>isObject$4(ue)&&!Object.keys(ue).length,isBoolean=ue=>typeof ue=="boolean";function baseGet(ue,me){const Ue=me.slice(0,-1).length;let Qe=0;for(;Qe<Ue;)ue=isUndefined$1(ue)?Qe++:ue[me[Qe++]];return ue}function unset(ue,me){const Ue=isKey(me)?[me]:stringToPath(me),Qe=Ue.length==1?ue:baseGet(ue,Ue),Ze=Ue[Ue.length-1];let Je;Qe&&delete Qe[Ze];for(let Ge=0;Ge<Ue.slice(0,-1).length;Ge++){let He=-1,Xe;const Ke=Ue.slice(0,-(Ge+1)),$e=Ke.length-1;for(Ge>0&&(Je=ue);++He<Ke.length;){const nt=Ke[He];Xe=Xe?Xe[nt]:ue[nt],$e===He&&(isObject$4(Xe)&&isEmptyObject(Xe)||Array.isArray(Xe)&&!Xe.filter(tt=>isObject$4(tt)&&!isEmptyObject(tt)||isBoolean(tt)).length)&&(Je?delete Je[nt]:delete ue[nt]),Je=Xe}}return ue}const isSameRef=(ue,me)=>ue&&ue.ref===me;function findRemovedFieldAndRemoveListener(ue,me,Ue,Qe,Ze,Je){const{ref:Ge,ref:{name:He}}=Ue,Xe=ue.current[He];if(!Ze){const Ke=getFieldValue(ue,He,Qe);!isUndefined$1(Ke)&&set(Qe.current,He,Ke)}if(!Ge.type||!Xe){delete ue.current[He];return}isRadioInput(Ge)||isCheckBoxInput(Ge)?Array.isArray(Xe.options)&&Xe.options.length?(compact(Xe.options).forEach((Ke={},$e)=>{(isDetached(Ke.ref)&&isSameRef(Ke,Ke.ref)||Je)&&(removeAllEventListeners(Ke.ref,me),unset(Xe.options,`[${$e}]`))}),Xe.options&&!compact(Xe.options).length&&delete ue.current[He]):delete ue.current[He]:(isDetached(Ge)&&isSameRef(Xe,Ge)||Je)&&(removeAllEventListeners(Ge,me),delete ue.current[He])}var isPrimitive=ue=>isNullOrUndefined(ue)||!isObjectType(ue);function deepMerge(ue,me){if(isPrimitive(ue)||isPrimitive(me))return me;for(const Ue in me){const Qe=ue[Ue],Ze=me[Ue];try{ue[Ue]=isObject$4(Qe)&&isObject$4(Ze)||Array.isArray(Qe)&&Array.isArray(Ze)?deepMerge(Qe,Ze):Ze}catch{}}return ue}function deepEqual(ue,me,Ue){if(isPrimitive(ue)||isPrimitive(me)||ue instanceof Date||me instanceof Date)return ue===me;if(!React$1.isValidElement(ue)){const Qe=Object.keys(ue),Ze=Object.keys(me);if(Qe.length!==Ze.length)return!1;for(const Je of Qe){const Ge=ue[Je];if(!(Ue&&Je==="ref")){const He=me[Je];if((isObject$4(Ge)||Array.isArray(Ge))&&(isObject$4(He)||Array.isArray(He))?!deepEqual(Ge,He,Ue):Ge!==He)return!1}}}return!0}function setDirtyFields(ue,me,Ue,Qe,Ze){let Je=-1;for(;++Je<ue.length;){for(const Ge in ue[Je])Array.isArray(ue[Je][Ge])?(!Ue[Je]&&(Ue[Je]={}),Ue[Je][Ge]=[],setDirtyFields(ue[Je][Ge],get(me[Je]||{},Ge,[]),Ue[Je][Ge],Ue[Je],Ge)):deepEqual(get(me[Je]||{},Ge),ue[Je][Ge])?set(Ue[Je]||{},Ge):Ue[Je]=Object.assign(Object.assign({},Ue[Je]),{[Ge]:!0});Qe&&!Ue.length&&delete Qe[Ze]}return Ue}var setFieldArrayDirtyFields=(ue,me,Ue)=>deepMerge(setDirtyFields(ue,me,Ue.slice(0,ue.length)),setDirtyFields(me,ue,Ue.slice(0,ue.length))),isString$2=ue=>typeof ue=="string",getFieldsValues=(ue,me,Ue,Qe,Ze)=>{const Je={};for(const Ge in ue.current)(isUndefined$1(Ze)||(isString$2(Ze)?Ge.startsWith(Ze):Array.isArray(Ze)&&Ze.find(He=>Ge.startsWith(He))))&&(Je[Ge]=getFieldValue(ue,Ge,void 0,Qe));return Ue?transformToNestObject(Je):deepMerge(me,transformToNestObject(Je))},isErrorStateChanged=({errors:ue,name:me,error:Ue,validFields:Qe,fieldsWithValidation:Ze})=>{const Je=isUndefined$1(Ue),Ge=get(ue,me);return Je&&!!Ge||!Je&&!deepEqual(Ge,Ue,!0)||Je&&get(Ze,me)&&!get(Qe,me)},isRegex=ue=>ue instanceof RegExp,getValueAndMessage=ue=>isObject$4(ue)&&!isRegex(ue)?ue:{value:ue,message:""},isFunction$1=ue=>typeof ue=="function",isMessage=ue=>isString$2(ue)||React$1.isValidElement(ue);function getValidateError(ue,me,Ue="validate"){if(isMessage(ue)||isBoolean(ue)&&!ue)return{type:Ue,message:isMessage(ue)?ue:"",ref:me}}var appendErrors=(ue,me,Ue,Qe,Ze)=>me?Object.assign(Object.assign({},Ue[ue]),{types:Object.assign(Object.assign({},Ue[ue]&&Ue[ue].types?Ue[ue].types:{}),{[Qe]:Ze||!0})}):{},validateField=async(ue,me,{ref:Ue,ref:{value:Qe},options:Ze,required:Je,maxLength:Ge,minLength:He,min:Xe,max:Ke,pattern:$e,validate:nt},tt)=>{const et=Ue.name,rt={},at=isRadioInput(Ue),it=isCheckBoxInput(Ue),ot=at||it,st=Qe==="",ut=appendErrors.bind(null,et,me,rt),ct=(dt,ht,pt,gt=INPUT_VALIDATION_RULES.maxLength,Mt=INPUT_VALIDATION_RULES.minLength)=>{const vt=dt?ht:pt;rt[et]=Object.assign({type:dt?gt:Mt,message:vt,ref:Ue},ut(dt?gt:Mt,vt))};if(Je&&(!at&&!it&&(st||isNullOrUndefined(Qe))||isBoolean(Qe)&&!Qe||it&&!getCheckboxValue(Ze).isValid||at&&!getRadioValue(Ze).isValid)){const{value:dt,message:ht}=isMessage(Je)?{value:!!Je,message:Je}:getValueAndMessage(Je);if(dt&&(rt[et]=Object.assign({type:INPUT_VALIDATION_RULES.required,message:ht,ref:ot?((ue.current[et].options||[])[0]||{}).ref:Ue},ut(INPUT_VALIDATION_RULES.required,ht)),!me))return rt}if((!isNullOrUndefined(Xe)||!isNullOrUndefined(Ke))&&Qe!==""){let dt,ht;const pt=getValueAndMessage(Ke),gt=getValueAndMessage(Xe);if(isNaN(Qe)){const Mt=Ue.valueAsDate||new Date(Qe);isString$2(pt.value)&&(dt=Mt>new Date(pt.value)),isString$2(gt.value)&&(ht=Mt<new Date(gt.value))}else{const Mt=Ue.valueAsNumber||parseFloat(Qe);isNullOrUndefined(pt.value)||(dt=Mt>pt.value),isNullOrUndefined(gt.value)||(ht=Mt<gt.value)}if((dt||ht)&&(ct(!!dt,pt.message,gt.message,INPUT_VALIDATION_RULES.max,INPUT_VALIDATION_RULES.min),!me))return rt}if(isString$2(Qe)&&!st&&(Ge||He)){const dt=getValueAndMessage(Ge),ht=getValueAndMessage(He),pt=!isNullOrUndefined(dt.value)&&Qe.length>dt.value,gt=!isNullOrUndefined(ht.value)&&Qe.length<ht.value;if((pt||gt)&&(ct(pt,dt.message,ht.message),!me))return rt}if(isString$2(Qe)&&$e&&!st){const{value:dt,message:ht}=getValueAndMessage($e);if(isRegex(dt)&&!dt.test(Qe)&&(rt[et]=Object.assign({type:INPUT_VALIDATION_RULES.pattern,message:ht,ref:Ue},ut(INPUT_VALIDATION_RULES.pattern,ht)),!me))return rt}if(nt){const dt=getFieldValue(ue,et,tt,!1,!0),ht=ot&&Ze?Ze[0].ref:Ue;if(isFunction$1(nt)){const pt=await nt(dt),gt=getValidateError(pt,ht);if(gt&&(rt[et]=Object.assign(Object.assign({},gt),ut(INPUT_VALIDATION_RULES.validate,gt.message)),!me))return rt}else if(isObject$4(nt)){let pt={};for(const[gt,Mt]of Object.entries(nt)){if(!isEmptyObject(pt)&&!me)break;const vt=await Mt(dt),Dt=getValidateError(vt,ht,gt);Dt&&(pt=Object.assign(Object.assign({},Dt),ut(gt,Dt.message)),me&&(rt[et]=pt))}if(!isEmptyObject(pt)&&(rt[et]=Object.assign({ref:ht},pt),!me))return rt}}return rt};const getPath=(ue,me,Ue=[])=>{for(const Qe in me){const Ze=ue+(isObject$4(me)?`.${Qe}`:`[${Qe}]`);isPrimitive(me[Qe])?Ue.push(Ze):getPath(Ze,me[Qe],Ue)}return Ue};var assignWatchFields=(ue,me,Ue,Qe,Ze)=>{let Je;return Ue.add(me),isEmptyObject(ue)||(Je=get(ue,me),(isObject$4(Je)||Array.isArray(Je))&&getPath(me,Je).forEach(Ge=>Ue.add(Ge))),isUndefined$1(Je)?Ze?Qe:get(Qe,me):Je},skipValidation=({isOnBlur:ue,isOnChange:me,isOnTouch:Ue,isTouched:Qe,isReValidateOnBlur:Ze,isReValidateOnChange:Je,isBlurEvent:Ge,isSubmitted:He,isOnAll:Xe})=>Xe?!1:!He&&Ue?!(Qe||Ge):(He?Ze:ue)?!Ge:(He?Je:me)?Ge:!0,getFieldArrayParentName=ue=>ue.substring(0,ue.indexOf("["));const isMatchFieldArrayName=(ue,me)=>RegExp(`^${me}([|.)\\d+`.replace(/\[/g,"\\[").replace(/\]/g,"\\]")).test(ue);var isNameInFieldArray=(ue,me)=>[...ue].some(Ue=>isMatchFieldArrayName(me,Ue)),isSelectInput=ue=>ue.type===`${SELECT}-one`;function onDomRemove(ue,me){const Ue=new MutationObserver(()=>{for(const Qe of Object.values(ue.current))if(Qe&&Qe.options)for(const Ze of Qe.options)Ze&&Ze.ref&&isDetached(Ze.ref)&&me(Qe);else Qe&&isDetached(Qe.ref)&&me(Qe)});return Ue.observe(window.document,{childList:!0,subtree:!0}),Ue}var isWeb=typeof window!==UNDEFINED&&typeof document!==UNDEFINED;function cloneObject(ue){var me;let Ue;if(isPrimitive(ue)||isWeb&&(ue instanceof File||isHTMLElement(ue))||!["Set","Map","Object","Date","Array"].includes((me=ue.constructor)===null||me===void 0?void 0:me.name))return ue;if(ue instanceof Date)return Ue=new Date(ue.getTime()),Ue;if(ue instanceof Set){Ue=new Set;for(const Qe of ue)Ue.add(Qe);return Ue}if(ue instanceof Map){Ue=new Map;for(const Qe of ue.keys())Ue.set(Qe,cloneObject(ue.get(Qe)));return Ue}Ue=Array.isArray(ue)?[]:{};for(const Qe in ue)Ue[Qe]=cloneObject(ue[Qe]);return Ue}var modeChecker=ue=>({isOnSubmit:!ue||ue===VALIDATION_MODE.onSubmit,isOnBlur:ue===VALIDATION_MODE.onBlur,isOnChange:ue===VALIDATION_MODE.onChange,isOnAll:ue===VALIDATION_MODE.all,isOnTouch:ue===VALIDATION_MODE.onTouched}),isRadioOrCheckboxFunction=ue=>isRadioInput(ue)||isCheckBoxInput(ue);const isWindowUndefined=typeof window===UNDEFINED,isProxyEnabled=isWeb?"Proxy"in window:typeof Proxy!==UNDEFINED;function useForm({mode:ue=VALIDATION_MODE.onSubmit,reValidateMode:me=VALIDATION_MODE.onChange,resolver:Ue,context:Qe,defaultValues:Ze={},shouldFocusError:Je=!0,shouldUnregister:Ge=!0,criteriaMode:He}={}){const Xe=React$1.useRef({}),Ke=React$1.useRef({}),$e=React$1.useRef({}),nt=React$1.useRef(new Set),tt=React$1.useRef({}),et=React$1.useRef({}),rt=React$1.useRef({}),at=React$1.useRef({}),it=React$1.useRef(Ze),ot=React$1.useRef(!1),st=React$1.useRef(!1),ut=React$1.useRef(),ct=React$1.useRef({}),dt=React$1.useRef({}),ht=React$1.useRef(Qe),pt=React$1.useRef(Ue),gt=React$1.useRef(new Set),Mt=React$1.useRef(modeChecker(ue)),{isOnSubmit:vt,isOnTouch:Dt}=Mt.current,yt=He===VALIDATION_MODE.all,[It,mt]=React$1.useState({isDirty:!1,isValidating:!1,dirtyFields:{},isSubmitted:!1,submitCount:0,touched:{},isSubmitting:!1,isSubmitSuccessful:!1,isValid:!vt,errors:{}}),Ft=React$1.useRef({isDirty:!isProxyEnabled,dirtyFields:!isProxyEnabled,touched:!isProxyEnabled||Dt,isValidating:!isProxyEnabled,isSubmitting:!isProxyEnabled,isValid:!isProxyEnabled}),At=React$1.useRef(It),St=React$1.useRef(),{isOnBlur:Rt,isOnChange:bt}=React$1.useRef(modeChecker(me)).current;ht.current=Qe,pt.current=Ue,At.current=It,ct.current=Ge?{}:isEmptyObject(ct.current)?cloneObject(Ze):ct.current;const Tt=React$1.useCallback((Ht={})=>{ot.current||(At.current=Object.assign(Object.assign({},At.current),Ht),mt(At.current))},[]),xt=()=>Ft.current.isValidating&&Tt({isValidating:!0}),wt=React$1.useCallback((Ht,$t,nn=!1,sn={},rn)=>{let pn=nn||isErrorStateChanged({errors:At.current.errors,error:$t,name:Ht,validFields:at.current,fieldsWithValidation:rt.current});const Nn=get(At.current.errors,Ht);$t?(unset(at.current,Ht),pn=pn||!Nn||!deepEqual(Nn,$t,!0),set(At.current.errors,Ht,$t)):((get(rt.current,Ht)||pt.current)&&(set(at.current,Ht,!0),pn=pn||Nn),unset(At.current.errors,Ht)),(pn&&!isNullOrUndefined(nn)||!isEmptyObject(sn)||Ft.current.isValidating)&&Tt(Object.assign(Object.assign(Object.assign({},sn),pt.current?{isValid:!!rn}:{}),{isValidating:!1}))},[]),Ct=React$1.useCallback((Ht,$t)=>{const{ref:nn,options:sn}=Xe.current[Ht],rn=isWeb&&isHTMLElement(nn)&&isNullOrUndefined($t)?"":$t;isRadioInput(nn)?(sn||[]).forEach(({ref:pn})=>pn.checked=pn.value===rn):isFileInput(nn)&&!isString$2(rn)?nn.files=rn:isMultipleSelect(nn)?[...nn.options].forEach(pn=>pn.selected=rn.includes(pn.value)):isCheckBoxInput(nn)&&sn?sn.length>1?sn.forEach(({ref:pn})=>pn.checked=Array.isArray(rn)?!!rn.find(Nn=>Nn===pn.value):rn===pn.value):sn[0].ref.checked=!!rn:nn.value=rn},[]),Zt=React$1.useCallback((Ht,$t)=>{if(Ft.current.isDirty){const nn=jt();return Ht&&$t&&set(nn,Ht,$t),!deepEqual(nn,it.current)}return!1},[]),Pt=React$1.useCallback((Ht,$t=!0)=>{if(Ft.current.isDirty||Ft.current.dirtyFields){const nn=!deepEqual(get(it.current,Ht),getFieldValue(Xe,Ht,ct)),sn=get(At.current.dirtyFields,Ht),rn=At.current.isDirty;nn?set(At.current.dirtyFields,Ht,!0):unset(At.current.dirtyFields,Ht);const pn={isDirty:Zt(),dirtyFields:At.current.dirtyFields},Nn=Ft.current.isDirty&&rn!==pn.isDirty||Ft.current.dirtyFields&&sn!==get(At.current.dirtyFields,Ht);return Nn&&$t&&Tt(pn),Nn?pn:{}}return{}},[]),Ot=React$1.useCallback(async(Ht,$t)=>{if(process.env.NODE_ENV!=="production"&&!Xe.current[Ht])return console.warn("📋 Field is missing with `name` attribute: ",Ht),!1;const nn=(await validateField(Xe,yt,Xe.current[Ht],ct))[Ht];return wt(Ht,nn,$t),isUndefined$1(nn)},[wt,yt]),Xt=React$1.useCallback(async Ht=>{const{errors:$t}=await pt.current(jt(),ht.current,yt),nn=At.current.isValid;if(Array.isArray(Ht)){const sn=Ht.map(rn=>{const pn=get($t,rn);return pn?set(At.current.errors,rn,pn):unset(At.current.errors,rn),!pn}).every(Boolean);return Tt({isValid:isEmptyObject($t),isValidating:!1}),sn}else{const sn=get($t,Ht);return wt(Ht,sn,nn!==isEmptyObject($t),{},isEmptyObject($t)),!sn}},[wt,yt]),Kt=React$1.useCallback(async Ht=>{const $t=Ht||Object.keys(Xe.current);if(xt(),pt.current)return Xt($t);if(Array.isArray($t)){!Ht&&(At.current.errors={});const nn=await Promise.all($t.map(async sn=>await Ot(sn,null)));return Tt({isValidating:!1}),nn.every(Boolean)}return await Ot($t)},[Xt,Ot]),Wt=React$1.useCallback((Ht,$t,{shouldDirty:nn,shouldValidate:sn})=>{const rn={};set(rn,Ht,$t);for(const pn of getPath(Ht,$t))Xe.current[pn]&&(Ct(pn,get(rn,pn)),nn&&Pt(pn),sn&&Kt(pn))},[Kt,Ct,Pt]),kt=React$1.useCallback((Ht,$t,nn)=>{if(!Ge&&!isPrimitive($t)&&set(ct.current,Ht,Array.isArray($t)?[...$t]:Object.assign({},$t)),Xe.current[Ht])Ct(Ht,$t),nn.shouldDirty&&Pt(Ht),nn.shouldValidate&&Kt(Ht);else if(!isPrimitive($t)&&(Wt(Ht,$t,nn),gt.current.has(Ht))){const sn=getFieldArrayParentName(Ht)||Ht;set(Ke.current,Ht,$t),dt.current[sn]({[sn]:get(Ke.current,sn)}),(Ft.current.isDirty||Ft.current.dirtyFields)&&nn.shouldDirty&&(set(At.current.dirtyFields,Ht,setFieldArrayDirtyFields($t,get(it.current,Ht,[]),get(At.current.dirtyFields,Ht,[]))),Tt({isDirty:!deepEqual(Object.assign(Object.assign({},jt()),{[Ht]:$t}),it.current)}))}!Ge&&set(ct.current,Ht,$t)},[Pt,Ct,Wt]),Et=Ht=>st.current||nt.current.has(Ht)||nt.current.has((Ht.match(/\w+/)||[])[0]),lt=Ht=>{let $t=!0;if(!isEmptyObject(tt.current))for(const nn in tt.current)(!Ht||!tt.current[nn].size||tt.current[nn].has(Ht)||tt.current[nn].has(getFieldArrayParentName(Ht)))&&(et.current[nn](),$t=!1);return $t};function Ut(Ht,$t,nn){kt(Ht,$t,nn||{}),Et(Ht)&&Tt(),lt(Ht)}ut.current=ut.current?ut.current:async({type:Ht,target:$t})=>{let nn=$t.name;const sn=Xe.current[nn];let rn,pn;if(sn){const Nn=Ht===EVENTS.BLUR,En=skipValidation(Object.assign({isBlurEvent:Nn,isReValidateOnChange:bt,isReValidateOnBlur:Rt,isTouched:!!get(At.current.touched,nn),isSubmitted:At.current.isSubmitted},Mt.current));let Cn=Pt(nn,!1),zn=!isEmptyObject(Cn)||!Nn&&Et(nn);if(Nn&&!get(At.current.touched,nn)&&Ft.current.touched&&(set(At.current.touched,nn,!0),Cn=Object.assign(Object.assign({},Cn),{touched:At.current.touched})),!Ge&&isCheckBoxInput($t)&&set(ct.current,nn,getFieldValue(Xe,nn)),En)return!Nn&&lt(nn),(!isEmptyObject(Cn)||zn&&isEmptyObject(Cn))&&Tt(Cn);if(xt(),pt.current){const{errors:jn}=await pt.current(jt(),ht.current,yt),Qn=At.current.isValid;if(rn=get(jn,nn),isCheckBoxInput($t)&&!rn&&pt.current){const Hn=getFieldArrayParentName(nn),wn=get(jn,Hn,{});wn.type&&wn.message&&(rn=wn),Hn&&(wn||get(At.current.errors,Hn))&&(nn=Hn)}pn=isEmptyObject(jn),Qn!==pn&&(zn=!0)}else rn=(await validateField(Xe,yt,sn,ct))[nn];!Nn&&lt(nn),wt(nn,rn,zn,Cn,pn)}};function Qt(Ht){if(!Ge){let $t=cloneObject(Ht);for(const nn of gt.current)isKey(nn)&&!$t[nn]&&($t=Object.assign(Object.assign({},$t),{[nn]:[]}));return $t}return Ht}function jt(Ht){if(isString$2(Ht))return getFieldValue(Xe,Ht,ct);if(Array.isArray(Ht)){const $t={};for(const nn of Ht)set($t,nn,getFieldValue(Xe,nn,ct));return $t}return Qt(getFieldsValues(Xe,cloneObject(ct.current),Ge))}const zt=React$1.useCallback(async(Ht={})=>{const $t=isEmptyObject(Xe.current)?it.current:{},{errors:nn}=await pt.current(Object.assign(Object.assign(Object.assign({},$t),jt()),Ht),ht.current,yt)||{},sn=isEmptyObject(nn);At.current.isValid!==sn&&Tt({isValid:sn})},[yt]),Yt=React$1.useCallback((Ht,$t)=>{findRemovedFieldAndRemoveListener(Xe,ut.current,Ht,ct,Ge,$t),Ge&&(unset(at.current,Ht.ref.name),unset(rt.current,Ht.ref.name))},[Ge]),_t=React$1.useCallback(Ht=>{if(st.current)Tt();else{for(const $t of nt.current)if($t.startsWith(Ht)){Tt();break}lt(Ht)}},[]),Jt=React$1.useCallback((Ht,$t)=>{Ht&&(Yt(Ht,$t),Ge&&!compact(Ht.options||[]).length&&(unset(At.current.errors,Ht.ref.name),set(At.current.dirtyFields,Ht.ref.name,!0),Tt({isDirty:Zt()}),Ft.current.isValid&&pt.current&&zt(),_t(Ht.ref.name)))},[zt,Yt]);function ln(Ht){Ht&&(Array.isArray(Ht)?Ht:[Ht]).forEach($t=>Xe.current[$t]&&isKey($t)?delete At.current.errors[$t]:unset(At.current.errors,$t)),Tt({errors:Ht?At.current.errors:{}})}function cn(Ht,$t){const nn=(Xe.current[Ht]||{}).ref;set(At.current.errors,Ht,Object.assign(Object.assign({},$t),{ref:nn})),Tt({isValid:!1}),$t.shouldFocus&&nn&&nn.focus&&nn.focus()}const hn=React$1.useCallback((Ht,$t,nn)=>{const sn=nn?tt.current[nn]:nt.current;let rn=getFieldsValues(Xe,cloneObject(ct.current),Ge,!1,Ht);if(isString$2(Ht)){const Nn=getFieldArrayParentName(Ht)||Ht;return gt.current.has(Nn)&&(rn=Object.assign(Object.assign({},$e.current),rn)),assignWatchFields(rn,Ht,sn,isUndefined$1(get(it.current,Ht))?$t:get(it.current,Ht),!0)}const pn=isUndefined$1($t)?it.current:$t;return Array.isArray(Ht)?Ht.reduce((Nn,En)=>Object.assign(Object.assign({},Nn),{[En]:assignWatchFields(rn,En,sn,pn)}),{}):(st.current=isUndefined$1(nn),transformToNestObject(!isEmptyObject(rn)&&rn||pn))},[]);function yn(Ht,$t){return hn(Ht,$t)}function Tn(Ht){for(const $t of Array.isArray(Ht)?Ht:[Ht])Jt(Xe.current[$t],!0)}function on(Ht,$t={}){if(process.env.NODE_ENV!=="production"){if(!Ht.name)return console.warn("📋 Field is missing `name` attribute",Ht,"https://react-hook-form.com/api#useForm");if(gt.current.has(Ht.name.split(/\[\d+\]$/)[0])&&!RegExp(`^${Ht.name.split(/\[\d+\]$/)[0]}[\\d+].\\w+`.replace(/\[/g,"\\[").replace(/\]/g,"\\]")).test(Ht.name))return console.warn('📋 `name` prop should be in object shape: name="test[index].name"',Ht,"https://react-hook-form.com/api#useFieldArray")}const{name:nn,type:sn,value:rn}=Ht,pn=Object.assign({ref:Ht},$t),Nn=Xe.current,En=isRadioOrCheckboxFunction(Ht),Cn=isNameInFieldArray(gt.current,nn),zn=xn=>isWeb&&(!isHTMLElement(Ht)||xn===Ht);let jn=Nn[nn],Qn=!0,Hn;if(jn&&(En?Array.isArray(jn.options)&&compact(jn.options).find(xn=>rn===xn.ref.value&&zn(xn.ref)):zn(jn.ref))){Nn[nn]=Object.assign(Object.assign({},jn),$t);return}sn?jn=En?Object.assign({options:[...compact(jn&&jn.options||[]),{ref:Ht}],ref:{type:sn,name:nn}},$t):Object.assign({},pn):jn=pn,Nn[nn]=jn;const wn=isUndefined$1(get(ct.current,nn));(!isEmptyObject(it.current)||!wn)&&(Hn=get(wn?it.current:ct.current,nn),Qn=isUndefined$1(Hn),!Qn&&!Cn&&Ct(nn,Hn)),isEmptyObject($t)||(set(rt.current,nn,!0),!vt&&Ft.current.isValid&&validateField(Xe,yt,jn,ct).then(xn=>{const Yn=At.current.isValid;isEmptyObject(xn)?set(at.current,nn,!0):unset(at.current,nn),Yn!==isEmptyObject(xn)&&Tt()})),Ge&&!(Cn&&Qn)&&!Cn&&unset(At.current.dirtyFields,nn),sn&&attachEventListeners(En&&jn.options?jn.options[jn.options.length-1]:jn,En||isSelectInput(Ht),ut.current)}function fn(Ht,$t){if(!isWindowUndefined)if(isString$2(Ht))on({name:Ht},$t);else if(isObject$4(Ht)&&"name"in Ht)on(Ht,$t);else return nn=>nn&&on(nn,Ht)}const mn=React$1.useCallback((Ht,$t)=>async nn=>{nn&&nn.preventDefault&&(nn.preventDefault(),nn.persist());let sn={},rn=Qt(getFieldsValues(Xe,cloneObject(ct.current),Ge,!0));Ft.current.isSubmitting&&Tt({isSubmitting:!0});try{if(pt.current){const{errors:pn,values:Nn}=await pt.current(rn,ht.current,yt);At.current.errors=sn=pn,rn=Nn}else for(const pn of Object.values(Xe.current))if(pn){const{name:Nn}=pn.ref,En=await validateField(Xe,yt,pn,ct);En[Nn]?(set(sn,Nn,En[Nn]),unset(at.current,Nn)):get(rt.current,Nn)&&(unset(At.current.errors,Nn),set(at.current,Nn,!0))}isEmptyObject(sn)&&Object.keys(At.current.errors).every(pn=>pn in Xe.current)?(Tt({errors:{},isSubmitting:!0}),await Ht(rn,nn)):(At.current.errors=Object.assign(Object.assign({},At.current.errors),sn),$t&&await $t(At.current.errors,nn),Je&&focusOnErrorField(Xe.current,At.current.errors))}finally{At.current.isSubmitting=!1,Tt({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:isEmptyObject(At.current.errors),submitCount:At.current.submitCount+1})}},[Je,yt]),vn=({errors:Ht,isDirty:$t,isSubmitted:nn,touched:sn,isValid:rn,submitCount:pn,dirtyFields:Nn})=>{rn||(at.current={},rt.current={}),Ke.current={},nt.current=new Set,st.current=!1,Tt({submitCount:pn?At.current.submitCount:0,isDirty:$t?At.current.isDirty:!1,isSubmitted:nn?At.current.isSubmitted:!1,isValid:rn?At.current.isValid:!1,dirtyFields:Nn?At.current.dirtyFields:{},touched:sn?At.current.touched:{},errors:Ht?At.current.errors:{},isSubmitting:!1,isSubmitSuccessful:!1})},un=(Ht,$t={})=>{if(isWeb){for(const nn of Object.values(Xe.current))if(nn){const{ref:sn,options:rn}=nn,pn=isRadioOrCheckboxFunction(sn)&&Array.isArray(rn)?rn[0].ref:sn;if(isHTMLElement(pn))try{pn.closest("form").reset();break}catch{}}}Xe.current={},it.current=Object.assign({},Ht||it.current),Ht&&lt(""),Object.values(dt.current).forEach(nn=>isFunction$1(nn)&&nn()),ct.current=Ge?{}:cloneObject(Ht||it.current),vn($t)};React$1.useEffect(()=>{Ue&&Ft.current.isValid&&zt(),St.current=St.current||!isWeb?St.current:onDomRemove(Xe,Jt)},[Jt,it.current]),React$1.useEffect(()=>()=>{St.current&&St.current.disconnect(),ot.current=!0,process.env.NODE_ENV==="production"&&Object.values(Xe.current).forEach(Ht=>Jt(Ht,!0))},[]),!Ue&&Ft.current.isValid&&(It.isValid=deepEqual(at.current,rt.current)&&isEmptyObject(At.current.errors));const dn={trigger:Kt,setValue:React$1.useCallback(Ut,[kt,Kt]),getValues:React$1.useCallback(jt,[]),register:React$1.useCallback(fn,[it.current]),unregister:React$1.useCallback(Tn,[]),formState:isProxyEnabled?new Proxy(It,{get:(Ht,$t)=>{if(process.env.NODE_ENV!=="production"&&$t==="isValid"&&vt&&console.warn("📋 `formState.isValid` is applicable with `onTouched`, `onChange` or `onBlur` mode. https://react-hook-form.com/api#formState"),$t in Ht)return Ft.current[$t]=!0,Ht[$t]}}):It},qt=React$1.useMemo(()=>Object.assign({isFormDirty:Zt,updateWatchedValue:_t,shouldUnregister:Ge,updateFormState:Tt,removeFieldEventListener:Yt,watchInternal:hn,mode:Mt.current,reValidateMode:{isReValidateOnBlur:Rt,isReValidateOnChange:bt},validateResolver:Ue?zt:void 0,fieldsRef:Xe,resetFieldArrayFunctionRef:dt,useWatchFieldsRef:tt,useWatchRenderFunctionsRef:et,fieldArrayDefaultValuesRef:Ke,validFieldsRef:at,fieldsWithValidationRef:rt,fieldArrayNamesRef:gt,readFormStateRef:Ft,formStateRef:At,defaultValuesRef:it,shallowFieldsStateRef:ct,fieldArrayValuesRef:$e},dn),[it.current,_t,Ge,Yt,hn]);return Object.assign({watch:yn,control:qt,handleSubmit:mn,reset:React$1.useCallback(un,[]),clearErrors:React$1.useCallback(ln,[]),setError:React$1.useCallback(cn,[]),errors:It.errors},dn)}/*! *****************************************************************************
2363
2363
  Copyright (c) Microsoft Corporation.
2364
2364
 
2365
2365
  Permission to use, copy, modify, and/or distribute this software for any
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "main": "./dist/onBoarding.umd.js",
4
4
  "module": "./dist/onBoarding.mjs",
5
5
  "types": "./dist/incode-welcome/src/index.d.ts",
6
- "version": "1.70.0-rc.20240412150645",
6
+ "version": "1.70.0",
7
7
  "publishConfig": {},
8
8
  "exports": {
9
9
  ".": {