@inploi/plugin-chatbot 14.10.0 → 14.10.2

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.
@@ -1,5 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("./index-d28fa66d.cjs"),Et=require("@inploi/sdk");var Br="9.7.0",sr=`https://sdk.inploi.com/@inploi/flows@${Br}/cdn/captcha/index.html`,$r=new URL(sr).origin,Ft=3e4,jr=5*6e4,Pr=e=>typeof e=="object"&&e!==null&&e.source==="inploi-captcha",st=new WeakMap,qr=e=>{let r=st.get(e);return r||(r=e.fetch("/flow/captcha").then(t=>{let n=t==null?void 0:t.site_key;return typeof n=="string"&&n!==""?n:void 0}).catch(t=>{throw st.delete(e),t}),st.set(e,r)),r},Ur=(e,r={})=>new Promise((t,n)=>{let{signal:a,container:o=null,theme:i,onInteractive:l}=r instanceof AbortSignal?{signal:r}:r,c=!1,p=()=>{},g=S=>{c||(c=!0,clearTimeout(m),a==null||a.removeEventListener("abort",h),p(),S())},b=S=>g(()=>n(new Error(S))),h=()=>b("Captcha aborted"),m,w=S=>{clearTimeout(m),m=setTimeout(()=>b("Captcha timed out"),S)};if(w(Ft),a==null?void 0:a.aborted)return h();a==null||a.addEventListener("abort",h),(async()=>{let S=await qr(e);if(S===void 0)return g(()=>t(void 0));if(c)return;let C=document.createElement("iframe");C.src=`${sr}?${new URLSearchParams({sitekey:S,origin:window.location.origin,...i&&{theme:i}}).toString()}`,C.title="Cloudflare security check",C.style.cssText=`display:block;border:0;width:${o?"100%":"300px"};height:0;color-scheme:normal`,o?o.appendChild(C):(C.style.cssText+=";position:fixed;bottom:16px;right:16px;z-index:2147483647",document.body.appendChild(C));let _=!1,y=E=>{if(!C.contentWindow||E.source!==C.contentWindow||E.origin!==$r||!Pr(E.data))return;let A=E.data;switch(A.type){case"token":return g(()=>t(A.token));case"resize":C.style.height=`${Math.max(0,Math.ceil(A.height))}px`;return;case"before-interactive":return _=!0,w(jr),l==null?void 0:l();case"after-interactive":return _=!1,w(Ft);case"error":!_&&!A.interactive&&b("Captcha failed");return;case"expired":return b("Captcha expired");case"timeout":return b("Captcha timed out")}};window.addEventListener("message",y),p=()=>{window.removeEventListener("message",y),C.remove()}})().catch(S=>g(()=>n(S)))}),Vt=({condition:e,context:r,submissions:t,ifBlock:n})=>{let[a,...o]=e.compareKey.split(".");if(!a)return!1;let i=s.ie({context:r,key:a,path:o,submissions:t});if(!i)return!1;switch(i.type){case"address":{let l=s.P(i.value,o);switch(e.compare){case"equals":return l===e.compareValue;case"contains":return typeof l!="string"?!1:l.includes(e.compareValue);case"notEquals":return l!==e.compareValue;case"notContains":return typeof l!="string"?!0:!l.includes(e.compareValue)}break}case"integration":{if(typeof i.value!="object"||Array.isArray(i.value))return!1;let l=s.P(i.value,o),c={...n,data:{compareKey:"_temp",compare:e.compare,compareValue:e.compareValue}};switch(typeof l){case"boolean":return $e(c,{submissions:{_temp:{value:l,type:"boolean"}},context:r});case"string":return $e(c,{submissions:{_temp:{value:l,type:"string"}},context:r});case"number":return $e(c,{submissions:{_temp:{value:l,type:"number"}},context:r});case"object":return Array.isArray(l)&&l.every(p=>typeof p=="string")?$e(c,{submissions:{_temp:{value:l,type:"enum"}},context:r}):!1}break}case"boolean":{let l=e.compareValue==="true";switch(e.compare){case"equals":return i.value===l;case"notEquals":return i.value!==l}break}case"phone":case"string":{let l=i.type==="phone"?s.ce(i.value):i.value;switch(e.compare){case"equals":return l===e.compareValue;case"contains":return l?l.includes(e.compareValue):!1;case"notEquals":return l!==e.compareValue;case"notContains":return l?!l.includes(e.compareValue):!0}break}case"number":{try{let l=Number(e.compareValue);switch(e.compare){case"equals":return i.value===l;case"notEquals":return i.value!==l;case"greaterThan":return i.value>l;case"greaterThanOrEqualTo":return i.value>=l;case"lessThan":return i.value<l;case"lessThanOrEqualTo":return i.value<=l}}catch{return console.error(`Failed to parse number in if-block ${n.id}`,i.value),!1}break}case"enum":switch(e.compare){case"equals":return i.value.length===1&&i.value[0]===e.compareValue;case"notEquals":return i.value.length===1&&i.value[0]!==e.compareValue;case"contains":return i.value.includes(e.compareValue);case"notContains":return!i.value.includes(e.compareValue)}break}},$e=(e,{context:r,submissions:t})=>{let n="combinator"in e.data?e.data.conditions:[e.data];if(("combinator"in e.data?e.data.combinator:"and")==="or"){for(let a of n)if(Vt({condition:a,context:r,submissions:t,ifBlock:e}))return!0;return!1}else{for(let a of n)if(!Vt({condition:a,context:r,submissions:t,ifBlock:e}))return!1;return!0}},Wr=/{{\s*([^}]+?)\s*(?:\|\s*([^}]+?)\s*)?}}/g,zr=(e,{context:r,submissions:t})=>e.replace(Wr,(n,a,o="")=>{let[i,...l]=a.trim().split("."),c=s.ie({key:i,path:l,submissions:t,context:r});if(!c)return o;switch(c.type){case"boolean":return c.value===!0?"true":"false";case"file":return c.value.map(p=>`${p.name} (${s.ue(p.sizeKb)})`).join(", ");case"enum":return c.value.join(", ");case"address":return Object.values(c.value).filter(p=>p&&p.trim().length>0).join(", ");case"number":case"string":return c.value?c.value.toString():o;case"phone":return s.ce(c.value);case"integration":{if(typeof c.value!="object"||Array.isArray(c.value))break;let p=s.P(c.value,l);switch(typeof p){case"boolean":return p===!0?"true":"false";case"string":return p;case"number":return p.toString();case"object":if(Array.isArray(p)&&p.every(g=>typeof g=="string"))return p.join(", ")}break}}return o}),ar=e=>{let r=e.find(t=>t.isHead);if(!r)throw new Error("No head node found");return r},ht=e=>{var r,t;if(!(e.data.isFinished||(r=e.data.startedWriteNodeIds)!=null&&r.length))return(t=[...e.data.messages].reverse().find(n=>n.groupId&&e.nodes.some(a=>a.id===n.groupId&&a.type.startsWith("question-"))&&(n.type==="system"||"author"in n&&n.author==="user")))==null?void 0:t.groupId},ir=({context:e,submissions:r})=>({context:e,submissions:r??{}}),oe=(e,r)=>zr(e,ir(r)),Kr=(e,r)=>$e(e,ir(r)),or=({node:e,nodes:r,stopWhen:t})=>{if((t==null?void 0:t(e))===!0)return e;let n=e.nextId?r.find(a=>a.id===e.nextId):void 0;if(n)return or({node:n,nodes:r,stopWhen:t})},Gr=({childNode:e,nodes:r})=>{let t=r.filter(n=>n.type==="if-block").find(n=>{if(!n.branchId)return!1;let a=r.find(i=>i.id===n.branchId);if(!a)return!1;let o=or({node:a,nodes:r,stopWhen:i=>i.id===e.id});return!(!o||o.id!==e.id)});if(t!=null&&t.nextId)return r.find(n=>n.id===t.nextId)},Hr=3,Jr=({flow:e,analytics:r,logger:t,talentBankClient:n,context:a,apiClient:o,getSubmissions:i,getApplicationRecovery:l,setApplicationRecovery:c,chatService:p,persistWriteBarrier:g,onFlowEnd:b,onInterpret:h,t:m})=>{var w;let S=new AbortController;(w=e.data).startedWriteNodeIds??(w.startedWriteNodeIds=e.nodes.flatMap(y=>{var A,V;if(y.type!=="integration-application-submit"||!e.data.nodeHistory.includes(y.id))return[];let E=y.data.key?(A=i())==null?void 0:A[y.data.key]:void 0;return(E==null?void 0:E.type)==="integration"&&((V=s.le(E.value))==null?void 0:V.verdict)==="not_submitted"?[]:[y.id]}));let C={...r.service,log:y=>r.service.log({...y,customProperties:{...y.customProperties,...r.customProperties}})},_=async(y,E)=>{let A=S.signal;if(A.aborted)return;let V=i(),L=l(),q=(L==null?void 0:L.submitNodeId)===y.id?e.nodes.find(D=>{var P;return D.id===L.fileQuestionNodeId&&D.type==="question-file"&&((P=V==null?void 0:V[D.data.key])==null?void 0:P.type)!=="file"}):void 0;if(q)return _(q,E);h==null||h(y,E);try{await Xr({flow:e,analytics:C,logger:t,talentBankClient:n,apiClient:o,context:a,node:y,submissions:V,applicationRecovery:L,setApplicationRecovery:async D=>{if(!A.aborted)try{await c(D)}catch(P){t.error("Failed to persist application recovery",P)}},forceSubmitConfirmation:(L==null?void 0:L.submitNodeId)===y.id,persistWriteBarrier:g,signal:A,t:m,chat:{sendMessage:async D=>p.send({groupId:y.id,message:D,signal:A}),userInput:async D=>p.input({input:D,signal:A}),setSubmission:(D,P)=>{A.aborted||p.setSubmission(D,P)},captcha:p.captcha},next:D=>{if(A.aborted)return;let P=(L==null?void 0:L.fileQuestionNodeId)===y.id?L.submitNodeId:D,O=P?e.nodes.find(H=>H.id===P):Gr({childNode:y,nodes:e.nodes});return O?_(O,y):b==null?void 0:b(y)},end:()=>{A.aborted||(b==null||b(y))}})}catch(D){if(D instanceof s.T)return;throw D}};return{interpret:async y=>{let E=e.nodes.find(A=>A.id===y)??ar(e.nodes);return _(E)},undo:y=>{var P;if((P=e.data.startedWriteNodeIds)!=null&&P.length||e.data.isFinished)return{removed:0};let E=ht(e),A=E?y.lastIndexOf(E):-1,V=e.nodes.find(O=>O.id===E);if(A===-1||!V)return{removed:0};let L=e.nodes.find(O=>O.id===y[y.length-1]);S.abort();let q=y.splice(A);e.data.messages=e.data.messages.filter(O=>!O.groupId||!q.includes(O.groupId)),e.data.currentInput=null;let D=i();for(let O of q.slice(1)){let H=e.nodes.find(T=>T.id===O);if(!(!H||!D||H.id===E)&&("key"in H.data&&H.data.key&&delete D[H.data.key],"keys"in H.data))for(let T of Object.values(H.data.keys))typeof T=="string"&&delete D[T]}return S=new AbortController,_(V,L),{removed:q.length}},abort:()=>{S.abort()}}};async function Xr(e){let r=e.node;switch(r.type){case"flow-section":return await e.chat.sendMessage({type:"system",variant:"info",text:r.data.title}),e.next(r.nextId);case"pre-apply-result":return gn({...e,node:r});case"text":return on({...e,node:r});case"image":return ln({...e,node:r});case"question-text":return un({...e,node:r});case"question-enum":return fn({...e,node:r});case"question-number":return cn({...e,node:r});case"question-phone":return dn({...e,node:r});case"question-boolean":return hn({...e,node:r});case"question-file":return mn({...e,node:r});case"question-address":return pn({...e,node:r});case"end-flow":return yn({...e,node:r});case"if-block":return an({...e,node:r});case"jump":return Qr({...e,node:r});case"link":return sn({...e,node:r});case"integration-application-submit":return nn({...e,node:r});case"add-submission":return en({...e,node:r});case"integration-workflow-get":throw Error("Workflow should be unreachable");case"check-duplicate":return Yr({...e,node:r});case"feedback":return Zr({...e,node:r});default:throw new Error(`Unknown node: ${JSON.stringify(r)}`)}}async function Zr({next:e,node:r}){e(r.nextId)}async function Yr({next:e,node:r,talentBankClient:t,submissions:n,flow:a,logger:o,chat:i}){var c;let l={isDuplicate:!1};if(n&&t){let p=r.data.scope==="job"?(c=a.job)==null?void 0:c.id:void 0;if(r.data.scope==="company"||p!=null)try{l=await t.checkDuplicate({email:s.se({key:r.data.email,submissions:n}).toString(),jobId:p,scope:r.data.scope})}catch(g){o.error("[check-duplicate]",g)}}i.setSubmission(r.data.key,{type:"integration",value:l}),e(r.nextId)}async function Qr({next:e,node:r}){e(r.data.targetId)}async function en({next:e,node:r,logger:t,submissions:n,context:a}){if(!n){t.error("Submissions not found");return}n[r.data.key]={type:"string",value:oe(r.data.value,{submissions:n,context:a})},e(r.nextId)}var tn=5e3,rn=(e,r,t)=>{let{waitMs:n,throttles:a,maintenance:o}=s.ye(r==null?void 0:r.throttles,t);return{key:e,until:Date.now()+n,...a!==void 0&&{throttles:a},...o&&{maintenance:o}}};async function nn({chat:e,next:r,end:t,node:n,logger:a,apiClient:o,submissions:i,analytics:l,flow:c,applicationRecovery:p,setApplicationRecovery:g,forceSubmitConfirmation:b,persistWriteBarrier:h,signal:m,t:w}){var y;if((y=c.data.startedWriteNodeIds)!=null&&y.includes(n.id)&&(p==null?void 0:p.submitNodeId)!==n.id)return await e.sendMessage({type:"system",variant:"warning",text:w("submission_unknown")}),t();let S=c.job?`${n.id}@${c.job.id_type}:${c.job.id}`:n.id,C=0,_=async E=>{var ze,Te,Ke,Ne,Ge,Ie,Re;let A=((ze=c.data.submitCooldown)==null?void 0:ze.key)===S?c.data.submitCooldown:void 0;A&&(A.until=Math.min(A.until,Date.now()+(A.maintenance?s.z:A.throttles?s.X:s.W)));let V=A==null?void 0:A.until;(E!==!0||V!==void 0&&V>Date.now())&&await e.userInput({type:"submit",key:void 0,config:{label:n.data.submitLabel,...V!==void 0&&{availableAt:V}}});let L;if(n.data.captcha){let R=e.captcha,ye=!0;try{L=await Ur(o,{signal:m,container:(R==null?void 0:R.container())??null,theme:R==null?void 0:R.theme,onInteractive:()=>{e.sendMessage({type:"text",author:"bot",text:w("captcha_check")}).catch(()=>{}).then(()=>{ye&&(R==null||R.reveal(!0))})}})}catch(De){if(a.error("Captcha check failed",De),m.aborted)return}finally{ye=!1,R==null||R.reveal(!1)}}await e.sendMessage({type:"loading",text:w("submitting")});let{anonymous_id:q,session_id:D}=l.getSessionInfo();if(m.aborted)return;let P=((Te=c.data.startedWriteNodeIds)==null?void 0:Te.includes(n.id))===!0;if((p==null?void 0:p.submitNodeId)===n.id&&await g(void 0),P||(c.data.startedWriteNodeIds=[...c.data.startedWriteNodeIds??[],n.id]),await h().catch(R=>a.error("Failed to persist application write barrier",R)),m.aborted)return;let O,H=setTimeout(()=>{O=(async()=>{await e.sendMessage({type:"text",author:"bot",text:w("submission_still_working")}),await e.sendMessage({type:"loading",text:w("submitting")})})().catch(R=>a.error("Failed to send submission progress message",R))},tn),T,N=await o.fetch("/flow/submit",{method:"POST",body:JSON.stringify({log_submit:!1,integration_id:n.data.integrationId,anonymous_id:q,session_id:D,job:c.job,flow_build:c.build,...L!==void 0&&{captcha_token:L},submissions:s.C(c.nodes,s.oe(i||{},n.data.submitKeys)),pre_apply:s.M(c.nodes,i||{},c.data.flowSessionId)})}).catch(R=>(T=R,Et.isApiErrorWithData(R)?R.data:R));if(clearTimeout(H),await O,m.aborted)return;n.data.key&&e.setSubmission(n.data.key,{type:"integration",value:N});let M=s.le(N,T instanceof Et.ApiError?T.status:void 0),W=c.data.failedAttemptAt,J=W==null?void 0:W[S];W&&J!==void 0&&J>Date.now()&&(J=W[S]=Date.now());let X=J!==void 0&&Date.now()-J<s.de||((Ke=c.data.unconfirmedAttemptKeys)==null?void 0:Ke.includes(S))===!0,ne=s.he(N);if(ne&&l.log({event:"FLOW_SUBMIT",properties:{flow_id:c.id,flow_version:c.version,flow_session_id:c.data.flowSessionId,flow_build:c.build,service:ne.service,response:ne.response,flow_type:"CHATBOT_DRAWER",job:c.job,...(M==null?void 0:M.outcome)==="duplicate"&&{outcome:X?"duplicate_after_own_attempt":"duplicate"},...ne.outcome&&{outcome:ne.outcome}}}),(s.U(N)||(N==null?void 0:N.success)===!0)&&((Ne=c.data.submitCooldown)==null?void 0:Ne.throttles)!==void 0&&(delete c.data.submitCooldown.throttles,await h().catch(R=>a.error("Failed to persist submit cooldown reset",R))),s.U(N)){let{redirect_url:R,message:ye,button_text:De}=N.integration_response.data;await e.sendMessage({type:"text",author:"bot",text:ye??w("submission_redirect_message")});try{let ce=new URL(R);q&&!ce.searchParams.has("anonymous_id")&&ce.searchParams.set("anonymous_id",q),await e.sendMessage({type:"link",href:ce.toString(),text:De??w("complete_submission"),onClick:()=>{if(!D){a.error("session_id not set, cannot log FLOW_REDIRECT event");return}l.log({event:"FLOW_REDIRECT",properties:{flow_build:c.build,flow_id:c.id,flow_session_id:D,flow_version:c.version,href:ce.toString(),job:c.job}})}})}catch(ce){a.error(`Invalid redirect URL: ${R}`,ce),e.sendMessage({type:"system",variant:"error",text:w("redirect_url_error")})}return r(n.nextId)}let me=s.$(N);if(me)return await e.sendMessage({type:"system",variant:"success",text:me.message??w("submission_pending")}),r(n.nextId);if((N==null?void 0:N.success)===!0)return n.data.skipConfirmation!==!0&&await e.sendMessage({type:"system",variant:"success",text:w("submission_completed")}),r(n.nextId);let ue=s.xe(M),we=ue!==void 0&&((Ge=i==null?void 0:i[ue])==null?void 0:Ge.type)==="file"?ue:void 0,_e=we===void 0?void 0:c.nodes.find(R=>R.type==="question-file"&&R.data.key===we);if(!_e&&!s.ge(M)&&(c.data.submitCooldown=rn(S,A,M)),(M==null?void 0:M.outcome)!=="duplicate"&&(c.data.failedAttemptAt={...c.data.failedAttemptAt,[S]:Date.now()},(Ie=c.data.unconfirmedAttemptKeys)!=null&&Ie.includes(S)&&(c.data.unconfirmedAttemptKeys=c.data.unconfirmedAttemptKeys.filter(R=>R!==S))),(M==null?void 0:M.verdict)==="not_submitted"||(M==null?void 0:M.outcome)==="duplicate"||(M==null?void 0:M.outcome)==="closed"?(P||(c.data.startedWriteNodeIds=(Re=c.data.startedWriteNodeIds)==null?void 0:Re.filter(R=>R!==n.id)),(p==null?void 0:p.submitNodeId)===n.id&&await g(p),await h().catch(R=>a.error("Failed to persist application write barrier release",R))):await h().catch(R=>a.error("Failed to persist submit cooldown",R)),M){if(a.error(T??M.message),_e&&we!==void 0)return e.setSubmission(we,null),await g({fileQuestionNodeId:_e.id,submitNodeId:n.id}),await e.sendMessage({type:"system",variant:"error",text:w("submission_unreadable_document")}),r(_e.id);if(M.outcome==="duplicate")return await e.sendMessage({type:"system",variant:"info",text:w(X?"submission_duplicate_earlier_attempt":"submission_duplicate")}),_(!1);if(M.outcome==="closed")return await e.sendMessage({type:"system",variant:"info",text:w("submission_closed")}),_(!1);let R=s.me(M);return R?(await e.sendMessage({type:"system",variant:"warning",text:R.until===void 0?w("submission_provider_maintenance_later"):w("submission_provider_maintenance",{time:s.fe(R.until,void 0)})}),_(!1)):M.outcome==="unknown"?(await e.sendMessage({type:"system",variant:"warning",text:w(s.we(M)?"submission_unknown_do_not_resubmit":"submission_unknown")}),_(!1)):s.ge(M)?s.be(N)?(await e.sendMessage({type:"text",author:"bot",text:M.message}),_(!1)):(C===0&&await e.sendMessage({type:"system",variant:"warning",text:w("captcha_failed")}),C++,_(C<=Hr)):s.ve(M)?(await e.sendMessage({type:"system",variant:"error",text:w("submission_retryable")}),_(!1)):(await e.sendMessage({type:"system",variant:"error",text:w("submission_failed")}),t())}return a.error(T??N),await e.sendMessage({type:"system",variant:"error",text:w("submission_failed")}),t()};await _(b===!0?!1:n.data.skipConfirmation)}async function sn({chat:e,next:r,node:t,submissions:n,context:a}){await e.sendMessage({type:"link",href:oe(t.data.href,{submissions:n,context:a}),text:oe(t.data.cta,{submissions:n,context:a})}),r(t.nextId)}async function an({submissions:e,next:r,node:t,context:n}){r(Kr(t,{submissions:e,context:n})?t.branchId:t.nextId)}async function on({chat:e,next:r,node:t,submissions:n,context:a}){await e.sendMessage({author:"bot",type:"text",text:oe(t.data.text,{submissions:n,context:a})}),r(t.nextId)}async function ln({chat:e,next:r,node:t}){await e.sendMessage({author:"bot",type:"image",url:t.data.url,height:t.data.height,width:t.data.width}),r(t.nextId)}async function un({chat:e,next:r,node:t,submissions:n,context:a,t:o}){await e.sendMessage({author:"bot",type:"text",text:oe(t.data.question,{submissions:n,context:a})});let i=t.data.format==="phone"?await e.userInput({key:t.data.key,type:"phone",config:{optional:t.data.optional,placeholder:t.data.placeholder,minChars:t.data.minChars,maxChars:t.data.maxChars,submissionFormat:"text",defaultValue:{}}}):await e.userInput({key:t.data.key,type:"text",config:{optional:t.data.optional,placeholder:t.data.placeholder,format:t.data.format,maxChars:t.data.maxChars,minChars:t.data.minChars,multiline:t.data.format==="text"&&t.data.multiline===!0}});i===null?await e.sendMessage({type:"system",variant:"info",text:o("skipped")}):await e.sendMessage({author:"user",type:"text",text:i.type==="phone"?s.ce(i.value):i.value}),r(t.nextId)}async function cn({chat:e,next:r,node:t,submissions:n,context:a,t:o}){await e.sendMessage({author:"bot",type:"text",text:oe(t.data.question,{submissions:n,context:a})});let i=await e.userInput({key:t.data.key,type:"number",config:{max:t.data.max,min:t.data.min,optional:t.data.optional,placeholder:t.data.placeholder,decimalCases:t.data.decimalCases}});i===null?await e.sendMessage({type:"system",variant:"info",text:o("skipped")}):await e.sendMessage({author:"user",type:"text",text:i.value.toString()}),r(t.nextId)}async function dn({chat:e,next:r,node:t,submissions:n,context:a,t:o}){await e.sendMessage({author:"bot",type:"text",text:oe(t.data.question,{submissions:n,context:a})});let i=await e.userInput({key:t.data.key,type:"phone",config:{minChars:t.data.minChars,defaultValue:{countryCode:t.data.defaultCountryCode},placeholder:t.data.placeholder,submissionFormat:"phone",optional:t.data.optional}});i===null?await e.sendMessage({type:"system",variant:"info",text:o("skipped")}):await e.sendMessage({author:"user",type:"text",text:i.type==="phone"?s.ce(i.value):i.value}),r(t.nextId)}async function fn({chat:e,next:r,node:t,submissions:n,context:a,t:o}){await e.sendMessage({author:"bot",type:"text",text:oe(t.data.question,{submissions:n,context:a})});let i=await e.userInput({key:t.data.key,type:"multiple-choice",config:t.data});i.value.length===0?await e.sendMessage({type:"system",variant:"info",text:o("skipped")}):await e.sendMessage({author:"user",type:"text",text:t.data.options.filter(l=>i.value.includes(l.value)).map(l=>l.label).join(", ")}),r(t.nextId)}async function hn({chat:e,next:r,node:t,submissions:n,context:a,t:o}){await e.sendMessage({author:"bot",type:"text",text:oe(t.data.question,{submissions:n,context:a})});let i=await e.userInput({key:t.data.key,type:"boolean",config:{optional:t.data.optional,labels:{true:t.data.trueLabel,false:t.data.falseLabel}}});i===null?await e.sendMessage({type:"system",variant:"info",text:o("skipped")}):await e.sendMessage({author:"user",type:"text",text:i.value===!0?t.data.trueLabel:t.data.falseLabel}),r(t.nextId)}async function pn({chat:e,next:r,node:t,t:n}){await e.sendMessage({author:"bot",type:"text",text:t.data.question});let a=await e.userInput({type:"address",key:t.data.key,config:{optional:t.data.optional,keys:t.data.keys,line2Required:t.data.line2Required,placeholder:t.data.placeholder}});if(a===null)await e.sendMessage({type:"system",variant:"info",text:n("skipped")});else{let o=Object.values(a.value).filter(i=>i&&i.trim().length>0).join(", ");await e.sendMessage({author:"user",type:"text",text:o})}return r(t.nextId)}async function mn({node:e,chat:r,next:t,submissions:n,context:a,t:o}){await r.sendMessage({author:"bot",type:"text",text:oe(e.data.question,{submissions:n,context:a})});let i=await r.userInput({key:e.data.key,type:"file",config:{optional:e.data.optional,extensions:e.data.extensions,fileSizeLimitKib:e.data.maxSizeKb??10*1024,allowMultiple:e.data.multiple===!0}});if(i===null)await r.sendMessage({type:"system",variant:"info",text:o("skipped")});else for(let l of i.value)await r.sendMessage({author:"user",type:"file",fileName:l.name,fileSizeKb:l.sizeKb});return t(e.nextId)}async function yn({chat:e,end:r,node:t}){await e.sendMessage({type:"system",variant:"info",text:t.data.systemMessage}),r()}async function gn({node:e,flow:r,submissions:t,chat:n,next:a,apiClient:o,analytics:i}){let l=s.N(r.nodes,t||{}),{answers:c,...p}=l;n.setSubmission(e.data.key,{type:"integration",value:p});let g=new AbortController,b=setTimeout(()=>g.abort(),5e3);if(o.fetch("/flow/pre-apply",{method:"POST",signal:g.signal,body:JSON.stringify({...i.getSessionInfo(),job:r.job,flow_build:r.build,pre_apply:s.M(r.nodes,t||{},r.data.flowSessionId)})}).catch(()=>{}).finally(()=>clearTimeout(b)),l.status!=="skipped"){let h=[l.status==="unavailable"?"We could not prepare your pre-apply summary. You can still continue to your application.":l.hasHardConcerns?e.data.messages.hard:l.hasAdvisoryConcerns?e.data.messages.advisory:e.data.messages.matched];for(let m of["hard","advisory"]){let w=c.filter(S=>!S.matched&&S.severity===m);w.length&&h.push((m==="hard"?"Role requirements":"Other things to consider")+`
2
- `+w.map(S=>`• ${S.message}`).join(`
3
- `))}await n.sendMessage({type:"text",author:"bot",text:h.join(`
4
-
5
- `)}),l.hasHardConcerns&&e.data.alternativeLink&&await n.sendMessage({type:"link",href:e.data.alternativeLink.href,text:e.data.alternativeLink.label}),await n.userInput({type:"submit",key:void 0,config:{label:e.data.continueLabel}})}return a(e.nextId)}const Mt=(e,r,t)=>{var n;return e.log({event:t,properties:{flow_id:r.id,flow_version:r.version,flow_session_id:r.data.flowSessionId,flow_build:r.build,flow_type:"CHATBOT_DRAWER",job:r.job},customProperties:(n=r.analytics)==null?void 0:n.customProperties})},ct="resume-prompt",bn=async({chatService:e,t:r,signal:t})=>{await e.send({message:{type:"text",author:"bot",text:r("resume_prompt")},groupId:ct,signal:t});const n=await e.input({input:{type:"boolean",key:void 0,config:{labels:{true:r("resume_continue"),false:r("resume_start_again")},optional:!1}},signal:t});return s.store.removeMessagesSentByNodeIds([ct]),(n==null?void 0:n.value)!==!1},Se=({class:e,...r})=>{const{t}=s.useTranslation();return s.o("button",{class:s.clsx("bg-accent-9 active:bg-accent-10 pointer-coarse:touch-hitbox fr flex-shrink-0 rounded-full p-2 text-white transition-all disabled:cursor-not-allowed disabled:opacity-50",e),type:"submit",...r,children:s.o("svg",{class:"block",width:"16",height:"16",viewBox:"0 0 16 16",fill:"transparent",stroke:"currentColor","stroke-linecap":"round","stroke-width":"2",children:[s.o("title",{children:t("send")}),s.o("path",{d:"M3.5 7.5L8 3L12.5 7.5"}),s.o("path",{d:"M8 4V13"})]})})};var de;function Ze(e){return{lang:(e==null?void 0:e.lang)??(de==null?void 0:de.lang),message:e==null?void 0:e.message,abortEarly:(e==null?void 0:e.abortEarly)??(de==null?void 0:de.abortEarly),abortPipeEarly:(e==null?void 0:e.abortPipeEarly)??(de==null?void 0:de.abortPipeEarly)}}var at;function vn(e){return at==null?void 0:at.get(e)}var it;function xn(e){return it==null?void 0:it.get(e)}var ot;function wn(e,r){var t;return(t=ot==null?void 0:ot.get(e))==null?void 0:t.get(r)}function Ve(e){var t,n;const r=typeof e;return r==="string"?`"${e}"`:r==="number"||r==="bigint"||r==="boolean"?`${e}`:r==="object"||r==="function"?(e&&((n=(t=Object.getPrototypeOf(e))==null?void 0:t.constructor)==null?void 0:n.name))??"null":r}function Z(e,r,t,n,a){const o=a&&"input"in a?a.input:t.value,i=(a==null?void 0:a.expected)??e.expects??null,l=(a==null?void 0:a.received)??Ve(o),c={kind:e.kind,type:e.type,input:o,expected:i,received:l,message:`Invalid ${r}: ${i?`Expected ${i} but r`:"R"}eceived ${l}`,requirement:e.requirement,path:a==null?void 0:a.path,issues:a==null?void 0:a.issues,lang:n.lang,abortEarly:n.abortEarly,abortPipeEarly:n.abortPipeEarly},p=e.kind==="schema",g=(a==null?void 0:a.message)??e.message??wn(e.reference,c.lang)??(p?xn(c.lang):null)??n.message??vn(c.lang);g!==void 0&&(c.message=typeof g=="function"?g(c):g),p&&(t.typed=!1),t.issues?t.issues.push(c):t.issues=[c]}function le(e){return{version:1,vendor:"valibot",validate(r){return e["~run"]({value:r},Ze())}}}function _n(e,r){return Object.hasOwn(e,r)&&r!=="__proto__"&&r!=="prototype"&&r!=="constructor"}function kn(e,r){const t=[...new Set(e)];return t.length>1?`(${t.join(` ${r} `)})`:t[0]??"never"}function Cn(e){if(e.path){let r="";for(const t of e.path)if(typeof t.key=="string"||typeof t.key=="number")r?r+=`.${t.key}`:r+=t.key;else return null;return r}return null}var Sn=class extends Error{constructor(e){super(e[0].message),this.name="ValiError",this.issues=e}},In=/^[\w+-]+(?:\.[\w+-]+)*@[\da-z]+(?:[.-][\da-z]+)*\.[a-z]{2,}$/iu;function lr(e,r){return{kind:"validation",type:"check",reference:lr,async:!1,expects:null,requirement:e,message:r,"~run"(t,n){return t.typed&&!this.requirement(t.value)&&Z(this,"input",t,n),t}}}function ur(e){return{kind:"validation",type:"email",reference:ur,expects:null,async:!1,requirement:In,message:e,"~run"(r,t){return r.typed&&!this.requirement.test(r.value)&&Z(this,"email",r,t),r}}}function je(e,r){return{kind:"validation",type:"max_length",reference:je,async:!1,expects:`<=${e}`,requirement:e,message:r,"~run"(t,n){return t.typed&&t.value.length>this.requirement&&Z(this,"length",t,n,{received:`${t.value.length}`}),t}}}function cr(e,r){return{kind:"validation",type:"max_value",reference:cr,async:!1,expects:`<=${e instanceof Date?e.toJSON():Ve(e)}`,requirement:e,message:r,"~run"(t,n){return t.typed&&!(t.value<=this.requirement)&&Z(this,"value",t,n,{received:t.value instanceof Date?t.value.toJSON():Ve(t.value)}),t}}}function Fe(e,r){return{kind:"validation",type:"min_length",reference:Fe,async:!1,expects:`>=${e}`,requirement:e,message:r,"~run"(t,n){return t.typed&&t.value.length<this.requirement&&Z(this,"length",t,n,{received:`${t.value.length}`}),t}}}function dr(e,r){return{kind:"validation",type:"min_value",reference:dr,async:!1,expects:`>=${e instanceof Date?e.toJSON():Ve(e)}`,requirement:e,message:r,"~run"(t,n){return t.typed&&!(t.value>=this.requirement)&&Z(this,"value",t,n,{received:t.value instanceof Date?t.value.toJSON():Ve(t.value)}),t}}}function pt(e,r){return{kind:"validation",type:"regex",reference:pt,async:!1,expects:`${e}`,requirement:e,message:r,"~run"(t,n){return t.typed&&!this.requirement.test(t.value)&&Z(this,"format",t,n),t}}}function mt(e){return{kind:"transformation",type:"transform",reference:mt,async:!1,operation:e,"~run"(r){return r.value=this.operation(r.value),r}}}function fr(e){return{kind:"validation",type:"url",reference:fr,async:!1,expects:null,requirement(r){try{return new URL(r),!0}catch{return!1}},message:e,"~run"(r,t){return r.typed&&!this.requirement(r.value)&&Z(this,"URL",r,t),r}}}function An(e,r,t){return typeof e.fallback=="function"?e.fallback(r,t):e.fallback}function hr(e,r,t){return typeof e.default=="function"?e.default(r,t):e.default}function pr(e,r){return{kind:"schema",type:"array",reference:pr,expects:"Array",async:!1,item:e,message:r,get"~standard"(){return le(this)},"~run"(t,n){var o;const a=t.value;if(Array.isArray(a)){t.typed=!0,t.value=[];for(let i=0;i<a.length;i++){const l=a[i],c=this.item["~run"]({value:l},n);if(c.issues){const p={type:"array",origin:"value",input:a,key:i,value:l};for(const g of c.issues)g.path?g.path.unshift(p):g.path=[p],(o=t.issues)==null||o.push(g);if(t.issues||(t.issues=c.issues),n.abortEarly){t.typed=!1;break}}c.typed||(t.typed=!1),t.value.push(c.value)}}else Z(this,"type",t,n);return t}}}function mr(e){return{kind:"schema",type:"boolean",reference:mr,expects:"boolean",async:!1,message:e,get"~standard"(){return le(this)},"~run"(r,t){return typeof r.value=="boolean"?r.typed=!0:Z(this,"type",r,t),r}}}function yr(e){return{kind:"schema",type:"number",reference:yr,expects:"number",async:!1,message:e,get"~standard"(){return le(this)},"~run"(r,t){return typeof r.value=="number"&&!isNaN(r.value)?r.typed=!0:Z(this,"type",r,t),r}}}function pe(e,r){return{kind:"schema",type:"object",reference:pe,expects:"Object",async:!1,entries:e,message:r,get"~standard"(){return le(this)},"~run"(t,n){var o;const a=t.value;if(a&&typeof a=="object"){t.typed=!0,t.value={};for(const i in this.entries){const l=this.entries[i];if(i in a||(l.type==="exact_optional"||l.type==="optional"||l.type==="nullish")&&l.default!==void 0){const c=i in a?a[i]:hr(l),p=l["~run"]({value:c},n);if(p.issues){const g={type:"object",origin:"value",input:a,key:i,value:c};for(const b of p.issues)b.path?b.path.unshift(g):b.path=[g],(o=t.issues)==null||o.push(b);if(t.issues||(t.issues=p.issues),n.abortEarly){t.typed=!1;break}}p.typed||(t.typed=!1),t.value[i]=p.value}else if(l.fallback!==void 0)t.value[i]=An(l);else if(l.type!=="exact_optional"&&l.type!=="optional"&&l.type!=="nullish"&&(Z(this,"key",t,n,{input:void 0,expected:`"${i}"`,path:[{type:"object",origin:"key",input:a,key:i,value:a[i]}]}),n.abortEarly))break}}else Z(this,"type",t,n);return t}}}function Pe(e,r){return{kind:"schema",type:"optional",reference:Pe,expects:`(${e.expects} | undefined)`,async:!1,wrapped:e,default:r,get"~standard"(){return le(this)},"~run"(t,n){return t.value===void 0&&(this.default!==void 0&&(t.value=hr(this,t,n)),t.value===void 0)?(t.typed=!0,t):this.wrapped["~run"](t,n)}}}function gr(e,r){return{kind:"schema",type:"picklist",reference:gr,expects:kn(e.map(Ve),"|"),async:!1,options:e,message:r,get"~standard"(){return le(this)},"~run"(t,n){return this.options.includes(t.value)?t.typed=!0:Z(this,"type",t,n),t}}}function br(e,r,t){return{kind:"schema",type:"record",reference:br,expects:"Object",async:!1,key:e,value:r,message:t,get"~standard"(){return le(this)},"~run"(n,a){var i,l;const o=n.value;if(o&&typeof o=="object"){n.typed=!0,n.value={};for(const c in o)if(_n(o,c)){const p=o[c],g=this.key["~run"]({value:c},a);if(g.issues){const h={type:"object",origin:"key",input:o,key:c,value:p};for(const m of g.issues)m.path=[h],(i=n.issues)==null||i.push(m);if(n.issues||(n.issues=g.issues),a.abortEarly){n.typed=!1;break}}const b=this.value["~run"]({value:p},a);if(b.issues){const h={type:"object",origin:"value",input:o,key:c,value:p};for(const m of b.issues)m.path?m.path.unshift(h):m.path=[h],(l=n.issues)==null||l.push(m);if(n.issues||(n.issues=b.issues),a.abortEarly){n.typed=!1;break}}(!g.typed||!b.typed)&&(n.typed=!1),g.typed&&(n.value[g.value]=b.value)}}else Z(this,"type",n,a);return n}}}function re(e){return{kind:"schema",type:"string",reference:re,expects:"string",async:!1,message:e,get"~standard"(){return le(this)},"~run"(r,t){return typeof r.value=="string"?r.typed=!0:Z(this,"type",r,t),r}}}function En(e,r,t){const n=e["~run"]({value:r},Ze(t));if(n.issues)throw new Sn(n.issues);return n.value}function Fn(e,r){const t={};for(const n in e.entries)t[n]=!r||r.includes(n)?Pe(e.entries[n]):e.entries[n];return{...e,entries:t,get"~standard"(){return le(this)}}}function ve(...e){return{...e[0],pipe:e,get"~standard"(){return le(this)},"~run"(r,t){for(const n of e)if(n.kind!=="metadata"){if(r.issues&&(n.kind==="schema"||n.kind==="transformation")){r.typed=!1;break}(!r.issues||!t.abortEarly&&!t.abortPipeEarly)&&(r=n["~run"](r,t))}return r}}}function Vn(e,r,t){const n=e["~run"]({value:r},Ze(t));return{typed:n.typed,success:!n.issues,output:n.value,issues:n.issues}}async function Mn(e,r,t){const n=await e["~run"]({value:r},Ze(t));return{typed:n.typed,success:!n.issues,output:n.value,issues:n.issues}}const Le=({error:e})=>!e||!e.message?null:s.o("div",{role:"alert",class:"text-error-11 flex max-w-full items-start gap-1 overflow-hidden rounded-2xl px-2 py-2",children:[s.o("svg",{class:"text-error-9 mt-0.5 h-4 w-4 shrink-0",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[s.o("circle",{cx:"8",cy:"8",r:"6.3",stroke:"currentColor","stroke-width":"1.4"}),s.o("rect",{x:"7",y:"4",width:"2",height:"5",fill:"currentColor"}),s.o("rect",{x:"7",y:"10",width:"2",height:"2",fill:"currentColor"})]}),s.o("p",{class:"break-words pr-1 text-sm",children:e.message})]}),xe=({class:e,...r})=>{const{t}=s.useTranslation();return s.o("button",{type:"button",class:s.clsx("fr touch-hitbox text-neutral-11 bg-neutral-1 ring-divider hover:ring-divider active:ring-interactive-bg-hover hover:text-neutral-12 active:text-neutral-12 hover:bg-divider active:bg-interactive-bg-hover flex flex-shrink-0 items-center justify-center gap-1 self-center rounded-full py-1 pl-2 pr-2.5 text-sm ring-1 transition-all",e),...r,children:[s.o("svg",{"aria-hidden":!0,class:"block",width:"16",height:"16",viewBox:"0 0 16 16",fill:"transparent",stroke:"currentColor","stroke-linecap":"round","stroke-width":"1.5",children:[s.o("title",{children:t("skip")}),s.o("path",{d:"M3.25 11.25A5 5 0 0 1 12 7"}),s.o("path",{d:"M13.25 4.5V8.25H9.5"})]}),t("skip")]})};var yt={Afghanistan:"93",Albania:"355",Algeria:"213","American Samoa":"1 684",Andorra:"376",Angola:"244",Anguilla:"1 264",Antarctica:"672","Antigua and Barbuda":"1 268",Argentina:"54",Armenia:"374",Aruba:"297",Australia:"61",Austria:"43",Azerbaijan:"994",Bahrain:"973",Bangladesh:"880",Barbados:"1 246",Belarus:"375",Belgium:"32",Belize:"501",Benin:"229",Bermuda:"1 441",Bhutan:"975",Bolivia:"591","Bosnia and Herzegovina":"387",Botswana:"267","Bouvet Island":"47",Brazil:"55","British Indian Ocean Territory":"246","British Virgin Islands":"1 284",Brunei:"673",Bulgaria:"359","Burkina Faso":"226",Burundi:"257","Cabo Verde":"238",Cambodia:"855",Cameroon:"237",Canada:"1","Caribbean Netherlands":"599","Cayman Islands":"1 345","Central African Republic":"236",Chad:"235",Chile:"56",China:"86","Christmas Island":"61","Cocos (Keeling) Islands":"61",Colombia:"57",Comoros:"269","Cook Islands":"682","Costa Rica":"506",Croatia:"385",Cuba:"53",Curaçao:"599",Cyprus:"357",Czechia:"420","Côte d'Ivoire":"225","Democratic Republic of the Congo":"243",Denmark:"45",Djibouti:"253","Dominican Republic":"1 809",Ecuador:"593",Egypt:"20","El Salvador":"503","Equatorial Guinea":"240",Eritrea:"291",Estonia:"372",Eswatini:"268",Ethiopia:"251","Falkland Islands (Islas Malvinas)":"500","Faroe Islands":"298",Fiji:"679",Finland:"358",France:"33","French Guiana":"594","French Polynesia":"689","French Southern and Antarctic Lands":"262",Gabon:"241",Georgia:"995",Germany:"49",Ghana:"233",Gibraltar:"350",Greece:"30",Greenland:"299",Grenada:"1 473",Guadeloupe:"590",Guam:"1 671",Guatemala:"502",Guernsey:"44",Guinea:"224","Guinea-Bissau":"245",Guyana:"592",Haiti:"509",Honduras:"504","Hong Kong":"852",Hungary:"36",Iceland:"354",India:"91",Indonesia:"62",Iran:"98",Iraq:"964",Ireland:"353","Isle of Man":"44",Israel:"972",Italy:"39",Jamaica:"1 876",Japan:"81",Jersey:"44",Jordan:"962",Kazakhstan:"7",Kenya:"254",Kiribati:"686",Kosovo:"383",Kuwait:"965",Kyrgyzstan:"996",Laos:"856",Latvia:"371",Lebanon:"961",Lesotho:"266",Liberia:"231",Libya:"218",Liechtenstein:"423",Lithuania:"370",Luxembourg:"352",Macao:"853",Madagascar:"261",Malawi:"265",Malaysia:"60",Maldives:"960",Mali:"223",Malta:"356","Marshall Islands":"692",Martinique:"596",Mauritania:"222",Mauritius:"230",Mayotte:"262",Mexico:"52",Micronesia:"691",Moldova:"373",Monaco:"377",Mongolia:"976",Montenegro:"382",Montserrat:"1 664",Morocco:"212",Mozambique:"258","Myanmar (Burma)":"95",Namibia:"264",Nauru:"674",Nepal:"977",Netherlands:"31","New Caledonia":"687","New Zealand":"64",Nicaragua:"505",Niger:"227",Nigeria:"234",Niue:"683","Norfolk Island":"672","North Korea":"850","North Macedonia":"389","Northern Mariana Islands":"1 670",Norway:"47",Oman:"968",Pakistan:"92",Palau:"680",Palestine:"970",Panama:"507","Papua New Guinea":"675",Paraguay:"595",Peru:"51",Philippines:"63","Pitcairn Islands":"64",Poland:"48",Portugal:"351","Puerto Rico":"1 787",Qatar:"974",Romania:"40",Russia:"7",Rwanda:"250",Réunion:"262","Saint Barthélemy":"590","Saint Helena, Ascension and Tristan da Cunha":"290","Saint Kitts and Nevis":"1 869","Saint Lucia":"1 758","Saint Martin":"590","Saint Pierre and Miquelon":"508","Saint Vincent and the Grenadines":"1 784",Samoa:"685","San Marino":"378","Saudi Arabia":"966",Senegal:"221",Serbia:"381",Seychelles:"248","Sierra Leone":"232",Singapore:"65","Sint Maarten":"1 721",Slovakia:"421",Slovenia:"386","Solomon Islands":"677",Somalia:"252","South Africa":"27","South Georgia and the South Sandwich Islands":"500","South Korea":"82","South Sudan":"211",Spain:"34","Sri Lanka":"94",Sudan:"249",Suriname:"597","Svalbard and Jan Mayen":"47",Sweden:"46",Switzerland:"41",Syria:"963","São Tomé and Príncipe":"239",Taiwan:"886",Tajikistan:"992",Tanzania:"255",Thailand:"66","The Bahamas":"1 242","The Gambia":"220","Timor-Leste":"670",Togo:"228",Tokelau:"690",Tonga:"676","Trinidad and Tobago":"1 868",Tunisia:"216",Turkmenistan:"993","Turks and Caicos Islands":"1 649",Tuvalu:"688",Türkiye:"90","U.S. Virgin Islands":"1 340",Uganda:"256",Ukraine:"380","United Arab Emirates":"971","United Kingdom":"44","United States":"1","United States Minor Outlying Islands":"1",Uruguay:"598",Uzbekistan:"998",Vanuatu:"678","Vatican City":"379",Venezuela:"58",Vietnam:"84","Wallis and Futuna":"681","Western Sahara":"212",Yemen:"967",Zambia:"260",Zimbabwe:"263","Åland Islands":"358"};const Me=s.cva("outline-divider ease-expo-out placeholder:text-neutral-10 text-neutral-12 focus-visible:outline-accent-7 caret-accent-9 bg-lowest py-1 text-base outline outline-2 transition-all",{variants:{optional:{true:"pr-16 pl-3",false:"pl-3 pr-3"}},defaultVariants:{optional:!1}}),Ln="https://api.mapbox.com/search/searchbox/v1/suggest",Tn="ZzRDWFU0dTZ3SF9aWk9RNGl6QzZaWS5RZmlFak13a0hPbGxXZXlNSGN5RUhObUJ6TXpSV08yUW5OdE5tSTZJU1lpd2lJb1JYYXRObmJ2Tm5iaGhHZWx4V1lpb2pJMUp5ZS5rcA==",Nn=e=>atob(e).split("").reverse().join(""),fe=pe({name:re()}),Rn=pe({suggestions:pr(pe({full_address:Pe(re()),place_formatted:Pe(re()),name:Pe(re()),mapbox_id:re(),context:Fn(pe({address:fe,street:fe,neighborhood:fe,locality:fe,district:fe,place:fe,region:fe,postcode:fe,country:fe}))}))}),Dn=({logger:e,t:r})=>s.F(()=>{var n;const t=(n=s.store.current$.peek().flow)==null?void 0:n.data.flowSessionId;return t?{enabled:!0,getPredictions:async a=>{var b;const o=new URL(Ln);o.searchParams.set("q",a),o.searchParams.set("session_token",t);const i=(b=s.store.current$.peek().flow)==null?void 0:b.locationOrigin;i&&i.lat!==void 0&&i.lng!==void 0&&i.lat>=-90&&i.lat<=90&&i.lng>=-180&&i.lng<=180&&o.searchParams.set("proximity",`${i.lng},${i.lat}`),o.searchParams.set("access_token",Nn(Tn));const c=await fetch(o);if(!c.ok)return e.error("Failed to get address details",c),{ok:!1,error:r("address_error")};const p=Vn(Rn,await c.json());if(p.success===!1)return e.error("Failed to parse address details",p.issues),{ok:!1,error:r("address_error")};const{suggestions:g}=p.output;return{ok:!0,data:g.map(h=>{var m,w,S,C,_,y,E,A,V;return{label:h.full_address??h.place_formatted??h.name??h.mapbox_id,id:h.mapbox_id,address:{line1:((m=h.context.address)==null?void 0:m.name)??((w=h.context.street)==null?void 0:w.name),line2:void 0,line3:((S=h.context.neighborhood)==null?void 0:S.name)??((C=h.context.locality)==null?void 0:C.name),city:((_=h.context.place)==null?void 0:_.name)??((y=h.context.district)==null?void 0:y.name),state:(E=h.context.region)==null?void 0:E.name,postcode:(A=h.context.postcode)==null?void 0:A.name,country:(V=h.context.country)==null?void 0:V.name}}})}}}:{enabled:!1}},[e,r]),Lt=e=>{const{t:r}=s.useTranslation();return s.o("button",{type:"button",class:"touch-hitbox text-neutral-11 hover:bg-neutral-4 hover:text-neutral-12 hover:border-neutral-5 relative flex items-center gap-1 rounded-[18px] border border-solid border-transparent px-3 py-1 pl-1.5 text-sm transition-colors",...e,children:[s.o("svg",{width:"16",height:"16",viewBox:"0 0 16 16",stroke:"currentColor","stroke-width":"1.5",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:s.o("path",{d:"M10 3L5 8L10 13"})}),s.o("span",{children:r("back")})]})},On=({input:e,onSubmitSuccess:r,logger:t})=>{const{t:n}=s.useTranslation(),[a,o]=s.h(),{enabled:i,getPredictions:l}=Dn({logger:t,t:n}),[c,p]=s.h(i?"query":"manual"),[g,b]=s.h(""),[h,m]=s.h(),w=s._(),S=s._(),C=y=>{var A;if(s.invariant(i,"Query state should not be enabled"),y=y.trim(),y===((A=w.current)==null?void 0:A.query)||y===(h==null?void 0:h.query)&&h.status==="done")return;if(b(y),y===""){w.current=void 0,m(void 0);return}const E=w.current={query:y};m({query:y,status:"pending"}),l(y).then(V=>{w.current===E&&(w.current=void 0,m(V.ok?{query:y,status:"done",items:V.data}:{query:y,status:"failed",error:V.error}))},V=>{w.current===E&&(w.current=void 0,t.error("Failed to get address details",V),m({query:y,status:"failed",error:n("address_error")}))})},_=(y,E)=>{o(A=>({...A,[y]:E}))};switch(c){case"query":return s.invariant(i,"Query state should not be enabled"),s.o(Bn,{input:e,onSkip:()=>r(null),onAddressSelect:y=>{if(y===""){w.current&&(w.current=void 0,m(void 0)),p("manual");return}const E=(h==null?void 0:h.status)==="done"?h.items.find(A=>A.id===y):void 0;E&&(S.current!==y&&o(E.address),S.current=y,p("details"))},onAddressSearch:C,lookup:h,query:g});case"details":return s.invariant(a!==void 0),s.o(Tt,{input:e,logger:t,onSubmitSuccess:r,addressFields:a,onFieldChange:_,actions:s.o(Lt,{onClick:()=>{p("query")}})});case"manual":return s.o(Tt,{logger:t,input:e,onSubmitSuccess:r,addressFields:a??{},onFieldChange:_,actions:i?s.o(Lt,{onClick:()=>{p("query")}}):e.config.optional?s.o(xe,{onClick:()=>r(null)}):void 0})}},Bn=({input:e,onSkip:r,lookup:t,onAddressSelect:n,query:a,onAddressSearch:o})=>{const{t:i}=s.useTranslation(),l=s._(null);return s.y(()=>{l.current&&(l.current.focus(),l.current.select())},[]),s.o(s.k,{children:[s.o("form",{noValidate:!0,onSubmit:c=>{c.preventDefault();const g=new FormData(c.currentTarget).get("address");typeof g=="string"&&o(g)},class:"flex gap-2 p-2.5",children:[s.o("div",{class:"group relative flex-1",children:[s.o("input",{ref:l,name:"address",id:"chat-address",autocomplete:"address-line1",autoFocus:!0,placeholder:e.config.placeholder||i("address_search"),defaultValue:a,class:Me({optional:!!e.config.optional,className:"w-full rounded-full"})}),s.o("button",{type:"submit",class:"touch-hitbox text-neutral-12 hover:bg-neutral-3 fr absolute bottom-0 right-0 top-0 flex cursor-pointer items-center gap-1 rounded-full px-3 transition-all",children:[s.o("svg",{"aria-hidden":"true",width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:s.o("g",{id:"inploi",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round",strokeWidth:"1.5",children:[s.o("circle",{cx:"7",cy:"7",r:"4"}),s.o("path",{d:"M10 10L13 13"})]})}),s.o("span",{class:"sr-only",children:i("search")})]})]}),e.config.optional&&s.o(xe,{class:"relative",onClick:r})]}),(t==null?void 0:t.status)==="failed"?s.o(Le,{error:{message:t.error}}):null,s.o("p",{role:"status",class:(t==null?void 0:t.status)==="pending"||(t==null?void 0:t.status)==="done"&&t.items.length===0?"text-neutral-11 flex items-center gap-2 px-4 py-2 text-sm":"sr-only",children:(t==null?void 0:t.status)==="pending"?s.o(s.k,{children:[s.o(s.LoadingIndicator,{"aria-hidden":"true",class:"h-4 w-4 shrink-0"}),i("address_searching")]}):(t==null?void 0:t.status)==="done"&&t.items.length===0?i("address_no_results"):null}),s.o("ul",{children:[((t==null?void 0:t.status)==="done"?t.items:[]).map(c=>s.o("li",{children:s.o("button",{class:"text-neutral-11 fr hover:bg-neutral-3 focus-visible:bg-neutral-3 hover:text-neutral-12 border-b-neutral-3 flex w-full items-center border border-b border-solid border-transparent px-4 py-3 text-sm transition-colors duration-100",onClick:()=>{n(c.id)},children:[s.o("span",{class:"flex-grow",children:c.label}),s.o("svg",{class:"flex-none",width:"16",height:"16",viewBox:"0 0 16 16",stroke:"currentColor","stroke-width":"1.5",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:s.o("path",{d:"M6 3L11 8L6 13"})})]})},c.id)),s.o("li",{children:s.o("button",{class:"text-neutral-11 fr hover:bg-neutral-3 focus-visible:bg-neutral-3 hover:text-neutral-12 border-b-neutral-3 flex w-full items-center border border-b border-solid border-transparent px-4 py-3 text-sm transition-colors duration-100",onClick:()=>{n("")},children:s.o("span",{class:"flex-grow",children:i("address_manual")})})},"")]})]})},lt=["line1","line2","line3","city","state","postcode","country"],Tt=({addressFields:e,onFieldChange:r,onSubmitSuccess:t,actions:n,input:a})=>{const o=s._(null);s.y(()=>{if(o.current){const c=o.current.querySelector("input");c&&(c.focus(),c.select())}},[]);const i=Object.keys(yt),{t:l}=s.useTranslation();return s.o("form",{class:"flex flex-col px-2 pt-2",onSubmit:c=>{const p=c.currentTarget,g=[...p.querySelectorAll("input")].filter(m=>m.value!==""&&!m.value.trim());for(const m of g){m.value="";const w=lt.find(S=>a.config.keys[S]===m.name);w&&r(w,"")}if(g.length>0&&!p.checkValidity()){c.preventDefault(),p.reportValidity();return}const b=new FormData(p),h=Object.fromEntries(b.entries());t({type:"address",value:h})},children:[s.o("div",{class:"bg-neutral-3 border-neutral-5 grid items-center gap-1.5 rounded-2xl border pb-2 pl-4 pr-3 pt-3 [grid-template-columns:min-content_1fr]",ref:o,children:lt.map((c,p)=>{const g=`isdk_${c}`,b=a.config.keys[c];return b?s.o(s.k,{children:[s.o("label",{for:g,class:"text-neutral-11 [&:has(+*>input:focus)]:text-neutral-12 w-24 pb-2 text-xs uppercase leading-3 tracking-widest transition-colors",children:l(c)}),s.o("div",{class:"flex flex-col items-stretch gap-1.5",children:[c==="country"?s.o("div",{class:"relative",children:[s.o("select",{class:"text-neutral-12 hover:bg-neutral-4 placeholder:text-neutral-8 focus:bg-neutral-5 w-full flex-1 appearance-none rounded-lg border-solid bg-transparent bg-none px-3 py-1.5 text-base transition-colors focus:outline-none",name:b,id:g,defaultValue:e[c],onChange:h=>r(c,h.currentTarget.value),required:!0,children:[e.country&&!i.includes(e.country)?s.o("option",{value:e[c],children:e[c]}):s.o("option",{value:"",children:l("select_country")}),i.map(h=>s.o("option",{value:h,children:h},h))]}),s.o("svg",{class:"text-neutral-12 absolute bottom-2.5 right-2 flex items-center justify-center",width:"16",height:"16",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:s.o("path",{d:"M4 6.5L8 10.5L12 6.5"})})]}):s.o("input",{autoFocus:p===0?!0:void 0,class:"text-neutral-12 hover:bg-neutral-4 placeholder:text-neutral-8 focus:bg-neutral-5 flex-1 rounded-lg border-solid bg-transparent px-3 py-1.5 text-base transition-colors autofill:shadow-[inset_0_0_0_1000px_hsl(210_16.7%_97.6%)] focus:outline-none",name:b,id:g,defaultValue:e[c],onInput:h=>r(c,h.currentTarget.value),required:c!=="line2"||a.config.line2Required===!0}),p===lt.length-1?s.o("hr",{class:"m-0 w-full border-b border-b-transparent"}):s.o("hr",{class:"border-b-neutral-5 m-0 w-full border-b border-solid"})]})]}):null})}),s.o("div",{class:"bg-neutral-1 sticky bottom-0 flex items-center py-2",children:[n,s.o(Se,{class:"ml-auto"})]})]})},gt=()=>{const e=s._(null);return s.p(()=>{var r;(r=e.current)==null||r.focus()},[]),e},vr=["true","false"],$n=gr(vr),jn="answer",xr="flex items-center flex-wrap gap-2 p-2.5",wr="min-w-0 max-w-full flex-auto",_r=s.k$1(({label:e,...r},t)=>s.o("button",{class:"bg-lowest ease-expo-out ring-divider text-neutral-12 active:ring-accent-7 active:bg-accent-2 active:text-accent-11 fr block w-full overflow-hidden rounded-2xl px-2 py-2.5 ring-2 transition-all selection:bg-transparent",...r,ref:t,children:s.o("p",{class:"text-center text-base",children:e})})),Pn=({input:e,onSubmitSuccess:r})=>{const t=gt();return s.o("form",{noValidate:!0,class:"",onSubmit:n=>{n.preventDefault();const a=s.getFormSubmitter(n).value,o=En($n,a);r({type:"boolean",value:o==="true"})},children:[s.o("ul",{class:xr,children:vr.map((n,a)=>s.o("li",{class:wr,children:s.o(_r,{ref:a===0?t:null,type:"submit",name:jn,value:n,label:e.config.labels[n]},n)}))}),e.config.optional&&s.o("div",{class:"px-2 pb-2",children:s.o(xe,{class:"relative w-full",type:"button",onClick:()=>r(null)})})]})},qn=e=>new Promise((r,t)=>{const n=new FileReader;n.onload=()=>{if(typeof n.result!="string"||!n.result)return t(new Error("Invalid file"));r(n.result)},n.onerror=t,n.readAsDataURL(e)}),Nt=e=>e.reduce((r,t)=>r+t.sizeKb,0),Un=s.isSubmissionOfType("file"),Rt=3,Ye=e=>{const r=e.lastIndexOf(".");return r===-1?[e,""]:[e.slice(0,r),e.slice(r)]},Wn=({file:e,class:r,...t})=>{const{t:n}=s.useTranslation(),[a,o]=Ye(e.name);return s.o("div",{class:s.clsx("bg-accent-1 outline-accent-4 flex max-w-full gap-2 overflow-hidden rounded-lg px-3 py-2 text-sm outline",r),...t,children:[s.o("p",{class:"text-accent-12 flex flex-grow overflow-hidden",children:[s.o("span",{class:"sr-only",children:[n("file_name"),": "]}),s.o("span",{class:"block truncate",children:a}),s.o("span",{children:o})]}),s.o("p",{class:"text-accent-11",children:[s.o("span",{class:"sr-only",children:[n("file_size"),": "]}),s.ue(e.sizeKb)]})]})},Dt=({class:e,...r})=>s.o("li",{class:s.clsx("outline-neutral-6 text-neutral-11 bg-neutral-1 block rounded-md px-1 py-0.5 text-xs outline outline-1",e),...r}),zn=(e,r)=>{const[t,n]=Ye(e);return`${t.slice(0,r)}${n}`},Ot=e=>({name:zn(e.name,42),sizeKb:e.size/1e3}),Kn=[".heic",".heif",".jpg",".jpeg",".png",".gif",".webp",".txt",".rtf",".odt",".pages",".zip"],Gn=(e,r,t)=>{const n=Ye(r.name)[1].toLowerCase(),a=[...t.map(i=>i.toLowerCase()),...Kn],o=n===""?"none":a.includes(n)?n:"other";return`chatbot-file-refused:${e}:${o}`},Hn=({input:e,onSubmitSuccess:r,analytics:t})=>{var C;const n=(C=s.store.current$.value.flow)==null?void 0:C.data.submissions[e.key],[a,o]=s.h(Un(n)&&n.value.length?{status:"ready",files:n.value}:{status:"empty"}),i=s._(0),l=a.status==="ready"?a.files:[],c=a.status==="ready"||a.status==="pending"?a.files:[],p=a.status==="error"?a.error:void 0,g=c.length-Rt,b=Nt(c),h=gt(),{t:m}=s.useTranslation(),w=_=>{if(!_.length)return{reason:"required",error:{type:"required",message:m("validation_file")}};if(!s.ae(_,e.config.extensions))return{reason:"type",file:_.find(y=>!s.ae([y],e.config.extensions)),error:{type:"validate",message:m("validation_file_ext",{ext:e.config.extensions.join(", ")})}};if(_.some(y=>y.sizeKb===0))return{reason:"empty",file:_.find(y=>y.sizeKb===0),error:{type:"validate",message:m("validation_file_empty")}};if(e.config.fileSizeLimitKib&&Nt(_)>e.config.fileSizeLimitKib)return{reason:"size",error:{type:"max",message:m("validation_file_size",{size:s.ue(e.config.fileSizeLimitKib)})}};if(!e.config.allowMultiple&&_.length>1)return{reason:"count",error:{type:"invalid",message:m("validation_file_max",{count:1})}}},S=(_,y)=>{var E,A;return t.log({event:"INTERACTION",properties:{tag:Gn(_,y,e.config.extensions)},customProperties:(A=(E=s.store.current$.peek().flow)==null?void 0:E.analytics)==null?void 0:A.customProperties})};return s.o("form",{class:"flex flex-col gap-1 p-2.5",onSubmit:_=>{if(_.preventDefault(),a.status==="pending"||a.status==="error")return;const y=w(l);y?o({status:"error",error:y.error}):r({type:"file",value:l})},children:[s.o("div",{class:"flex items-center gap-2",children:[s.o("label",{ref:h,for:"dropzone-file",class:"border-neutral-8 bg-neutral-2 flex h-48 w-full cursor-pointer flex-col items-center justify-center overflow-hidden rounded-2xl border border-dashed p-4",children:[c.length>0?s.o("ul",{class:"flex max-w-full flex-wrap justify-center gap-1 overflow-hidden p-1",children:[c.slice(0,Rt).map(_=>{const[y,E]=Ye(_.name);return s.o(Dt,{class:"flex overflow-hidden",children:[s.o("span",{class:"block truncate",children:y}),s.o("span",{children:E})]})}),g>0?s.o(Dt,{children:m("file_more",{count:g})}):null]}):s.o("div",{class:"flex flex-col justify-center gap-4 pb-6 pt-5",children:[s.o("header",{class:"flex flex-col items-center gap-0",children:[s.o("svg",{class:"text-neutral-11 mb-1 h-8 w-8","aria-hidden":"true",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 20 16",children:s.o("path",{stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"1.5",d:"M13 13h3a3 3 0 0 0 0-6h-.025A5.56 5.56 0 0 0 16 6.5 5.5 5.5 0 0 0 5.207 5.021C5.137 5.017 5.071 5 5 5a4 4 0 0 0 0 8h2.167M10 15V6m0 0L8 8m2-2 2 2"})}),s.o("p",{class:"text-neutral-12 tracking-[-0.01em]",children:m("upload_file",{count:e.config.allowMultiple?2:1})}),e.config.fileSizeLimitKib?s.o("p",{class:"text-neutral-11 text-xs",children:["(",m("file_max_size",{size:s.ue(e.config.fileSizeLimitKib)}),")"]}):null]}),s.o("aside",{class:"flex flex-col items-center gap-2",children:[s.o("p",{id:"accepted-filetypes",class:"sr-only",children:m("file_extensions")}),s.o("ul",{"aria-describedby":"accepted-filetypes",class:"flex flex-wrap justify-center gap-2",children:e.config.extensions.map(_=>s.o("li",{class:"ring-lowest outline-neutral-6 text-neutral-11 bg-neutral-1 rounded-md px-1 py-0.5 text-[11px] uppercase tracking-wide outline outline-1 ring-2",children:_.replace(".","")}))})]})]}),s.o("p",{role:"status",class:s.clsx("text-neutral-11 flex items-center gap-1.5 text-xs",c.length===0&&"sr-only"),children:a.status==="pending"?s.o(s.k,{children:[s.o(s.LoadingIndicator,{"aria-hidden":"true",class:"h-4 w-4"}),m("file_preparing",{count:c.length})]}):a.status==="ready"?s.o(s.k,{children:[l.length>1?m("file_total_size",{size:s.ue(b)}):s.ue(b),s.o("span",{class:"sr-only",children:[". ",m("file_ready",{count:l.length})]})]}):null}),s.o("input",{id:"dropzone-file","aria-label":m("upload_file",{count:e.config.allowMultiple?2:1}),onInput:async _=>{s.invariant(_.target instanceof HTMLInputElement);const y=_.target.files?Array.from(_.target.files):[];_.target.value="";const[E]=y;if(!E)return;const A=++i.current,V=a.status==="ready",L=y.map(Ot),q=w(L);if(q)return S(q.reason,q.file??E),o({status:"error",error:q.error});o({status:"pending",files:L});let D;try{const P=await Promise.all(y.map(async O=>{try{return{...Ot(O),data:await qn(O)}}catch(H){throw D??(D=O),H}}));i.current===A&&o({status:"ready",files:P})}catch{if(i.current!==A)return;S("unreadable",D??E),o({status:"error",error:{type:"invalid",message:m(V?"file_read_error_replacement":"file_read_error")}})}},multiple:e.config.allowMultiple,accept:e.config.extensions.join(","),type:"file",class:"sr-only"})]}),s.o("div",{class:"flex h-full flex-col items-center gap-2",children:[s.o(Se,{disabled:l.length===0}),e.config.optional&&s.o(xe,{class:"relative",onClick:()=>r(null)})]})]}),s.o(Le,{error:p})]})};var We=e=>e.type==="checkbox",Ce=e=>e instanceof Date,ee=e=>e==null;const kr=e=>typeof e=="object";var K=e=>!ee(e)&&!Array.isArray(e)&&kr(e)&&!Ce(e),Jn=e=>K(e)&&e.target?We(e.target)?e.target.checked:e.target.value:e,Xn=e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e,Zn=(e,r)=>e.has(Xn(r)),Yn=e=>{const r=e.constructor&&e.constructor.prototype;return K(r)&&r.hasOwnProperty("isPrototypeOf")},bt=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function G(e){if(e instanceof Date)return new Date(e);const r=typeof FileList<"u"&&e instanceof FileList;if(bt&&(e instanceof Blob||r))return e;const t=Array.isArray(e);if(!t&&!(K(e)&&Yn(e)))return e;const n=t?[]:Object.create(Object.getPrototypeOf(e));for(const a in e)Object.prototype.hasOwnProperty.call(e,a)&&(n[a]=G(e[a]));return n}var Qe=e=>/^\w*$/.test(e),U=e=>e===void 0,vt=e=>Array.isArray(e)?e.filter(Boolean):[],xt=e=>vt(e.replace(/["|']|\]/g,"").split(/\.|\[/)),I=(e,r,t)=>{if(!r||!K(e))return t;const n=(Qe(r)?[r]:xt(r)).reduce((a,o)=>ee(a)?a:a[o],e);return U(n)||n===e?U(e[r])?t:e[r]:n},ie=e=>typeof e=="boolean",se=e=>typeof e=="function",j=(e,r,t)=>{let n=-1;const a=Qe(r)?[r]:xt(r),o=a.length,i=o-1;for(;++n<o;){const l=a[n];let c=t;if(n!==i){const p=e[l];c=K(p)||Array.isArray(p)?p:isNaN(+a[n+1])?{}:[]}if(l==="__proto__"||l==="constructor"||l==="prototype")return;e[l]=c,e=e[l]}};const Bt={BLUR:"blur",FOCUS_OUT:"focusout",CHANGE:"change"},ae={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},he={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},Qn=s.Cn.createContext(null);Qn.displayName="HookFormControlContext";var es=(e,r,t,n=!0)=>{const a={defaultValues:r._defaultValues};for(const o in e)Object.defineProperty(a,o,{get:()=>{const i=o;return r._proxyFormState[i]!==ae.all&&(r._proxyFormState[i]=!n||ae.all),t&&(t[i]=!0),e[i]}});return a};const ts=typeof window<"u"?s.Cn.useLayoutEffect:s.Cn.useEffect;var te=e=>typeof e=="string",rs=(e,r,t,n,a)=>te(e)?(n&&r.watch.add(e),I(t,e,a)):Array.isArray(e)?e.map(o=>(n&&r.watch.add(o),I(t,o))):(n&&(r.watchAll=!0),t),dt=e=>ee(e)||!kr(e);function be(e,r,t=new WeakSet){if(dt(e)||dt(r))return Object.is(e,r);if(Ce(e)&&Ce(r))return Object.is(e.getTime(),r.getTime());const n=Object.keys(e),a=Object.keys(r);if(n.length!==a.length)return!1;if(t.has(e)||t.has(r))return!0;t.add(e),t.add(r);for(const o of n){const i=e[o];if(!a.includes(o))return!1;if(o!=="ref"){const l=r[o];if(Ce(i)&&Ce(l)||K(i)&&K(l)||Array.isArray(i)&&Array.isArray(l)?!be(i,l,t):!Object.is(i,l))return!1}}return!0}const ns=s.Cn.createContext(null);ns.displayName="HookFormContext";var Cr=(e,r,t,n,a)=>r?{...t[e],types:{...t[e]&&t[e].types?t[e].types:{},[n]:a||!0}}:{},qe=e=>Array.isArray(e)?e:[e],$t=()=>{let e=[];return{get observers(){return e},next:a=>{for(const o of e)o.next&&o.next(a)},subscribe:a=>(e.push(a),{unsubscribe:()=>{e=e.filter(o=>o!==a)}}),unsubscribe:()=>{e=[]}}};function Sr(e,r){const t={};for(const n in e)if(e.hasOwnProperty(n)){const a=e[n],o=r[n];if(a&&K(a)&&o){const i=Sr(a,o);K(i)&&(t[n]=i)}else e[n]&&(t[n]=o)}return t}var Q=e=>K(e)&&!Object.keys(e).length,wt=e=>e.type==="file",Je=e=>{if(!bt)return!1;const r=e?e.ownerDocument:0;return e instanceof(r&&r.defaultView?r.defaultView.HTMLElement:HTMLElement)},Ir=e=>e.type==="select-multiple",_t=e=>e.type==="radio",ss=e=>_t(e)||We(e),ut=e=>Je(e)&&e.isConnected;function as(e,r){const t=r.slice(0,-1).length;let n=0;for(;n<t;)e=U(e)?n++:e[r[n++]];return e}function is(e){for(const r in e)if(e.hasOwnProperty(r)&&!U(e[r]))return!1;return!0}function z(e,r){const t=Array.isArray(r)?r:Qe(r)?[r]:xt(r),n=t.length===1?e:as(e,t),a=t.length-1,o=t[a];return n&&delete n[o],a!==0&&(K(n)&&Q(n)||Array.isArray(n)&&is(n))&&z(e,t.slice(0,-1)),e}var os=e=>{for(const r in e)if(se(e[r]))return!0;return!1};function Ar(e){return Array.isArray(e)||K(e)&&!os(e)}function ft(e,r={}){for(const t in e){const n=e[t];Ar(n)?(r[t]=Array.isArray(n)?[]:{},ft(n,r[t])):U(n)||(r[t]=!0)}return r}function Ee(e,r,t){t||(t=ft(r));for(const n in e){const a=e[n];if(Ar(a))U(r)||dt(t[n])?t[n]=ft(a,Array.isArray(a)?[]:{}):Ee(a,ee(r)?{}:r[n],t[n]);else{const o=r[n];t[n]=!be(a,o)}}return t}const jt={value:!1,isValid:!1},Pt={value:!0,isValid:!0};var Er=e=>{if(Array.isArray(e)){if(e.length>1){const r=e.filter(t=>t&&t.checked&&!t.disabled).map(t=>t.value);return{value:r,isValid:!!r.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!U(e[0].attributes.value)?U(e[0].value)||e[0].value===""?Pt:{value:e[0].value,isValid:!0}:Pt:jt}return jt},Fr=(e,{valueAsNumber:r,valueAsDate:t,setValueAs:n})=>U(e)?e:r?e===""?NaN:e&&+e:t&&te(e)?new Date(e):n?n(e):e;const qt={isValid:!1,value:null};var Vr=e=>Array.isArray(e)?e.reduce((r,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:r,qt):qt;function Ut(e){const r=e.ref;return wt(r)?r.files:_t(r)?Vr(e.refs).value:Ir(r)?[...r.selectedOptions].map(({value:t})=>t):We(r)?Er(e.refs).value:Fr(U(r.value)?e.ref.value:r.value,e)}var ls=(e,r,t,n)=>{const a={};for(const o of e){const i=I(r,o);i&&j(a,o,i._f)}return{criteriaMode:t,names:[...e],fields:a,shouldUseNativeValidation:n}},Xe=e=>e instanceof RegExp,Oe=e=>U(e)?e:Xe(e)?e.source:K(e)?Xe(e.value)?e.value.source:e.value:e,Wt=e=>({isOnSubmit:!e||e===ae.onSubmit,isOnBlur:e===ae.onBlur,isOnChange:e===ae.onChange,isOnAll:e===ae.all,isOnTouch:e===ae.onTouched});const zt="AsyncFunction";var us=e=>!!e&&!!e.validate&&!!(se(e.validate)&&e.validate.constructor.name===zt||K(e.validate)&&Object.values(e.validate).find(r=>r.constructor.name===zt)),cs=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),Kt=(e,r,t)=>!t&&(r.watchAll||r.watch.has(e)||[...r.watch].some(n=>e.startsWith(n)&&/^\.\w+/.test(e.slice(n.length))));const Ue=(e,r,t,n)=>{for(const a of t||Object.keys(e)){const o=I(e,a);if(o){const{_f:i,...l}=o;if(i){if(i.refs&&i.refs[0]&&r(i.refs[0],a)&&!n)return!0;if(i.ref&&r(i.ref,i.name)&&!n)return!0;if(Ue(l,r))break}else if(K(l)&&Ue(l,r))break}}};function Gt(e,r,t){const n=I(e,t);if(n||Qe(t))return{error:n,name:t};const a=t.split(".");for(;a.length;){const o=a.join("."),i=I(r,o),l=I(e,o);if(i&&!Array.isArray(i)&&t!==o)return{name:t};if(l&&l.type)return{name:o,error:l};if(l&&l.root&&l.root.type)return{name:`${o}.root`,error:l.root};a.pop()}return{name:t}}var ds=(e,r,t,n)=>{t(e);const{name:a,...o}=e;return Q(o)||Object.keys(o).length>=Object.keys(r).length||Object.keys(o).find(i=>r[i]===(!n||ae.all))},fs=(e,r,t)=>!e||!r||e===r||qe(e).some(n=>n&&(t?n===r:n.startsWith(r)||r.startsWith(n))),hs=(e,r,t,n,a)=>a.isOnAll?!1:!t&&a.isOnTouch?!(r||e):(t?n.isOnBlur:a.isOnBlur)?!e:(t?n.isOnChange:a.isOnChange)?e:!0,ps=(e,r)=>!vt(I(e,r)).length&&z(e,r),ms=(e,r,t)=>{const n=qe(I(e,t));return j(n,"root",r[t]),j(e,t,n),e};function Ht(e,r,t="validate"){if(te(e)||Array.isArray(e)&&e.every(te)||ie(e)&&!e)return{type:t,message:te(e)?e:"",ref:r}}var Ae=e=>K(e)&&!Xe(e)?e:{value:e,message:""},Jt=async(e,r,t,n,a,o)=>{const{ref:i,refs:l,required:c,maxLength:p,minLength:g,min:b,max:h,pattern:m,validate:w,name:S,valueAsNumber:C,mount:_}=e._f,y=I(t,S);if(!_||r.has(S))return{};const E=l?l[0]:i,A=T=>{a&&E.reportValidity&&(E.setCustomValidity(ie(T)?"":T||""),E.reportValidity())},V={},L=_t(i),q=We(i),D=L||q,P=(C||wt(i))&&U(i.value)&&U(y)||Je(i)&&i.value===""||y===""||Array.isArray(y)&&!y.length,O=Cr.bind(null,S,n,V),H=(T,N,M,W=he.maxLength,J=he.minLength)=>{const X=T?N:M;V[S]={type:T?W:J,message:X,ref:i,...O(T?W:J,X)}};if(o?!Array.isArray(y)||!y.length:c&&(!D&&(P||ee(y))||ie(y)&&!y||q&&!Er(l).isValid||L&&!Vr(l).isValid)){const{value:T,message:N}=te(c)?{value:!!c,message:c}:Ae(c);if(T&&(V[S]={type:he.required,message:N,ref:E,...O(he.required,N)},!n))return A(N),V}if(!P&&(!ee(b)||!ee(h))){let T,N;const M=Ae(h),W=Ae(b);if(!ee(y)&&!isNaN(y)){const J=i.valueAsNumber||y&&+y;ee(M.value)||(T=J>M.value),ee(W.value)||(N=J<W.value)}else{const J=i.valueAsDate||new Date(y),X=ue=>new Date(new Date().toDateString()+" "+ue),ne=i.type=="time",me=i.type=="week";te(M.value)&&y&&(T=ne?X(y)>X(M.value):me?y>M.value:J>new Date(M.value)),te(W.value)&&y&&(N=ne?X(y)<X(W.value):me?y<W.value:J<new Date(W.value))}if((T||N)&&(H(!!T,M.message,W.message,he.max,he.min),!n))return A(V[S].message),V}if((p||g)&&!P&&(te(y)||o&&Array.isArray(y))){const T=Ae(p),N=Ae(g),M=!ee(T.value)&&y.length>+T.value,W=!ee(N.value)&&y.length<+N.value;if((M||W)&&(H(M,T.message,N.message),!n))return A(V[S].message),V}if(m&&!P&&te(y)){const{value:T,message:N}=Ae(m);if(Xe(T)&&!y.match(T)&&(V[S]={type:he.pattern,message:N,ref:i,...O(he.pattern,N)},!n))return A(N),V}if(w){if(se(w)){const T=await w(y,t),N=Ht(T,E);if(N&&(V[S]={...N,...O(he.validate,N.message)},!n))return A(N.message),V}else if(K(w)){let T={};for(const N in w){if(!Q(T)&&!n)break;const M=Ht(await w[N](y,t),E,N);M&&(T={...M,...O(N,M.message)},A(M.message),n&&(V[S]=T))}if(!Q(T)&&(V[S]={ref:E,...T},!n))return V}}return A(!0),V};const ys={mode:ae.onSubmit,reValidateMode:ae.onChange,shouldFocusError:!0};function gs(e={}){let r={...ys,...e},t={submitCount:0,isDirty:!1,isReady:!1,isLoading:se(r.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:r.errors||{},disabled:r.disabled||!1},n={},a=K(r.defaultValues)||K(r.values)?G(r.defaultValues||r.values)||{}:{},o=r.shouldUnregister?{}:G(a),i={action:!1,mount:!1,watch:!1,keepIsValid:!1},l={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set},c,p=0;const g={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},b={...g};let h={...b};const m={array:$t(),state:$t()},w=r.criteriaMode===ae.all,S=u=>d=>{clearTimeout(p),p=setTimeout(u,d)},C=async u=>{if(!i.keepIsValid&&!r.disabled&&(b.isValid||h.isValid||u)){let d;r.resolver?(d=Q((await D()).errors),_()):d=await O(n,!0),d!==t.isValid&&m.state.next({isValid:d})}},_=(u,d)=>{!r.disabled&&(b.isValidating||b.validatingFields||h.isValidating||h.validatingFields)&&((u||Array.from(l.mount)).forEach(f=>{f&&(d?j(t.validatingFields,f,d):z(t.validatingFields,f))}),m.state.next({validatingFields:t.validatingFields,isValidating:!Q(t.validatingFields)}))},y=(u,d=[],f,k,x=!0,v=!0)=>{if(k&&f&&!r.disabled){if(i.action=!0,v&&Array.isArray(I(n,u))){const F=f(I(n,u),k.argA,k.argB);x&&j(n,u,F)}if(v&&Array.isArray(I(t.errors,u))){const F=f(I(t.errors,u),k.argA,k.argB);x&&j(t.errors,u,F),ps(t.errors,u)}if((b.touchedFields||h.touchedFields)&&v&&Array.isArray(I(t.touchedFields,u))){const F=f(I(t.touchedFields,u),k.argA,k.argB);x&&j(t.touchedFields,u,F)}(b.dirtyFields||h.dirtyFields)&&(t.dirtyFields=Ee(a,o)),m.state.next({name:u,isDirty:T(u,d),dirtyFields:t.dirtyFields,errors:t.errors,isValid:t.isValid})}else j(o,u,d)},E=(u,d)=>{j(t.errors,u,d),m.state.next({errors:t.errors})},A=u=>{t.errors=u,m.state.next({errors:t.errors,isValid:!1})},V=(u,d,f,k)=>{const x=I(n,u);if(x){const v=I(o,u,U(f)?I(a,u):f);U(v)||k&&k.defaultChecked||d?j(o,u,d?v:Ut(x._f)):W(u,v),i.mount&&!i.action&&C()}},L=(u,d,f,k,x)=>{let v=!1,F=!1;const B={name:u};if(!r.disabled){if(!f||k){(b.isDirty||h.isDirty)&&(F=t.isDirty,t.isDirty=B.isDirty=T(),v=F!==B.isDirty);const $=be(I(a,u),d);F=!!I(t.dirtyFields,u),$?z(t.dirtyFields,u):j(t.dirtyFields,u,!0),B.dirtyFields=t.dirtyFields,v=v||(b.dirtyFields||h.dirtyFields)&&F!==!$}if(f){const $=I(t.touchedFields,u);$||(j(t.touchedFields,u,f),B.touchedFields=t.touchedFields,v=v||(b.touchedFields||h.touchedFields)&&$!==f)}v&&x&&m.state.next(B)}return v?B:{}},q=(u,d,f,k)=>{const x=I(t.errors,u),v=(b.isValid||h.isValid)&&ie(d)&&t.isValid!==d;if(r.delayError&&f?(c=S(()=>E(u,f)),c(r.delayError)):(clearTimeout(p),c=null,f?j(t.errors,u,f):z(t.errors,u)),(f?!be(x,f):x)||!Q(k)||v){const F={...k,...v&&ie(d)?{isValid:d}:{},errors:t.errors,name:u};t={...t,...F},m.state.next(F)}},D=async u=>(_(u,!0),await r.resolver(o,r.context,ls(u||l.mount,n,r.criteriaMode,r.shouldUseNativeValidation))),P=async u=>{const{errors:d}=await D(u);if(_(u),u)for(const f of u){const k=I(d,f);k?j(t.errors,f,k):z(t.errors,f)}else t.errors=d;return d},O=async(u,d,f={valid:!0})=>{for(const k in u){const x=u[k];if(x){const{_f:v,...F}=x;if(v){const B=l.array.has(v.name),$=x._f&&us(x._f);$&&b.validatingFields&&_([v.name],!0);const Y=await Jt(x,l.disabled,o,w,r.shouldUseNativeValidation&&!d,B);if($&&b.validatingFields&&_([v.name]),Y[v.name]&&(f.valid=!1,d||e.shouldUseNativeValidation))break;!d&&(I(Y,v.name)?B?ms(t.errors,Y,v.name):j(t.errors,v.name,Y[v.name]):z(t.errors,v.name))}!Q(F)&&await O(F,d,f)}}return f.valid},H=()=>{for(const u of l.unMount){const d=I(n,u);d&&(d._f.refs?d._f.refs.every(f=>!ut(f)):!ut(d._f.ref))&&Ie(u)}l.unMount=new Set},T=(u,d)=>!r.disabled&&(u&&d&&j(o,u,d),!be(we(),a)),N=(u,d,f)=>rs(u,l,{...i.mount?o:U(d)?a:te(u)?{[u]:d}:d},f,d),M=u=>vt(I(i.mount?o:a,u,r.shouldUnregister?I(a,u,[]):[])),W=(u,d,f={})=>{const k=I(n,u);let x=d;if(k){const v=k._f;v&&(!v.disabled&&j(o,u,Fr(d,v)),x=Je(v.ref)&&ee(d)?"":d,Ir(v.ref)?[...v.ref.options].forEach(F=>F.selected=x.includes(F.value)):v.refs?We(v.ref)?v.refs.forEach(F=>{(!F.defaultChecked||!F.disabled)&&(Array.isArray(x)?F.checked=!!x.find(B=>B===F.value):F.checked=x===F.value||!!x)}):v.refs.forEach(F=>F.checked=F.value===x):wt(v.ref)?v.ref.value="":(v.ref.value=x,v.ref.type||m.state.next({name:u,values:G(o)})))}(f.shouldDirty||f.shouldTouch)&&L(u,x,f.shouldTouch,f.shouldDirty,!0),f.shouldValidate&&ue(u)},J=(u,d,f)=>{for(const k in d){if(!d.hasOwnProperty(k))return;const x=d[k],v=u+"."+k,F=I(n,v);(l.array.has(u)||K(x)||F&&!F._f)&&!Ce(x)?J(v,x,f):W(v,x,f)}},X=(u,d,f={})=>{const k=I(n,u),x=l.array.has(u),v=G(d);j(o,u,v),x?(m.array.next({name:u,values:G(o)}),(b.isDirty||b.dirtyFields||h.isDirty||h.dirtyFields)&&f.shouldDirty&&m.state.next({name:u,dirtyFields:Ee(a,o),isDirty:T(u,v)})):k&&!k._f&&!ee(v)?J(u,v,f):W(u,v,f),Kt(u,l)?m.state.next({...t,name:u,values:G(o)}):m.state.next({name:i.mount?u:void 0,values:G(o)})},ne=async u=>{i.mount=!0;const d=u.target;let f=d.name,k=!0;const x=I(n,f),v=$=>{k=Number.isNaN($)||Ce($)&&isNaN($.getTime())||be($,I(o,f,$))},F=Wt(r.mode),B=Wt(r.reValidateMode);if(x){let $,Y;const ke=d.type?Ut(x._f):Jn(u),ge=u.type===Bt.BLUR||u.type===Bt.FOCUS_OUT,Rr=!cs(x._f)&&!r.resolver&&!I(t.errors,f)&&!x._f.deps||hs(ge,I(t.touchedFields,f),t.isSubmitted,B,F),rt=Kt(f,l,ge);j(o,f,ke),ge?(!d||!d.readOnly)&&(x._f.onBlur&&x._f.onBlur(u),c&&c(0)):x._f.onChange&&x._f.onChange(u);const nt=L(f,ke,ge),Dr=!Q(nt)||rt;if(!ge&&m.state.next({name:f,type:u.type,values:G(o)}),Rr)return(b.isValid||h.isValid)&&(r.mode==="onBlur"?ge&&C():ge||C()),Dr&&m.state.next({name:f,...rt?{}:nt});if(!ge&&rt&&m.state.next({...t}),r.resolver){const{errors:It}=await D([f]);if(_([f]),v(ke),k){const Or=Gt(t.errors,n,f),At=Gt(It,n,Or.name||f);$=At.error,f=At.name,Y=Q(It)}}else _([f],!0),$=(await Jt(x,l.disabled,o,w,r.shouldUseNativeValidation))[f],_([f]),v(ke),k&&($?Y=!1:(b.isValid||h.isValid)&&(Y=await O(n,!0)));k&&(x._f.deps&&(!Array.isArray(x._f.deps)||x._f.deps.length>0)&&ue(x._f.deps),q(f,Y,$,nt))}},me=(u,d)=>{if(I(t.errors,d)&&u.focus)return u.focus(),1},ue=async(u,d={})=>{let f,k;const x=qe(u);if(r.resolver){const v=await P(U(u)?u:x);f=Q(v),k=u?!x.some(F=>I(v,F)):f}else u?(k=(await Promise.all(x.map(async v=>{const F=I(n,v);return await O(F&&F._f?{[v]:F}:F)}))).every(Boolean),!(!k&&!t.isValid)&&C()):k=f=await O(n);return m.state.next({...!te(u)||(b.isValid||h.isValid)&&f!==t.isValid?{}:{name:u},...r.resolver||!u?{isValid:f}:{},errors:t.errors}),d.shouldFocus&&!k&&Ue(n,me,u?x:l.mount),k},we=(u,d)=>{let f={...i.mount?o:a};return d&&(f=Sr(d.dirtyFields?t.dirtyFields:t.touchedFields,f)),U(u)?f:te(u)?I(f,u):u.map(k=>I(f,k))},_e=(u,d)=>({invalid:!!I((d||t).errors,u),isDirty:!!I((d||t).dirtyFields,u),error:I((d||t).errors,u),isValidating:!!I(t.validatingFields,u),isTouched:!!I((d||t).touchedFields,u)}),ze=u=>{const d=u?qe(u):void 0;d==null||d.forEach(f=>z(t.errors,f)),d?d.forEach(f=>{m.state.next({name:f,errors:t.errors})}):m.state.next({errors:{}})},Te=(u,d,f)=>{const k=(I(n,u,{_f:{}})._f||{}).ref,x=I(t.errors,u)||{},{ref:v,message:F,type:B,...$}=x;j(t.errors,u,{...$,...d,ref:k}),m.state.next({name:u,errors:t.errors,isValid:!1}),f&&f.shouldFocus&&k&&k.focus&&k.focus()},Ke=(u,d)=>se(u)?m.state.subscribe({next:f=>"values"in f&&u(N(void 0,d),f)}):N(u,d,!0),Ne=u=>m.state.subscribe({next:d=>{fs(u.name,d.name,u.exact)&&ds(d,u.formState||b,Nr,u.reRenderRoot)&&u.callback({values:{...o},...t,...d,defaultValues:a})}}).unsubscribe,Ge=u=>(i.mount=!0,h={...h,...u.formState},Ne({...u,formState:{...g,...u.formState}})),Ie=(u,d={})=>{for(const f of u?qe(u):l.mount)l.mount.delete(f),l.array.delete(f),d.keepValue||(z(n,f),z(o,f)),!d.keepError&&z(t.errors,f),!d.keepDirty&&z(t.dirtyFields,f),!d.keepTouched&&z(t.touchedFields,f),!d.keepIsValidating&&z(t.validatingFields,f),!r.shouldUnregister&&!d.keepDefaultValue&&z(a,f);m.state.next({values:G(o)}),m.state.next({...t,...d.keepDirty?{isDirty:T()}:{}}),!d.keepIsValid&&C()},Re=({disabled:u,name:d})=>{if(ie(u)&&i.mount||u||l.disabled.has(d)){const x=l.disabled.has(d)!==!!u;u?l.disabled.add(d):l.disabled.delete(d),x&&i.mount&&!i.action&&C()}},R=(u,d={})=>{let f=I(n,u);const k=ie(d.disabled)||ie(r.disabled);return j(n,u,{...f||{},_f:{...f&&f._f?f._f:{ref:{name:u}},name:u,mount:!0,...d}}),l.mount.add(u),f?Re({disabled:ie(d.disabled)?d.disabled:r.disabled,name:u}):V(u,!0,d.value),{...k?{disabled:d.disabled||r.disabled}:{},...r.progressive?{required:!!d.required,min:Oe(d.min),max:Oe(d.max),minLength:Oe(d.minLength),maxLength:Oe(d.maxLength),pattern:Oe(d.pattern)}:{},name:u,onChange:ne,onBlur:ne,ref:x=>{if(x){R(u,d),f=I(n,u);const v=U(x.value)&&x.querySelectorAll&&x.querySelectorAll("input,select,textarea")[0]||x,F=ss(v),B=f._f.refs||[];if(F?B.find($=>$===v):v===f._f.ref)return;j(n,u,{_f:{...f._f,...F?{refs:[...B.filter(ut),v,...Array.isArray(I(a,u))?[{}]:[]],ref:{type:v.type,name:u}}:{ref:v}}}),V(u,!1,void 0,v)}else f=I(n,u,{}),f._f&&(f._f.mount=!1),(r.shouldUnregister||d.shouldUnregister)&&!(Zn(l.array,u)&&i.action)&&l.unMount.add(u)}}},ye=()=>r.shouldFocusError&&Ue(n,me,l.mount),De=u=>{ie(u)&&(m.state.next({disabled:u}),Ue(n,(d,f)=>{const k=I(n,f);k&&(d.disabled=k._f.disabled||u,Array.isArray(k._f.refs)&&k._f.refs.forEach(x=>{x.disabled=k._f.disabled||u}))},0,!1))},ce=(u,d)=>async f=>{let k;f&&(f.preventDefault&&f.preventDefault(),f.persist&&f.persist());let x=G(o);if(m.state.next({isSubmitting:!0}),r.resolver){const{errors:v,values:F}=await D();_(),t.errors=v,x=G(F)}else await O(n);if(l.disabled.size)for(const v of l.disabled)z(x,v);if(z(t.errors,"root"),Q(t.errors)){m.state.next({errors:{}});try{await u(x,f)}catch(v){k=v}}else d&&await d({...t.errors},f),ye(),setTimeout(ye);if(m.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:Q(t.errors)&&!k,submitCount:t.submitCount+1,errors:t.errors}),k)throw k},Lr=(u,d={})=>{I(n,u)&&(U(d.defaultValue)?X(u,G(I(a,u))):(X(u,d.defaultValue),j(a,u,G(d.defaultValue))),d.keepTouched||z(t.touchedFields,u),d.keepDirty||(z(t.dirtyFields,u),t.isDirty=d.defaultValue?T(u,G(I(a,u))):T()),d.keepError||(z(t.errors,u),b.isValid&&C()),m.state.next({...t}))},kt=(u,d={})=>{const f=u?G(u):a,k=G(f),x=Q(u),v=x?a:k;if(d.keepDefaultValues||(a=f),!d.keepValues){if(d.keepDirtyValues){const F=new Set([...l.mount,...Object.keys(Ee(a,o))]);for(const B of Array.from(F)){const $=I(t.dirtyFields,B),Y=I(o,B),ke=I(v,B);$&&!U(Y)?j(v,B,Y):!$&&!U(ke)&&X(B,ke)}}else{if(bt&&U(u))for(const F of l.mount){const B=I(n,F);if(B&&B._f){const $=Array.isArray(B._f.refs)?B._f.refs[0]:B._f.ref;if(Je($)){const Y=$.closest("form");if(Y){Y.reset();break}}}}if(d.keepFieldsRef)for(const F of l.mount)X(F,I(v,F));else n={}}o=r.shouldUnregister?d.keepDefaultValues?G(a):{}:G(v),m.array.next({values:{...v}}),m.state.next({values:{...v}})}l={mount:d.keepDirtyValues?l.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},i.mount=!b.isValid||!!d.keepIsValid||!!d.keepDirtyValues||!r.shouldUnregister&&!Q(v),i.watch=!!r.shouldUnregister,i.keepIsValid=!!d.keepIsValid,i.action=!1,d.keepErrors||(t.errors={}),m.state.next({submitCount:d.keepSubmitCount?t.submitCount:0,isDirty:x?!1:d.keepDirty?t.isDirty:!!(d.keepDefaultValues&&!be(u,a)),isSubmitted:d.keepIsSubmitted?t.isSubmitted:!1,dirtyFields:x?{}:d.keepDirtyValues?d.keepDefaultValues&&o?Ee(a,o):t.dirtyFields:d.keepDefaultValues&&u?Ee(a,u):d.keepDirty?t.dirtyFields:{},touchedFields:d.keepTouched?t.touchedFields:{},errors:d.keepErrors?t.errors:{},isSubmitSuccessful:d.keepIsSubmitSuccessful?t.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:a})},Ct=(u,d)=>kt(se(u)?u(o):u,{...r.resetOptions,...d}),Tr=(u,d={})=>{const f=I(n,u),k=f&&f._f;if(k){const x=k.refs?k.refs[0]:k.ref;x.focus&&setTimeout(()=>{x.focus(),d.shouldSelect&&se(x.select)&&x.select()})}},Nr=u=>{t={...t,...u}},St={control:{register:R,unregister:Ie,getFieldState:_e,handleSubmit:ce,setError:Te,_subscribe:Ne,_runSchema:D,_updateIsValidating:_,_focusError:ye,_getWatch:N,_getDirty:T,_setValid:C,_setFieldArray:y,_setDisabledField:Re,_setErrors:A,_getFieldArray:M,_reset:kt,_resetDefaultValues:()=>se(r.defaultValues)&&r.defaultValues().then(u=>{Ct(u,r.resetOptions),m.state.next({isLoading:!1})}),_removeUnmounted:H,_disableForm:De,_subjects:m,_proxyFormState:b,get _fields(){return n},get _formValues(){return o},get _state(){return i},set _state(u){i=u},get _defaultValues(){return a},get _names(){return l},set _names(u){l=u},get _formState(){return t},get _options(){return r},set _options(u){r={...r,...u}}},subscribe:Ge,trigger:ue,register:R,handleSubmit:ce,watch:Ke,setValue:X,getValues:we,reset:Ct,resetField:Lr,clearErrors:ze,unregister:Ie,setError:Te,setFocus:Tr,getFieldState:_e};return{...St,formControl:St}}function et(e={}){const r=s.Cn.useRef(void 0),t=s.Cn.useRef(void 0),[n,a]=s.Cn.useState({isDirty:!1,isValidating:!1,isLoading:se(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1,isReady:!1,defaultValues:se(e.defaultValues)?void 0:e.defaultValues});if(!r.current)if(e.formControl)r.current={...e.formControl,formState:n},e.defaultValues&&!se(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{const{formControl:i,...l}=gs(e);r.current={...l,formState:n}}const o=r.current.control;return o._options=e,ts(()=>{const i=o._subscribe({formState:o._proxyFormState,callback:()=>a({...o._formState}),reRenderRoot:!0});return a(l=>({...l,isReady:!0})),o._formState.isReady=!0,i},[o]),s.Cn.useEffect(()=>o._disableForm(e.disabled),[o,e.disabled]),s.Cn.useEffect(()=>{e.mode&&(o._options.mode=e.mode),e.reValidateMode&&(o._options.reValidateMode=e.reValidateMode)},[o,e.mode,e.reValidateMode]),s.Cn.useEffect(()=>{e.errors&&(o._setErrors(e.errors),o._focusError())},[o,e.errors]),s.Cn.useEffect(()=>{e.shouldUnregister&&o._subjects.state.next({values:o._getWatch()})},[o,e.shouldUnregister]),s.Cn.useEffect(()=>{if(o._proxyFormState.isDirty){const i=o._getDirty();i!==n.isDirty&&o._subjects.state.next({isDirty:i})}},[o,n.isDirty]),s.Cn.useEffect(()=>{var i;e.values&&!be(e.values,t.current)?(o._reset(e.values,{keepFieldsRef:!0,...o._options.resetOptions}),!((i=o._options.resetOptions)===null||i===void 0)&&i.keepIsValid||o._setValid(),t.current=e.values,a(l=>({...l}))):o._resetDefaultValues()},[o,e.values]),s.Cn.useEffect(()=>{o._state.mount||(o._setValid(),o._state.mount=!0),o._state.watch&&(o._state.watch=!1,o._subjects.state.next({...o._formState})),o._removeUnmounted()}),r.current.formState=s.Cn.useMemo(()=>es(n,o),[o,n]),r.current}const Xt=(e,r,t)=>{if(e&&"reportValidity"in e){const n=I(t,r);e.setCustomValidity(n&&n.message||""),e.reportValidity()}},bs=(e,r)=>{for(const t in r.fields){const n=r.fields[t];n&&n.ref&&"reportValidity"in n.ref?Xt(n.ref,t,e):n.refs&&n.refs.forEach(a=>Xt(a,t,e))}},vs=(e,r)=>{r.shouldUseNativeValidation&&bs(e,r);const t={};for(const n in e){const a=I(r.fields,n),o=Object.assign(e[n]||{},{ref:a&&a.ref});if(xs(r.names||Object.keys(e),n)){const i=Object.assign({},I(t,n));j(i,"root",o),j(t,n,i)}else j(t,n,o)}return t},xs=(e,r)=>e.some(t=>t.startsWith(r+"."));var tt=function(e,r,t){return t===void 0&&(t={}),function(n,a,o){try{var i=!o.shouldUseNativeValidation&&o.criteriaMode==="all";return Promise.resolve(Mn(e,n,Object.assign({},r,{abortPipeEarly:!i}))).then(function(l){if(l.issues){for(var c={};l.issues.length;){var p=l.issues[0],g=Cn(p);if(g&&(c[g]||(c[g]={message:p.message,type:p.type}),i)){var b=c[g].types,h=b&&b[p.type];c[g]=Cr(g,i,c,p.type,h?[].concat(h,p.message):p.message)}l.issues.shift()}return{values:{},errors:vs(c,o)}}return{values:t.raw?n:l.output,errors:{}}})}catch(l){return Promise.reject(l)}}};const Zt=27,Yt=12,Qt=10,ws=s.isSubmissionOfType("enum"),_s=(e,r)=>{const t={min:e.minSelected??0,max:e.maxSelected??e.options.length};return tt(pe({checked:ve(br(re(),mr()),mt(n=>Object.entries(n).filter(([a,o])=>o).map(([a,o])=>a)),je(t.max,r("validation_multiple_choice_max",{count:t.max})),Fe(t.min,r("validation_multiple_choice_min",{count:t.min})))}))},ks=s.k$1(({option:e,...r},t)=>s.o(s.k,{children:[s.o("input",{class:"peer sr-only h-full",type:"checkbox",...r,ref:t}),s.o("label",{class:"bg-lowest hover:bg-neutral-2 active:outline-neutral-8 ease-expo-out outline-divider text-neutral-11 peer-checked:outline-accent-7 peer-checked:bg-accent-2 peer-checked:text-accent-9 peer-focus-visible:ring-accent-9 peer-focus-visible:ring-offset-accent-7 block cursor-pointer select-none rounded-2xl px-3 py-1.5 outline outline-1 ring-0 ring-transparent transition-all selection:bg-transparent peer-focus-visible:ring-4",htmlFor:r.id,children:e.label})]})),er=s.cva("gutter-stable flex w-full flex-1 flex-wrap gap-2 overflow-y-auto rounded-xl p-2.5 pr-4",{variants:{variant:{singleOption:"justify-center",booleanLike:xr}}}),Cs=({input:e,onSubmitSuccess:r})=>{var g,b;const t=e.key?(g=s.store.current$.value.flow)==null?void 0:g.data.submissions[e.key]:void 0,n=(e.config.minSelected===1||e.config.minSelected===void 0)&&e.config.maxSelected===1,a=n&&e.config.options.length===2,{t:o}=s.useTranslation(),{register:i,handleSubmit:l,formState:{errors:c}}=et({defaultValues:{checked:n?{}:ws(t)?Object.fromEntries(t.value.map(h=>[h,!0])):{}},resolver:_s(e.config,o)}),p=gt();return a?s.o("ul",{style:{maxHeight:6.5*Zt+5*Yt+2*Qt},class:er({variant:"booleanLike"}),children:e.config.options.map((h,m)=>s.o("li",{class:wr,children:s.o(_r,{type:"submit",ref:w=>{w&&m===0&&(p.current=w)},label:h.label,value:"true",onClick:()=>r({type:"enum",value:[h.value]})})},h.value))}):s.o("form",{noValidate:!0,onSubmit:h=>l(m=>{const w=m.checked;r({type:"enum",value:w})})(h),children:[s.o("div",{class:"flex items-center gap-1",children:[s.o("ul",{style:{maxHeight:6.5*Zt+5*Yt+2*Qt},class:er({variant:e.config.options.length===1?"singleOption":void 0}),children:e.config.options.map((h,m)=>{const w=`checked.${h.value}`,{ref:S,...C}=i(w);return s.o("li",{class:"relative",children:s.o(ks,{option:h,autoFocus:m===0,ref:_=>{_&&m===0&&(p.current=_),S(_)},id:w,...C,onClick:n?()=>r({type:"enum",value:[h.value]}):void 0})},h.value)})}),s.o("div",{class:"flex flex-col items-center gap-2 pr-2.5 pt-2.5",children:[n?null:s.o(Se,{}),e.config.minSelected===0&&s.o(xe,{class:"relative",type:"button",onClick:()=>r({type:"enum",value:[]})})]})]}),s.o("div",{class:"px-1",children:s.o(Le,{error:(b=c.checked)==null?void 0:b.root})})]})},Ss=s.isSubmissionOfType("number"),Is=(e,r)=>{const t=e.min??Number.MIN_SAFE_INTEGER,n=e.max??Number.MAX_SAFE_INTEGER,a=e.decimalCases??0;return tt(pe({number:ve(yr(r("validation_number")),dr(t,r("validation_number_min",{min:t})),cr(n,r("validation_number_max",{max:n})),lr(o=>o===Number(o.toFixed(a)),r("validation_number_decimal_cases",{count:a})))}))},As=({input:e,onSubmitSuccess:r})=>{var b;const t=e.config.defaultValue,n=e.key?(b=s.store.current$.value.flow)==null?void 0:b.data.submissions[e.key]:void 0,{t:a}=s.useTranslation(),{register:o,handleSubmit:i,formState:{errors:l}}=et({defaultValues:{number:Ss(n)?n.value:t?Number(t):void 0},resolver:Is(e.config,a)}),{ref:c,...p}=o("number",{required:!e.config.optional,valueAsNumber:!0}),g=s._();return s.y(()=>{g.current&&(g.current.focus(),g.current.select())},[]),s.o("form",{class:"flex flex-col gap-1 p-2.5",onSubmit:i(h=>{h.number!==void 0&&r({type:"number",value:h.number})}),children:[s.o("div",{class:"flex items-center gap-2",children:[s.o("div",{class:"relative min-w-0 flex-grow",children:[s.o("input",{...p,id:"chat-input",autocomplete:"off",autoCapitalize:"off",autoCorrect:"off",autoFocus:!0,ref:h=>{h&&(g.current=h),c(h)},type:"text",min:e.config.min,max:e.config.max,class:Me({optional:e.config.optional,className:"[type=number:-webkit-inner-spin-button] w-full rounded-full [-webkit-outer-spin-button:none]"}),placeholder:e.config.placeholder}),e.config.optional&&s.o(xe,{class:"absolute bottom-0 right-0.5 top-0",onClick:()=>r(null)})]}),s.o(Se,{})]}),s.o(Le,{error:l.number})]})},Es=e=>{if(e==="")return{countryCode:"",phoneNumber:""};const r=Object.entries(yt).find(a=>e.startsWith(a[1])),t=r?r[1]:"",n=e.replace(t,"");return/^\d+$/.test(n)?{countryCode:t,phoneNumber:n}:{countryCode:"",phoneNumber:""}},Fs="44",Vs=/^[0-9 ]+$/,Ms=s.isSubmissionOfType("string"),Ls=s.isSubmissionOfType("phone"),Ts=e=>{const r=ve(re(e("validation_country_code")),pt(Vs,e("validation_country_code"))),t=ve(re(e("validation_phone")),Fe(1,e("validation_phone")),mt(n=>n.replace(/[^0-9]/g,"")));return tt(pe({countryCode:r,phoneNumber:t}))},Ns=({input:e,onSubmitSuccess:r})=>{var S;const t=e.key?(S=s.store.current$.value.flow)==null?void 0:S.data.submissions[e.key]:void 0,{t:n}=s.useTranslation(),[a,o]=s.h(),i=Ms(t)?Es(t.value):Ls(t)?t.value:void 0,{register:l,handleSubmit:c,formState:{errors:p},watch:g}=et({defaultValues:{countryCode:(i==null?void 0:i.countryCode)??e.config.defaultValue.countryCode??Fs,phoneNumber:(i==null?void 0:i.phoneNumber)??e.config.defaultValue.phoneNumber??""},resolver:Ts(n)}),{ref:b,...h}=l("phoneNumber",{required:!e.config.optional}),m=s._(),w=g("countryCode");return s.y(()=>{m.current&&(m.current.focus(),m.current.select())},[]),s.o("form",{noValidate:!0,class:"flex flex-col gap-1 p-2.5",onSubmit:c(C=>{const _=C.phoneNumber.replace(/[^0-9]/g,""),y=C.countryCode.replace(/[^0-9]/g,"");o(void 0);const E=e.config.minChars??7,A=_.length+y.length;if(A<E)return o(n("validation_phone_min_chars",{count:E}));const V=e.config.maxChars;if(V!=null&&A>V)return o(n("validation_max_chars",{count:V}));e.config.submissionFormat==="phone"?r({type:"phone",value:{countryCode:y,phoneNumber:_}}):r({type:"string",value:w+C.phoneNumber})}),children:[s.o("div",{class:"flex items-center gap-2",children:[s.o("div",{class:"relative flex min-w-0 flex-1 flex-grow gap-2",children:[s.o("label",{class:"text-neutral-12 bg-lowest hover:bg-neutral-5 placeholder:text-neutral-8 focus-visible:outline-accent-7 focus-within:bg-neutral-5 focus-within:outline-accent-7 outline-divider relative flex h-full cursor-pointer appearance-none items-center justify-center overflow-hidden text-ellipsis whitespace-nowrap rounded-l-full border-solid px-3 py-1.5 text-center text-base outline outline-2 transition-all focus-within:outline-none",htmlFor:`isdk_phone_${e.key}`,children:[s.o("span",{children:["+",w]}),s.o("select",{...l("countryCode",{}),id:`isdk_phone_${e.key}`,class:"absolute inset-0 opacity-0",children:Object.entries(yt).map(([C,_])=>s.o("option",{value:_,children:[C," (+",_,")"]},C))})]}),s.o("input",{...h,id:"chat-input",type:"tel",inputMode:"tel",autocomplete:"off",autoCapitalize:"off",autoCorrect:"off",autoFocus:!0,ref:C=>{C&&(m.current=C),b(C)},class:Me({optional:e.config.optional,className:"min-w-0 flex-1 rounded-r-full"}),placeholder:e.config.placeholder}),e.config.optional&&s.o(xe,{class:"absolute bottom-0 right-1 top-0",onClick:()=>r(null)})]}),s.o(Se,{})]}),s.o(Le,{error:p.countryCode||p.phoneNumber||{message:a}})]})},He=e=>e===void 0?0:Math.max(0,Math.ceil((e-Date.now())/1e3)),tr=(e,r,t,n)=>t!==void 0&&n*1e3>s.X?e("submission_available_at",{time:s.fe(t,r)}):e("submission_cooldown",{count:n}),Rs=({input:e,onSubmitSuccess:r})=>{const{t,locale:n}=s.useTranslation(),{availableAt:a}=e.config,[o,i]=s.h(()=>He(a)),[l,c]=s.h("");s.p(()=>{const g=He(a);if(i(g),g===0)return;c(tr(t,n,a,g));const b=setInterval(()=>{const h=He(a);i(h),!(h>0)&&(clearInterval(b),c(t("submission_cooldown_ready")))},250);return()=>clearInterval(b)},[a,n,t]);const p=o>0;return s.o("div",{class:"flex flex-col items-center gap-2 py-3",children:[s.o("button",{class:"bg-accent-9 hover:bg-accent-10 active:bg-submit-bg-active hover:border-accent-10 active:border-submit-bg-active border-accent-9 ring-accent-6 focus-visible:outline-accent-8 ring-offset-neutral-1 aria-disabled:hover:bg-accent-9 aria-disabled:hover:border-accent-9 flex cursor-pointer rounded-full border border-solid px-5 py-3 pr-4 text-white outline-none ring-1 ring-offset-[1.5px] transition-all duration-300 focus-visible:outline-2 active:ring-2 active:ring-offset-2 aria-disabled:cursor-not-allowed aria-disabled:opacity-50 aria-disabled:active:ring-1 aria-disabled:active:ring-offset-[1.5px]",name:e.key,"aria-disabled":p,"aria-describedby":p?"submit-cooldown":void 0,onClick:()=>{He(a)>0||r(null)},children:s.o("span",{class:"flex items-center gap-1.5",children:[s.o("span",{class:"inline-flex items-center text-sm font-medium",children:e.config.label||"Submit"}),s.o("svg",{stroke:"currentColor","stroke-width":"1.5",width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[s.o("path",{d:"M4 8L8 4L12 8"}),s.o("path",{d:"M8 4V13"})]})]})}),p&&s.o("p",{id:"submit-cooldown","aria-hidden":"true",class:"text-neutral-11 text-xs",children:tr(t,n,a,o)}),s.o("p",{role:"status",class:"sr-only",children:l})]})},Ds=160,rr=e=>{e.style.height="auto",e.style.height=`${Math.min(e.scrollHeight,Ds)}px`},Os={date:{type:"date",inputMode:"text"},email:{type:"email",inputMode:"email",formNoValidate:!0},text:{type:"text",inputMode:"text"},url:{type:"url",inputMode:"url",formNoValidate:!0}},Bs=s.isSubmissionOfType("string"),$s=(e,r)=>{const t={maxLength:r("validation_max_chars",{count:e.maxChars??999}),minLength:r("validation_min_chars",{count:e.minChars??1})};return tt(pe({text:{date:ve(re(r("validation_date")),pt(/^\d{4}-\d{2}-\d{2}$/,r("validation_date"))),email:ve(re(r("validation_email")),ur(r("validation_email")),Fe(e.minChars??1,t.minLength),je(e.maxChars??1/0,t.maxLength)),text:ve(re(),Fe(e.minChars??1,t.minLength),je(e.maxChars??1/0,t.maxLength)),url:ve(re(r("validation_url")),fr(r("validation_url")),Fe(e.minChars??1,t.minLength),je(e.maxChars??1/0,t.maxLength))}[e.format]}))},js=({input:e,onSubmitSuccess:r})=>{var S;const{t}=s.useTranslation(),n=e.key?(S=s.store.current$.value.flow)==null?void 0:S.data.submissions[e.key]:void 0,a=e.config.defaultValue,o=e.config.multiline===!0&&e.config.format==="text",{register:i,handleSubmit:l,watch:c,formState:{errors:p}}=et({defaultValues:{text:Bs(n)?n.value:a??""},resolver:$s(e.config,t)}),{ref:g,...b}=i("text",{required:!e.config.optional}),h=s._();s.y(()=>{h.current&&(h.current instanceof HTMLTextAreaElement&&rr(h.current),h.current.focus(),h.current.select())},[]);const m=e.config.maxChars,w=o&&m!==void 0?c("text").length:void 0;return s.o("form",{noValidate:!0,class:"flex flex-col gap-1 p-2.5",onSubmit:l(C=>{r({type:"string",value:C.text})}),children:[s.o("div",{class:o?"flex items-end gap-2":"flex items-center gap-2",children:[s.o("div",{class:"relative min-w-0 flex-1",children:[o?s.o("textarea",{id:"chat-input",...b,rows:2,maxLength:m,autoFocus:!0,"aria-describedby":w!==void 0?"chat-input-count":void 0,onInput:C=>rr(C.currentTarget),onKeyDown:C=>{var _;C.key==="Enter"&&(C.ctrlKey||C.metaKey)&&(C.preventDefault(),(_=C.currentTarget.form)==null||_.requestSubmit())},ref:C=>{C&&(h.current=C),g(C)},placeholder:e.config.placeholder,class:Me({optional:!!e.config.optional,className:"block w-full resize-none overflow-y-auto rounded-2xl"})}):s.o("input",{id:"chat-input",...b,...Os[e.config.format],autocomplete:"off",autoCapitalize:"off",autoCorrect:"off",autoFocus:!0,ref:C=>{C&&(h.current=C),g(C)},placeholder:e.config.placeholder,class:Me({optional:!!e.config.optional,className:"w-full rounded-full"})}),e.config.optional&&s.o(xe,{class:o?"absolute bottom-1 right-0.5":"absolute bottom-0 right-0.5 top-0",onClick:()=>r(null)})]}),s.o(Se,{})]}),w!==void 0&&m!==void 0&&s.o("p",{id:"chat-input-count",class:"text-neutral-10 px-3 text-right text-xs",children:[w,"/",m]}),s.o(Le,{error:p.text})]})},Ps={text:js,phone:Ns,"multiple-choice":Cs,boolean:Pn,file:Hn,submit:Rs,address:On,number:As},qs=({logger:e,analytics:r})=>{var o;const t=(o=s.store.current$.value.flow)==null?void 0:o.data.currentInput,n=s._(null),a=()=>s.chatStore.onInteractionFn$.value();return s.y(()=>{var i;(i=n.current)==null||i.scrollTo({top:0})},[t]),s.o("div",{ref:n,class:"border-divider max-h-[calc(100%-var(--header-height)-4rem)] w-full shrink-0 scroll-pb-12 overflow-y-auto overscroll-contain border-t",children:s.o("div",{class:"flex flex-col",onPointerDownCapture:t?a:void 0,onKeyDownCapture:t?a:void 0,children:t?(()=>{const i=Ps[t.type];return s.o(i,{logger:e,analytics:r,onSubmitSuccess:s.chatStore.onSubmitSuccessFn$.value,input:t})})():s.o("div",{class:"flex items-center gap-2 p-2.5",children:[s.o("input",{"aria-hidden":"true",id:"chat-input",class:Me({optional:!1,className:"flex-grow rounded-full"}),disabled:!0}),s.o(Se,{disabled:!0,"aria-hidden":"true",tabIndex:-1})]})})})};function Us(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Ws=function(e){return e instanceof RegExp},zs=function(r){var t=/[\\^$.*+?()[\]{}|]/g,n=RegExp(t.source);return r&&n.test(r)?r.replace(t,"\\$&"):r},Mr=function(e){return typeof e=="string"},Ks=function(e){var r=[];return e.forEach(function(t){Array.isArray(t)?r=r.concat(t):r.push(t)}),r};function Gs(e,r,t){var n=0,a=0;if(e==="")return e;if(!e||!Mr(e))throw new TypeError("First argument to react-string-replace#replaceString must be a string");var o=r;Ws(o)||(o=new RegExp("("+zs(o)+")","gi"));for(var i=e.split(o),l=1,c=i.length;l<c;l+=2){if(i[l]===void 0||i[l-1]===void 0){console.warn("reactStringReplace: Encountered undefined value during string replacement. Your RegExp may not be working the way you expect.");continue}a=i[l].length,n+=i[l-1].length,i[l]=t(i[l],l,n),n+=a}return i}var Hs=function(r,t,n){return Array.isArray(r)||(r=[r]),Ks(r.map(function(a){return Mr(a)?Gs(a,t,n):a}))};const Be=Us(Hs),Js=/(\[[^\]]+\]\([^)]+\))/g,Xs=/\[([^\]]+)\]\(([^)]+)\)/,Zs=/(https?:\/\/[^\s]+)/g,Ys=/_(.*?)_/g,Qs=/\*\*(.*?)\*\*/g,ea=/\\n|\n/g,nr="text-accent-10 hover:text-accent-11 no-underline underline-offset-2 hover:underline",ta=e=>{const r=Be(e,Js,(i,l)=>{const[,c,p]=i.match(Xs)??[];return p?s.o("a",{class:nr,href:p,children:c??p},p+l):s.o("span",{children:"INVALID LINK"})}),t=Be(r,Zs,(i,l)=>s.o("a",{class:nr,href:i,children:i},i+l)),n=Be(t,Ys,(i,l)=>s.o("em",{children:i},i+l)),a=Be(n,Qs,(i,l)=>s.o("strong",{children:i},i+l));return Be(a,ea,(i,l)=>s.o("br",{},`br-${l}`))},ra=s.cva("select-text max-w-[min(100%,24rem)] [text-wrap:pretty] leading-snug flex-shrink min-w-[2rem] py-2 px-3 rounded-[18px] min-h-[36px] break-words relative",{variants:{side:{left:"bg-bubble-weak-bg text-neutral-12 shadow-surface-sm outline outline-1 outline-bubble-weak rounded-bl-md",right:"ml-auto bg-accent-9 text-white rounded-br-md shadow-surface-sm shadow-bubble-strong-shadow"},animate:{true:"animate-bubble-in",false:""}},defaultVariants:{side:"left"}}),na=({children:e,className:r,animate:t,side:n,...a})=>s.o("p",{style:{transformOrigin:n==="left"?"0% 50%":"100% 50%"},class:ra({className:r,side:n,animate:t}),...a,children:e}),sa=({message:e})=>s.o("div",{class:"bg-accent-3 flex w-full items-center justify-center overflow-hidden rounded-xl px-2 py-2",children:s.o("a",{onClick:e.onClick,class:"bg-lowest shadow-surface-sm ring-accent-6 hover:ring-accent-8 active:bg-accent-2 active:text-accent-10 text-accent-9 focus-visible:ring-accent-7/50 text-wrap-balance flex items-center gap-1.5 rounded-full py-2 pl-4 pr-2.5 text-center no-underline ring-1 transition-all focus:outline-none focus-visible:ring-4 focus-visible:ring-offset-2",target:"_blank",href:e.href,children:[e.text,s.o("svg",{class:"flex-none",width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:s.o("path",{d:"M3.64645 11.3536C3.45118 11.1583 3.45118 10.8417 3.64645 10.6465L10.2929 4L6 4C5.72386 4 5.5 3.77614 5.5 3.5C5.5 3.22386 5.72386 3 6 3L11.5 3C11.6326 3 11.7598 3.05268 11.8536 3.14645C11.9473 3.24022 12 3.36739 12 3.5L12 9.00001C12 9.27615 11.7761 9.50001 11.5 9.50001C11.2239 9.50001 11 9.27615 11 9.00001V4.70711L4.35355 11.3536C4.15829 11.5488 3.84171 11.5488 3.64645 11.3536Z",fill:"currentColor","fill-rule":"evenodd","clip-rule":"evenodd"})})]})}),aa=({className:e,...r})=>s.o("div",{"aria-hidden":!0,children:s.chatStore.isBotTyping$.value===!0?s.o("div",{"data-testid":"typing-indicator",class:s.clsx("flex gap-1 p-4",e),...r,children:Array.from({length:3},(t,n)=>s.o("div",{class:"bg-accent-9 h-1.5 w-1.5 animate-bounce rounded-full",style:{animationDelay:`${-n*200}ms`}}))}):void 0}),ia={bot:"left",user:"right"},oa=s.cva("w-full select-none py-2 text-wrap-balance text-center text-[10px] uppercase tracking-widest drop-shadow-[0_1.5px_var(--i-color-n-1)]",{variants:{variant:{info:"text-neutral-11",warning:"text-system-warning",error:"text-error-11",success:"text-system-success"}}}),la=({lastSentMessageFooter:e})=>{const{t:r}=s.useTranslation(),t=s.store.current$.value.flow,n=(t==null?void 0:t.data.messages)??[],a=t?ht(t):void 0;return s.o("ol",{"aria-label":r("chat_messages"),"aria-live":"polite",class:"mt-auto flex flex-col justify-end gap-2 p-2 pt-[calc(var(--header-height)+1rem)]",children:[n.map((o,i)=>s.o(s.k,{children:s.o("li",{class:"flex",tabIndex:i===n.length-1?-1:void 0,children:[a&&o.groupId===a&&!n.slice(i+1).some(l=>l.groupId===a)?e:null,s.M$1(o).with({type:"system"},l=>s.o("p",{class:oa({variant:l.variant}),children:l.text})).with({type:"text",author:s.z$1.union("bot","user")},l=>{const c=i===n.length-1,p=l.author==="bot"?ta(l.text):l.text;return s.o(s.k,{children:s.o(na,{animate:c,side:ia[l.author],children:p},i)})}).with({type:"link"},l=>s.o(sa,{message:l})).with({type:"image"},l=>s.o("img",{class:"shadow-surface-md w-full max-w-[min(100%,24rem)] rounded-2xl",src:l.url,style:{aspectRatio:l.width/l.height}})).with({type:"file"},l=>s.o(Wn,{class:l.author==="bot"?void 0:"ml-auto",file:{name:l.fileName,sizeKb:l.fileSizeKb}})).with({type:"loading"},l=>{const c=n[n.length-1];return!(l===c)||s.chatStore.isBotTyping$.value?null:s.o("div",{class:"flex flex-grow flex-col items-center justify-center gap-2",children:[s.o(s.LoadingIndicator,{"aria-hidden":l.text?"true":void 0,class:"text-neutral-6 h-8 w-8"}),l.text?s.o("p",{role:"status",class:"text-neutral-11 text-sm",children:l.text}):null]})}).exhaustive()]})},i)),s.o("li",{class:s.chatStore.captchaVisible$.value?"flex":"hidden",children:s.o("div",{"data-captcha-slot":!0,tabIndex:-1,role:"group","aria-label":r("captcha_check"),class:"w-full max-w-[min(100%,24rem)] rounded-md"})},"captcha"),s.o(aa,{},"typing")]})},ua=({logger:e,apiClient:r,analytics:t,talentBankClient:n})=>{const{flow:a}=s.store.current$.value;s.invariant(a,"Flow is required to exist to show chatbot body");const o=s.store.viewState$.value,{chatRef:i,chatService:l}=s.useChatService(),{t:c}=s.useTranslation(),[p,g]=s.h();return s.y(()=>{o==="maximised"&&s.chatStore.scrollToEnd()},[o]),s.y(()=>{var V;const{state:b,flow:h}=s.store.current$.peek();if(b!=="loaded")throw new Error(c("invalid_state"));let m=h.data.nodeHistory.at(-1);if(s.chatStore.scrollToEnd(),s.store.setInput(void 0),h.data.isFinished)return;const w=()=>{const L=s.store.current$.peek().flow;!L||L.data.hasInteracted||(s.store.markAsInteracted(),Mt(t,L,"FLOW_INTERACT"))};s.chatStore.onInteractionFn$.value=w,m===void 0?(m=ar(a.nodes).id,s.store.setCurrentNodeId(m),Mt(t,h,"FLOW_START")):s.store.removeMessagesSentByNodeIds([m,ct]);const{interpret:S,abort:C,undo:_}=Jr({context:a.context,analytics:{service:t,customProperties:(V=a.analytics)==null?void 0:V.customProperties},apiClient:r,logger:e,talentBankClient:n,flow:a,chatService:l,t:c,getApplicationRecovery:()=>{var L;return(L=s.store.current$.peek().flow)==null?void 0:L.data.applicationRecovery},setApplicationRecovery:s.store.setApplicationRecovery,persistWriteBarrier:()=>s.store.persistWriteBarrier(h),getSubmissions:()=>{var L;return(L=s.store.current$.peek().flow)==null?void 0:L.data.submissions},onInterpret:L=>s.store.setCurrentNodeId(L.id),onFlowEnd:async()=>{var q;s.store.markAsFinished();const L=s.store.current$.peek().flow;s.invariant(L),t.log({event:"FLOW_END",properties:{flow_id:a.id,flow_version:a.version,flow_session_id:L.data.flowSessionId,flow_build:a.build,job:a.job},customProperties:(q=a.analytics)==null?void 0:q.customProperties})}}),y=m,E=()=>{g(()=>_),S(y)},A=new AbortController;return h.offerResume?bn({chatService:l,t:c,signal:A.signal}).then(L=>(s.store.settleResume(h),L?E():(s.store.restart(),s.idb.flushStateData()))).catch(L=>{L instanceof s.T||e.error("Resume prompt failed",L)}):E(),()=>{A.abort(),s.chatStore.onInteractionFn$.value===w&&(s.chatStore.onInteractionFn$.value=()=>{}),C()}},[t,r,l,e,a,n,c]),s.o(s.k,{children:[s.o("div",{class:"relative flex min-h-0 w-full max-w-full flex-grow flex-col",children:[s.o("div",{ref:i,role:"region","aria-label":c("conversation_history"),tabIndex:0,className:"hide-scrollbars fr flex min-h-0 w-full max-w-full flex-grow flex-col overflow-y-auto ring-inset",style:{WebkitOverflowScrolling:"touch"},children:s.o(la,{lastSentMessageFooter:!ht(a)||!p?null:s.o(ca,{undoFn:p})})}),s.chatStore.isReadingHistory$.value&&!a.data.isFinished&&!s.chatStore.isBotTyping$.value&&s.o("div",{class:"absolute bottom-2 left-1/2 -translate-x-1/2",children:s.o(s.SvgIconButton,{class:"bg-neutral-1 ring-divider shadow-surface-md ring-1","aria-label":c("jump_to_current"),onClick:()=>{var h,m;s.chatStore.scrollToEnd(),(m=((h=i.current)==null?void 0:h.querySelector('li[tabindex="-1"]'))??i.current)==null||m.focus({preventScroll:!0})},children:s.o(s.ChevronDown,{})})})]}),s.o(qs,{logger:e,analytics:t})]})},ca=({undoFn:e})=>{const{t:r}=s.useTranslation();return s.o("div",{class:"flex flex-1 items-center justify-end px-1",children:s.o(s.SvgIconButton,{"aria-label":r("undo"),onClick:async()=>{const{flow:t}=s.store.current$.peek();s.invariant(t),e(t.data.nodeHistory)},children:s.o("path",{d:"M3 13h2.67l6.66-6.67a1.9 1.9 0 0 0 0-2.66 1.91 1.91 0 0 0-2.66 0L3 10.33V13Zm4.6-7.25 2.67 2.67"})})})};exports.ChatbotBody=ua;