@inploi/plugin-chatbot 14.0.0 → 14.1.0

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.
@@ -40,17 +40,20 @@ type ChatbotInterpreterParams = {
40
40
  getApplicationRecovery: () => ApplicationRecovery | undefined;
41
41
  setApplicationRecovery: (applicationRecovery?: ApplicationRecovery) => void | Promise<void>;
42
42
  chatService: ChatService;
43
+ persistWriteBarrier: () => Promise<void>;
43
44
  /** When flow has no more nodes to interpret */
44
45
  onFlowEnd?: (lastNode: FlowNode) => void;
45
46
  /** When node is interpreted */
46
47
  onInterpret?: (node: FlowNode, prevNode?: FlowNode) => void;
47
48
  t: TFunction;
48
49
  };
49
- export declare const createFlowInterpreter: ({ flow, analytics, logger, talentBankClient, context, apiClient, getSubmissions, getApplicationRecovery, setApplicationRecovery, chatService, onFlowEnd, onInterpret, t, }: ChatbotInterpreterParams) => {
50
+ export declare const createFlowInterpreter: ({ flow, analytics, logger, talentBankClient, context, apiClient, getSubmissions, getApplicationRecovery, setApplicationRecovery, chatService, persistWriteBarrier, onFlowEnd, onInterpret, t, }: ChatbotInterpreterParams) => {
50
51
  interpret: (startFromNodeId?: string) => Promise<void>;
51
52
  undo: (nodeHistory: string[]) => {
52
53
  removed: number;
53
54
  };
54
55
  abort: () => void;
55
56
  };
57
+ /** How long a submit may run before the applicant is told it is still working. */
58
+ export declare const SUBMIT_STILL_WORKING_MS = 5000;
56
59
  export {};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-7aaddd89.cjs");require("@inploi/sdk");exports.chatbotPlugin=e.chatbotPlugin;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-56ea6372.cjs");require("@inploi/sdk");exports.chatbotPlugin=e.chatbotPlugin;
@@ -1,4 +1,4 @@
1
- import { t as a } from "./index-3a093ba1.js";
1
+ import { v as a } from "./index-b60fcc82.js";
2
2
  import "@inploi/sdk";
3
3
  export {
4
4
  a as chatbotPlugin
@@ -9,36 +9,36 @@ export declare const tokens: {
9
9
  "color.lowest": unknown;
10
10
  "color.highest": unknown;
11
11
  "color.a-2": unknown;
12
+ "color.a-1": unknown;
12
13
  "color.a-8": unknown;
13
14
  "color.a-7": unknown;
14
15
  "color.a-4": unknown;
15
16
  "color.a-5": unknown;
16
17
  "color.a-10": unknown;
17
- "color.a-1": unknown;
18
18
  "color.a-3": unknown;
19
19
  "color.a-6": unknown;
20
20
  "color.a-9": unknown;
21
21
  "color.a-11": unknown;
22
22
  "color.a-12": unknown;
23
23
  "color.n-2": unknown;
24
+ "color.n-1": unknown;
24
25
  "color.n-8": unknown;
25
26
  "color.n-7": unknown;
26
27
  "color.n-4": unknown;
27
28
  "color.n-5": unknown;
28
29
  "color.n-10": unknown;
29
- "color.n-1": unknown;
30
30
  "color.n-3": unknown;
31
31
  "color.n-6": unknown;
32
32
  "color.n-9": unknown;
33
33
  "color.n-11": unknown;
34
34
  "color.n-12": unknown;
35
35
  "color.e-2": unknown;
36
+ "color.e-1": unknown;
36
37
  "color.e-8": unknown;
37
38
  "color.e-7": unknown;
38
39
  "color.e-4": unknown;
39
40
  "color.e-5": unknown;
40
41
  "color.e-10": unknown;
41
- "color.e-1": unknown;
42
42
  "color.e-3": unknown;
43
43
  "color.e-6": unknown;
44
44
  "color.e-9": unknown;
@@ -75,7 +75,7 @@ export declare const tokens: {
75
75
  declarations: {
76
76
  [k: string]: string;
77
77
  };
78
- ref: (path: "font-weight-body" | "font-weight-headings" | "radius-app" | "radius-interactive" | "color.white" | "color.black" | "color.lowest" | "color.highest" | "color.a-2" | "color.a-8" | "color.a-7" | "color.a-4" | "color.a-5" | "color.a-10" | "color.a-1" | "color.a-3" | "color.a-6" | "color.a-9" | "color.a-11" | "color.a-12" | "color.n-2" | "color.n-8" | "color.n-7" | "color.n-4" | "color.n-5" | "color.n-10" | "color.n-1" | "color.n-3" | "color.n-6" | "color.n-9" | "color.n-11" | "color.n-12" | "color.e-2" | "color.e-8" | "color.e-7" | "color.e-4" | "color.e-5" | "color.e-10" | "color.e-1" | "color.e-3" | "color.e-6" | "color.e-9" | "color.e-11" | "color.e-12" | "copy-body" | "copy-headings" | "color.divider" | "font-family.body" | "font-family.headings" | "font-style.body" | "font-style.headings" | "interactive.copy" | "interactive.bg" | "interactive.copy-hover" | "interactive.copy-active" | "interactive.bg-hover" | "interactive.bg-active" | "app.bg" | "overlay.bg" | "bubble.weak-bg" | "bubble.weak-outline" | "bubble.strong-shadow" | "status-bar.bg" | "status-bar.bg-button" | "status-bar.bg-button-hover" | "status-bar.bg-button-active" | "submit-button.bg-active") => string;
78
+ ref: (path: "font-weight-body" | "font-weight-headings" | "radius-app" | "radius-interactive" | "color.white" | "color.black" | "color.lowest" | "color.highest" | "color.a-2" | "color.a-1" | "color.a-8" | "color.a-7" | "color.a-4" | "color.a-5" | "color.a-10" | "color.a-3" | "color.a-6" | "color.a-9" | "color.a-11" | "color.a-12" | "color.n-2" | "color.n-1" | "color.n-8" | "color.n-7" | "color.n-4" | "color.n-5" | "color.n-10" | "color.n-3" | "color.n-6" | "color.n-9" | "color.n-11" | "color.n-12" | "color.e-2" | "color.e-1" | "color.e-8" | "color.e-7" | "color.e-4" | "color.e-5" | "color.e-10" | "color.e-3" | "color.e-6" | "color.e-9" | "color.e-11" | "color.e-12" | "copy-body" | "copy-headings" | "color.divider" | "font-family.body" | "font-family.headings" | "font-style.body" | "font-style.headings" | "interactive.copy" | "interactive.bg" | "interactive.copy-hover" | "interactive.copy-active" | "interactive.bg-hover" | "interactive.bg-active" | "app.bg" | "overlay.bg" | "bubble.weak-bg" | "bubble.weak-outline" | "bubble.strong-shadow" | "status-bar.bg" | "status-bar.bg-button" | "status-bar.bg-button-hover" | "status-bar.bg-button-active" | "submit-button.bg-active") => string;
79
79
  };
80
80
  };
81
81
  export declare const asInploiVar: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inploi/plugin-chatbot",
3
- "version": "14.0.0",
3
+ "version": "14.1.0",
4
4
  "type": "module",
5
5
  "main": "dist/plugin-chatbot.js",
6
6
  "types": "dist/index.d.ts",
@@ -18,7 +18,7 @@
18
18
  "dependencies": {},
19
19
  "peerDependencies": {
20
20
  "@inploi/flows": "*",
21
- "@inploi/sdk": ">=2.1.4",
21
+ "@inploi/sdk": ">=2.1.5",
22
22
  "@inploi/plugin-feedback": "*"
23
23
  },
24
24
  "devDependencies": {
@@ -63,10 +63,10 @@
63
63
  "@inploi/flows": "9.0.0",
64
64
  "@inploi/i18n": "0.1.5",
65
65
  "@inploi/core": "1.18.0",
66
- "@inploi/design-tokens": "0.2.1",
66
+ "@inploi/sdk": "2.1.5",
67
67
  "@inploi/plugin-feedback": "6.0.0",
68
- "@inploi/sdk": "2.1.4",
69
68
  "@inploi/colors": "1.0.2",
69
+ "@inploi/design-tokens": "0.2.1",
70
70
  "eslint-config-custom": "0.1.0",
71
71
  "tsconfig": "0.1.0"
72
72
  },
@@ -1,5 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./index-7aaddd89.cjs"),Gt=require("@inploi/sdk"),vt=(e,r,t)=>{var s;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:(s=r.analytics)==null?void 0:s.customProperties})};var xt=({condition:e,context:r,submissions:t,ifBlock:s})=>{let[i,...a]=e.compareKey.split(".");if(!i)return!1;let o=n.D({context:r,key:i,path:a,submissions:t});if(!o)return!1;switch(o.type){case"address":{let l=n.S(o.value,a);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 o.value!="object"||Array.isArray(o.value))return!1;let l=n.S(o.value,a),d={...s,data:{compareKey:"_temp",compare:e.compare,compareValue:e.compareValue}};switch(typeof l){case"boolean":return Fe(d,{submissions:{_temp:{value:l,type:"boolean"}},context:r});case"string":return Fe(d,{submissions:{_temp:{value:l,type:"string"}},context:r});case"number":return Fe(d,{submissions:{_temp:{value:l,type:"number"}},context:r});case"object":return Array.isArray(l)&&l.every(p=>typeof p=="string")?Fe(d,{submissions:{_temp:{value:l,type:"enum"}},context:r}):!1}break}case"boolean":{let l=e.compareValue==="true";switch(e.compare){case"equals":return o.value===l;case"notEquals":return o.value!==l}break}case"phone":case"string":{let l=o.type==="phone"?n.B(o.value):o.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 o.value===l;case"notEquals":return o.value!==l;case"greaterThan":return o.value>l;case"greaterThanOrEqualTo":return o.value>=l;case"lessThan":return o.value<l;case"lessThanOrEqualTo":return o.value<=l}}catch{return console.error(`Failed to parse number in if-block ${s.id}`,o.value),!1}break}case"enum":switch(e.compare){case"equals":return o.value.length===1&&o.value[0]===e.compareValue;case"notEquals":return o.value.length===1&&o.value[0]!==e.compareValue;case"contains":return o.value.includes(e.compareValue);case"notContains":return!o.value.includes(e.compareValue)}break}},Fe=(e,{context:r,submissions:t})=>{let s="combinator"in e.data?e.data.conditions:[e.data];if(("combinator"in e.data?e.data.combinator:"and")==="or"){for(let i of s)if(xt({condition:i,context:r,submissions:t,ifBlock:e}))return!0;return!1}else{for(let i of s)if(!xt({condition:i,context:r,submissions:t,ifBlock:e}))return!1;return!0}},Ar=/{{\s*([^}]+?)\s*(?:\|\s*([^}]+?)\s*)?}}/g,Er=(e,{context:r,submissions:t})=>e.replace(Ar,(s,i,a="")=>{let[o,...l]=i.trim().split("."),d=n.D({key:o,path:l,submissions:t,context:r});if(!d)return a;switch(d.type){case"boolean":return d.value===!0?"true":"false";case"file":return d.value.map(p=>`${p.name} (${n.V(p.sizeKb)})`).join(", ");case"enum":return d.value.join(", ");case"address":return Object.values(d.value).filter(p=>p&&p.trim().length>0).join(", ");case"number":case"string":return d.value?d.value.toString():a;case"phone":return n.B(d.value);case"integration":{if(typeof d.value!="object"||Array.isArray(d.value))break;let p=n.S(d.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 a});const Wt=({context:e,submissions:r})=>({context:e,submissions:r??{}}),ie=(e,r)=>Er(e,Wt(r)),Mr=(e,r)=>Fe(e,Wt(r)),Ht=({node:e,nodes:r,stopWhen:t})=>{if((t==null?void 0:t(e))===!0)return e;const s=e.nextId?r.find(i=>i.id===e.nextId):void 0;if(s)return Ht({node:s,nodes:r,stopWhen:t})},Nr=({childNode:e,nodes:r})=>{const s=r.filter(i=>i.type==="if-block").find(i=>{if(!i.branchId)return!1;const a=r.find(l=>l.id===i.branchId);if(!a)return!1;const o=Ht({node:a,nodes:r,stopWhen:l=>l.id===e.id});return!(!o||o.id!==e.id)});if(s!=null&&s.nextId)return r.find(i=>i.id===s.nextId)},Lr=({flow:e,analytics:r,logger:t,talentBankClient:s,context:i,apiClient:a,getSubmissions:o,getApplicationRecovery:l,setApplicationRecovery:d,chatService:p,onFlowEnd:g,onInterpret:x,t:h})=>{let y=new AbortController;const F={...r.service,log:w=>r.service.log({...w,customProperties:{...w.customProperties,...r.customProperties}})},I=async(w,A)=>{if(y.signal.aborted)return;const v=o(),C=l(),E=(C==null?void 0:C.submitNodeId)===w.id?e.nodes.find(S=>{var M;return S.id===C.fileQuestionNodeId&&S.type==="question-file"&&((M=v==null?void 0:v[S.data.key])==null?void 0:M.type)!=="file"}):void 0;if(E)return I(E,A);x==null||x(w,A);try{await Tr({flow:e,analytics:F,logger:t,talentBankClient:s,apiClient:a,context:i,node:w,submissions:v,applicationRecovery:C,setApplicationRecovery:async S=>{if(!y.signal.aborted)try{await d(S)}catch(M){t.error("Failed to persist application recovery",M)}},forceSubmitConfirmation:(C==null?void 0:C.submitNodeId)===w.id,t:h,chat:{sendMessage:async S=>p.send({groupId:w.id,message:S,signal:y.signal}),userInput:async S=>p.input({input:S,signal:y.signal}),setSubmission:(S,M)=>{y.signal.aborted||p.setSubmission(S,M)}},next:S=>{const M=(C==null?void 0:C.fileQuestionNodeId)===w.id?C.submitNodeId:S,Y=M?e.nodes.find(B=>B.id===M):Nr({childNode:w,nodes:e.nodes});return Y?I(Y,w):g==null?void 0:g(w)},end:()=>g==null?void 0:g(w)})}catch(S){if(S instanceof n.AbortedError)return;throw S}};return{interpret:async w=>{const A=e.nodes.find(v=>v.id===w)??n.getHeadOrThrow(e.nodes);return I(A)},undo:w=>{let A=1;const v=e.nodes.find(E=>E.id===w[w.length-1]);for(let E=w.length-2;E>0;E--){const S=w[E],M=e.nodes.find(Y=>Y.id===S);if(!M||(A++,M.type.startsWith("question-")))break}y.abort(),y=new AbortController;const C=e.nodes.find(E=>E.id===w[w.length-A]);return n.invariant(C,"Undo failed: new start node not found"),I(C,v),{removed:A}},abort:()=>{y.abort()}}};async function Tr(e){const 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 Qr({...e,node:r});case"text":return Ur({...e,node:r});case"image":return zr({...e,node:r});case"question-text":return Kr({...e,node:r});case"question-enum":return Hr({...e,node:r});case"question-number":return Gr({...e,node:r});case"question-phone":return Wr({...e,node:r});case"question-boolean":return Jr({...e,node:r});case"question-file":return Xr({...e,node:r});case"question-address":return Zr({...e,node:r});case"end-flow":return Yr({...e,node:r});case"if-block":return qr({...e,node:r});case"jump":return Rr({...e,node:r});case"link":return jr({...e,node:r});case"integration-application-submit":return $r({...e,node:r});case"add-submission":return Br({...e,node:r});case"integration-workflow-get":throw Error("Workflow should be unreachable");case"check-duplicate":return Or({...e,node:r});case"feedback":return Dr({...e,node:r});default:throw new Error(`Unknown node: ${JSON.stringify(r)}`)}}async function Dr({next:e,node:r}){e(r.nextId)}async function Or({next:e,node:r,talentBankClient:t,submissions:s,flow:i,logger:a,chat:o}){var d;let l={isDuplicate:!1};if(s&&t){const p=r.data.scope==="job"?(d=i.job)==null?void 0:d.id:void 0;if(r.data.scope==="company"||p!=null)try{l=await t.checkDuplicate({email:n.M({key:r.data.email,submissions:s}).toString(),jobId:p,scope:r.data.scope})}catch(g){a.error("[check-duplicate]",g)}}o.setSubmission(r.data.key,{type:"integration",value:l}),e(r.nextId)}async function Rr({next:e,node:r}){e(r.data.targetId)}async function Br({next:e,node:r,logger:t,submissions:s,context:i}){if(!s){t.error("Submissions not found");return}s[r.data.key]={type:"string",value:ie(r.data.value,{submissions:s,context:i})},e(r.nextId)}async function $r({chat:e,next:r,end:t,node:s,logger:i,apiClient:a,submissions:o,analytics:l,flow:d,applicationRecovery:p,setApplicationRecovery:g,forceSubmitConfirmation:x,t:h}){const y=async()=>{(p==null?void 0:p.submitNodeId)===s.id&&await g(void 0)},F=async w=>{const A=w();return await y(),A},I=async w=>{var Y;w!==!0&&await e.userInput({type:"submit",key:void 0,config:{label:s.data.submitLabel}}),await e.sendMessage({type:"loading"});const{anonymous_id:A,session_id:v}=l.getSessionInfo();let C;const E=await a.fetch("/flow/submit",{method:"POST",body:JSON.stringify({log_submit:!1,integration_id:s.data.integrationId,anonymous_id:A,session_id:v,job:d.job,flow_build:d.build,submissions:n.E(d.nodes,n.$(o||{},s.data.submitKeys)),pre_apply:n.k(d.nodes,o||{},d.data.flowSessionId)})}).catch(B=>(C=B,Gt.isApiErrorWithData(B)?B.data:B));s.data.key&&e.setSubmission(s.data.key,{type:"integration",value:E});const S=n.H(E);if(S&&l.log({event:"FLOW_SUBMIT",properties:{flow_id:d.id,flow_version:d.version,flow_session_id:d.data.flowSessionId,flow_build:d.build,service:S.service,response:S.response,flow_type:"CHATBOT_DRAWER",job:d.job}}),n.K(E)){const{redirect_url:B,message:Q,button_text:U}=E.integration_response.data;await e.sendMessage({type:"text",author:"bot",text:Q??h("submission_redirect_message")});try{const ee=new URL(B);A&&!ee.searchParams.has("anonymous_id")&&ee.searchParams.set("anonymous_id",A),await e.sendMessage({type:"link",href:ee.toString(),text:U??h("complete_submission"),onClick:()=>{if(!v){i.error("session_id not set, cannot log FLOW_REDIRECT event");return}l.log({event:"FLOW_REDIRECT",properties:{flow_build:d.build,flow_id:d.id,flow_session_id:v,flow_version:d.version,href:ee.toString(),job:d.job}})}})}catch(ee){i.error(`Invalid redirect URL: ${B}`,ee),e.sendMessage({type:"system",variant:"error",text:h("redirect_url_error")})}return F(()=>r(s.nextId))}if((E==null?void 0:E.success)===!0)return s.data.skipConfirmation!==!0&&await e.sendMessage({type:"system",variant:"success",text:h("submission_completed")}),F(()=>r(s.nextId));const M=Pr(E,C);if(M){i.error(C??M.message);const B=M.phase==="submit"&&M.verdict==="confirmed"&&M.code==="unreadable_document"&&typeof M.field=="string"&&M.status!==void 0&&M.status>=400&&M.status<500&&((Y=o==null?void 0:o[M.field])==null?void 0:Y.type)==="file"?M.field:void 0,Q=B===void 0?void 0:d.nodes.find(U=>U.type==="question-file"&&U.data.key===B);return Q&&B!==void 0?(e.setSubmission(B,null),await g({fileQuestionNodeId:Q.id,submitNodeId:s.id}),await e.sendMessage({type:"system",variant:"error",text:h("submission_unreadable_document")}),r(Q.id)):M.status===409&&M.phase==="submit"&&M.verdict==="confirmed"?(await e.sendMessage({type:"system",variant:"info",text:h("submission_duplicate")}),F(t)):M.status===410&&M.code==="job_closed"?(await e.sendMessage({type:"system",variant:"info",text:h("submission_closed")}),F(t)):M.phase==="submit"&&M.verdict==="unknown"?(await e.sendMessage({type:"system",variant:"warning",text:h("submission_unknown")}),F(t)):M.phase==="workflow"&&M.retryable===!0&&M.verdict==="not_submitted"?(await e.sendMessage({type:"system",variant:"error",text:h("submission_retryable")}),I(!1)):(await e.sendMessage({type:"system",variant:"error",text:h("submission_failed")}),F(t))}return i.error(C??E),await e.sendMessage({type:"system",variant:"error",text:h("submission_failed")}),F(t)};await I(x===!0?!1:s.data.skipConfirmation)}const Pr=(e,r)=>{if(!n.z(e))return;const t=e.integration_response;if(typeof t!="object"||t===null)return;const s=t.error;if(typeof s!="object"||s===null)return;const i=s.data,a=typeof i=="object"&&i!==null?i:{},o=p=>typeof a[p]=="string"?a[p]:void 0,l=p=>typeof a[p]=="boolean"?a[p]:void 0,d=t.status;return{message:e.integration_response.error.message,status:typeof d=="number"?d:r instanceof Gt.ApiError?r.status:void 0,phase:o("phase"),retryable:l("retryable"),verdict:o("verdict"),code:o("code"),field:o("field")}};async function jr({chat:e,next:r,node:t,submissions:s,context:i}){await e.sendMessage({type:"link",href:ie(t.data.href,{submissions:s,context:i}),text:ie(t.data.cta,{submissions:s,context:i})}),r(t.nextId)}async function qr({submissions:e,next:r,node:t,context:s}){r(Mr(t,{submissions:e,context:s})?t.branchId:t.nextId)}async function Ur({chat:e,next:r,node:t,submissions:s,context:i}){await e.sendMessage({author:"bot",type:"text",text:ie(t.data.text,{submissions:s,context:i})}),r(t.nextId)}async function zr({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 Kr({chat:e,next:r,node:t,submissions:s,context:i,t:a}){await e.sendMessage({author:"bot",type:"text",text:ie(t.data.question,{submissions:s,context:i})});const o=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}});o===null?await e.sendMessage({type:"system",variant:"info",text:a("skipped")}):await e.sendMessage({author:"user",type:"text",text:o.type==="phone"?n.B(o.value):o.value}),r(t.nextId)}async function Gr({chat:e,next:r,node:t,submissions:s,context:i,t:a}){await e.sendMessage({author:"bot",type:"text",text:ie(t.data.question,{submissions:s,context:i})});const o=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}});o===null?await e.sendMessage({type:"system",variant:"info",text:a("skipped")}):await e.sendMessage({author:"user",type:"text",text:o.value.toString()}),r(t.nextId)}async function Wr({chat:e,next:r,node:t,submissions:s,context:i}){await e.sendMessage({author:"bot",type:"text",text:ie(t.data.question,{submissions:s,context:i})});const a=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}});a===null?await e.sendMessage({type:"system",variant:"info",text:"Skipped"}):await e.sendMessage({author:"user",type:"text",text:a.type==="phone"?n.B(a.value):a.value}),r(t.nextId)}async function Hr({chat:e,next:r,node:t,submissions:s,context:i,t:a}){await e.sendMessage({author:"bot",type:"text",text:ie(t.data.question,{submissions:s,context:i})});const o=await e.userInput({key:t.data.key,type:"multiple-choice",config:t.data});o.value.length===0?await e.sendMessage({type:"system",variant:"info",text:a("skipped")}):await e.sendMessage({author:"user",type:"text",text:t.data.options.filter(l=>o.value.includes(l.value)).map(l=>l.label).join(", ")}),r(t.nextId)}async function Jr({chat:e,next:r,node:t,submissions:s,context:i,t:a}){await e.sendMessage({author:"bot",type:"text",text:ie(t.data.question,{submissions:s,context:i})});const o=await e.userInput({key:t.data.key,type:"boolean",config:{optional:t.data.optional,labels:{true:t.data.trueLabel,false:t.data.falseLabel}}});o===null?await e.sendMessage({type:"system",variant:"info",text:a("skipped")}):await e.sendMessage({author:"user",type:"text",text:o.value===!0?t.data.trueLabel:t.data.falseLabel}),r(t.nextId)}async function Zr({chat:e,next:r,node:t,t:s}){await e.sendMessage({author:"bot",type:"text",text:t.data.question});const i=await e.userInput({type:"address",key:t.data.key,config:{optional:t.data.optional,keys:t.data.keys,placeholder:t.data.placeholder}});if(i===null)await e.sendMessage({type:"system",variant:"info",text:s("skipped")});else{const a=Object.values(i.value).filter(o=>o&&o.trim().length>0).join(", ");await e.sendMessage({author:"user",type:"text",text:a})}return r(t.nextId)}async function Xr({node:e,chat:r,next:t,submissions:s,context:i,t:a}){await r.sendMessage({author:"bot",type:"text",text:ie(e.data.question,{submissions:s,context:i})});const o=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(o===null)await r.sendMessage({type:"system",variant:"info",text:a("skipped")});else for(const l of o.value)await r.sendMessage({author:"user",type:"file",fileName:l.name,fileSizeKb:l.sizeKb});return t(e.nextId)}async function Yr({chat:e,end:r,node:t}){await e.sendMessage({type:"system",variant:"info",text:t.data.systemMessage}),r()}async function Qr({node:e,flow:r,submissions:t,chat:s,next:i,apiClient:a,analytics:o}){const l=n.R(r.nodes,t||{}),{answers:d,...p}=l;s.setSubmission(e.data.key,{type:"integration",value:p});const g=new AbortController,x=setTimeout(()=>g.abort(),5e3);if(a.fetch("/flow/pre-apply",{method:"POST",signal:g.signal,body:JSON.stringify({...o.getSessionInfo(),job:r.job,flow_build:r.build,pre_apply:n.k(r.nodes,t||{},r.data.flowSessionId)})}).catch(()=>{}).finally(()=>clearTimeout(x)),l.status!=="skipped"){const y=[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(const F of["hard","advisory"]){const I=d.filter(w=>!w.matched&&w.severity===F);I.length&&y.push((F==="hard"?"Role requirements":"Other things to consider")+`
2
- `+I.map(w=>`• ${w.message}`).join(`
3
- `))}await s.sendMessage({type:"text",author:"bot",text:y.join(`
4
-
5
- `)}),l.hasHardConcerns&&e.data.alternativeLink&&await s.sendMessage({type:"link",href:e.data.alternativeLink.href,text:e.data.alternativeLink.label}),await s.userInput({type:"submit",key:void 0,config:{label:e.data.continueLabel}})}return i(e.nextId)}const me=({class:e,...r})=>{const{t}=n.useTranslation();return n.o("button",{class:n.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:n.o("svg",{class:"block",width:"16",height:"16",viewBox:"0 0 16 16",fill:"transparent",stroke:"currentColor","stroke-linecap":"round","stroke-width":"2",children:[n.o("title",{children:t("send")}),n.o("path",{d:"M3.5 7.5L8 3L12.5 7.5"}),n.o("path",{d:"M8 4V13"})]})})};var oe;function Re(e){return{lang:(e==null?void 0:e.lang)??(oe==null?void 0:oe.lang),message:e==null?void 0:e.message,abortEarly:(e==null?void 0:e.abortEarly)??(oe==null?void 0:oe.abortEarly),abortPipeEarly:(e==null?void 0:e.abortPipeEarly)??(oe==null?void 0:oe.abortPipeEarly)}}var Ge;function es(e){return Ge==null?void 0:Ge.get(e)}var We;function ts(e){return We==null?void 0:We.get(e)}var He;function rs(e,r){var t;return(t=He==null?void 0:He.get(e))==null?void 0:t.get(r)}function we(e){var t,s;const r=typeof e;return r==="string"?`"${e}"`:r==="number"||r==="bigint"||r==="boolean"?`${e}`:r==="object"||r==="function"?(e&&((s=(t=Object.getPrototypeOf(e))==null?void 0:t.constructor)==null?void 0:s.name))??"null":r}function K(e,r,t,s,i){const a=i&&"input"in i?i.input:t.value,o=(i==null?void 0:i.expected)??e.expects??null,l=(i==null?void 0:i.received)??we(a),d={kind:e.kind,type:e.type,input:a,expected:o,received:l,message:`Invalid ${r}: ${o?`Expected ${o} but r`:"R"}eceived ${l}`,requirement:e.requirement,path:i==null?void 0:i.path,issues:i==null?void 0:i.issues,lang:s.lang,abortEarly:s.abortEarly,abortPipeEarly:s.abortPipeEarly},p=e.kind==="schema",g=(i==null?void 0:i.message)??e.message??rs(e.reference,d.lang)??(p?ts(d.lang):null)??s.message??es(d.lang);g!==void 0&&(d.message=typeof g=="function"?g(d):g),p&&(t.typed=!1),t.issues?t.issues.push(d):t.issues=[d]}function ae(e){return{version:1,vendor:"valibot",validate(r){return e["~run"]({value:r},Re())}}}function ss(e,r){return Object.hasOwn(e,r)&&r!=="__proto__"&&r!=="prototype"&&r!=="constructor"}function ns(e,r){const t=[...new Set(e)];return t.length>1?`(${t.join(` ${r} `)})`:t[0]??"never"}function is(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 as=class extends Error{constructor(e){super(e[0].message),this.name="ValiError",this.issues=e}},os=/^[\w+-]+(?:\.[\w+-]+)*@[\da-z]+(?:[.-][\da-z]+)*\.[a-z]{2,}$/iu;function Jt(e,r){return{kind:"validation",type:"check",reference:Jt,async:!1,expects:null,requirement:e,message:r,"~run"(t,s){return t.typed&&!this.requirement(t.value)&&K(this,"input",t,s),t}}}function Zt(e){return{kind:"validation",type:"email",reference:Zt,expects:null,async:!1,requirement:os,message:e,"~run"(r,t){return r.typed&&!this.requirement.test(r.value)&&K(this,"email",r,t),r}}}function Ae(e,r){return{kind:"validation",type:"max_length",reference:Ae,async:!1,expects:`<=${e}`,requirement:e,message:r,"~run"(t,s){return t.typed&&t.value.length>this.requirement&&K(this,"length",t,s,{received:`${t.value.length}`}),t}}}function Xt(e,r){return{kind:"validation",type:"max_value",reference:Xt,async:!1,expects:`<=${e instanceof Date?e.toJSON():we(e)}`,requirement:e,message:r,"~run"(t,s){return t.typed&&!(t.value<=this.requirement)&&K(this,"value",t,s,{received:t.value instanceof Date?t.value.toJSON():we(t.value)}),t}}}function xe(e,r){return{kind:"validation",type:"min_length",reference:xe,async:!1,expects:`>=${e}`,requirement:e,message:r,"~run"(t,s){return t.typed&&t.value.length<this.requirement&&K(this,"length",t,s,{received:`${t.value.length}`}),t}}}function Yt(e,r){return{kind:"validation",type:"min_value",reference:Yt,async:!1,expects:`>=${e instanceof Date?e.toJSON():we(e)}`,requirement:e,message:r,"~run"(t,s){return t.typed&&!(t.value>=this.requirement)&&K(this,"value",t,s,{received:t.value instanceof Date?t.value.toJSON():we(t.value)}),t}}}function Ye(e,r){return{kind:"validation",type:"regex",reference:Ye,async:!1,expects:`${e}`,requirement:e,message:r,"~run"(t,s){return t.typed&&!this.requirement.test(t.value)&&K(this,"format",t,s),t}}}function Qe(e){return{kind:"transformation",type:"transform",reference:Qe,async:!1,operation:e,"~run"(r){return r.value=this.operation(r.value),r}}}function Qt(e){return{kind:"validation",type:"url",reference:Qt,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)&&K(this,"URL",r,t),r}}}function ls(e,r,t){return typeof e.fallback=="function"?e.fallback(r,t):e.fallback}function er(e,r,t){return typeof e.default=="function"?e.default(r,t):e.default}function tr(e,r){return{kind:"schema",type:"array",reference:tr,expects:"Array",async:!1,item:e,message:r,get"~standard"(){return ae(this)},"~run"(t,s){var a;const i=t.value;if(Array.isArray(i)){t.typed=!0,t.value=[];for(let o=0;o<i.length;o++){const l=i[o],d=this.item["~run"]({value:l},s);if(d.issues){const p={type:"array",origin:"value",input:i,key:o,value:l};for(const g of d.issues)g.path?g.path.unshift(p):g.path=[p],(a=t.issues)==null||a.push(g);if(t.issues||(t.issues=d.issues),s.abortEarly){t.typed=!1;break}}d.typed||(t.typed=!1),t.value.push(d.value)}}else K(this,"type",t,s);return t}}}function rr(e){return{kind:"schema",type:"boolean",reference:rr,expects:"boolean",async:!1,message:e,get"~standard"(){return ae(this)},"~run"(r,t){return typeof r.value=="boolean"?r.typed=!0:K(this,"type",r,t),r}}}function sr(e){return{kind:"schema",type:"number",reference:sr,expects:"number",async:!1,message:e,get"~standard"(){return ae(this)},"~run"(r,t){return typeof r.value=="number"&&!isNaN(r.value)?r.typed=!0:K(this,"type",r,t),r}}}function ce(e,r){return{kind:"schema",type:"object",reference:ce,expects:"Object",async:!1,entries:e,message:r,get"~standard"(){return ae(this)},"~run"(t,s){var a;const i=t.value;if(i&&typeof i=="object"){t.typed=!0,t.value={};for(const o in this.entries){const l=this.entries[o];if(o in i||(l.type==="exact_optional"||l.type==="optional"||l.type==="nullish")&&l.default!==void 0){const d=o in i?i[o]:er(l),p=l["~run"]({value:d},s);if(p.issues){const g={type:"object",origin:"value",input:i,key:o,value:d};for(const x of p.issues)x.path?x.path.unshift(g):x.path=[g],(a=t.issues)==null||a.push(x);if(t.issues||(t.issues=p.issues),s.abortEarly){t.typed=!1;break}}p.typed||(t.typed=!1),t.value[o]=p.value}else if(l.fallback!==void 0)t.value[o]=ls(l);else if(l.type!=="exact_optional"&&l.type!=="optional"&&l.type!=="nullish"&&(K(this,"key",t,s,{input:void 0,expected:`"${o}"`,path:[{type:"object",origin:"key",input:i,key:o,value:i[o]}]}),s.abortEarly))break}}else K(this,"type",t,s);return t}}}function Ee(e,r){return{kind:"schema",type:"optional",reference:Ee,expects:`(${e.expects} | undefined)`,async:!1,wrapped:e,default:r,get"~standard"(){return ae(this)},"~run"(t,s){return t.value===void 0&&(this.default!==void 0&&(t.value=er(this,t,s)),t.value===void 0)?(t.typed=!0,t):this.wrapped["~run"](t,s)}}}function nr(e,r){return{kind:"schema",type:"picklist",reference:nr,expects:ns(e.map(we),"|"),async:!1,options:e,message:r,get"~standard"(){return ae(this)},"~run"(t,s){return this.options.includes(t.value)?t.typed=!0:K(this,"type",t,s),t}}}function ir(e,r,t){return{kind:"schema",type:"record",reference:ir,expects:"Object",async:!1,key:e,value:r,message:t,get"~standard"(){return ae(this)},"~run"(s,i){var o,l;const a=s.value;if(a&&typeof a=="object"){s.typed=!0,s.value={};for(const d in a)if(ss(a,d)){const p=a[d],g=this.key["~run"]({value:d},i);if(g.issues){const h={type:"object",origin:"key",input:a,key:d,value:p};for(const y of g.issues)y.path=[h],(o=s.issues)==null||o.push(y);if(s.issues||(s.issues=g.issues),i.abortEarly){s.typed=!1;break}}const x=this.value["~run"]({value:p},i);if(x.issues){const h={type:"object",origin:"value",input:a,key:d,value:p};for(const y of x.issues)y.path?y.path.unshift(h):y.path=[h],(l=s.issues)==null||l.push(y);if(s.issues||(s.issues=x.issues),i.abortEarly){s.typed=!1;break}}(!g.typed||!x.typed)&&(s.typed=!1),g.typed&&(s.value[g.value]=x.value)}}else K(this,"type",s,i);return s}}}function X(e){return{kind:"schema",type:"string",reference:X,expects:"string",async:!1,message:e,get"~standard"(){return ae(this)},"~run"(r,t){return typeof r.value=="string"?r.typed=!0:K(this,"type",r,t),r}}}function us(e,r,t){const s=e["~run"]({value:r},Re(t));if(s.issues)throw new as(s.issues);return s.value}function cs(e,r){const t={};for(const s in e.entries)t[s]=!r||r.includes(s)?Ee(e.entries[s]):e.entries[s];return{...e,entries:t,get"~standard"(){return ae(this)}}}function he(...e){return{...e[0],pipe:e,get"~standard"(){return ae(this)},"~run"(r,t){for(const s of e)if(s.kind!=="metadata"){if(r.issues&&(s.kind==="schema"||s.kind==="transformation")){r.typed=!1;break}(!r.issues||!t.abortEarly&&!t.abortPipeEarly)&&(r=s["~run"](r,t))}return r}}}function ds(e,r,t){const s=e["~run"]({value:r},Re(t));return{typed:s.typed,success:!s.issues,output:s.value,issues:s.issues}}async function fs(e,r,t){const s=await e["~run"]({value:r},Re(t));return{typed:s.typed,success:!s.issues,output:s.value,issues:s.issues}}const _e=({error:e})=>!e||!e.message?null:n.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:[n.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:[n.o("circle",{cx:"8",cy:"8",r:"6.3",stroke:"currentColor","stroke-width":"1.4"}),n.o("rect",{x:"7",y:"4",width:"2",height:"5",fill:"currentColor"}),n.o("rect",{x:"7",y:"10",width:"2",height:"2",fill:"currentColor"})]}),n.o("p",{class:"break-words pr-1 text-sm",children:e.message})]}),ge=({class:e,...r})=>{const{t}=n.useTranslation();return n.o("button",{type:"button",class:n.clsx("fr touch-hitbox text-neutral-10 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:[n.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:[n.o("title",{children:t("skip")}),n.o("path",{d:"M3.25 11.25A5 5 0 0 1 12 7"}),n.o("path",{d:"M13.25 4.5V8.25H9.5"})]}),t("skip")]})};var et={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 Le=n.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}}),hs="https://api.mapbox.com/search/searchbox/v1/suggest",ps="ZzRDWFU0dTZ3SF9aWk9RNGl6QzZaWS5RZmlFak13a0hPbGxXZXlNSGN5RUhObUJ6TXpSV08yUW5OdE5tSTZJU1lpd2lJb1JYYXRObmJ2Tm5iaGhHZWx4V1lpb2pJMUp5ZS5rcA==",ys=e=>atob(e).split("").reverse().join(""),le=ce({name:X()}),ms=ce({suggestions:tr(ce({full_address:Ee(X()),place_formatted:Ee(X()),name:Ee(X()),mapbox_id:X(),context:cs(ce({address:le,street:le,neighborhood:le,locality:le,district:le,place:le,region:le,postcode:le,country:le}))}))}),gs=({logger:e,t:r})=>n.F(()=>{var s;const t=(s=n.store.current$.peek().flow)==null?void 0:s.data.flowSessionId;return t?{enabled:!0,getPredictions:async i=>{var x;const a=new URL(hs);a.searchParams.set("q",i),a.searchParams.set("session_token",t);const o=(x=n.store.current$.peek().flow)==null?void 0:x.locationOrigin;o&&o.lat!==void 0&&o.lng!==void 0&&o.lat>=-90&&o.lat<=90&&o.lng>=-180&&o.lng<=180&&a.searchParams.set("proximity",`${o.lng},${o.lat}`),a.searchParams.set("access_token",ys(ps));const d=await fetch(a);if(!d.ok)return e.error("Failed to get address details",d),{ok:!1,error:r("address_error")};const p=ds(ms,await d.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 y,F,I,w,A,v,C,E,S;return{label:h.full_address??h.place_formatted??h.name??h.mapbox_id,id:h.mapbox_id,address:{line1:((y=h.context.address)==null?void 0:y.name)??((F=h.context.street)==null?void 0:F.name),line2:void 0,line3:((I=h.context.neighborhood)==null?void 0:I.name)??((w=h.context.locality)==null?void 0:w.name),city:((A=h.context.place)==null?void 0:A.name)??((v=h.context.district)==null?void 0:v.name),state:(C=h.context.region)==null?void 0:C.name,postcode:(E=h.context.postcode)==null?void 0:E.name,country:(S=h.context.country)==null?void 0:S.name}}})}}}:{enabled:!1}},[e,r]),wt=e=>{const{t:r}=n.useTranslation();return n.o("button",{type:"button",class:"touch-hitbox text-neutral-10 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:[n.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:n.o("path",{d:"M10 3L5 8L10 13"})}),n.o("span",{children:r("back")})]})},bs=({input:e,onSubmitSuccess:r,logger:t})=>{const{t:s}=n.useTranslation(),[i,a]=n.h(),{enabled:o,getPredictions:l}=gs({logger:t,t:s}),[d,p]=n.h(o?"query":"manual"),[g,x]=n.h(""),[h,y]=n.h(),F=n._(),I=n._(),w=v=>{var E;if(n.invariant(o,"Query state should not be enabled"),v=v.trim(),v===((E=F.current)==null?void 0:E.query)||v===(h==null?void 0:h.query)&&h.status==="done")return;if(x(v),v===""){F.current=void 0,y(void 0);return}const C=F.current={query:v};y({query:v,status:"pending"}),l(v).then(S=>{F.current===C&&(F.current=void 0,y(S.ok?{query:v,status:"done",items:S.data}:{query:v,status:"failed",error:S.error}))},S=>{F.current===C&&(F.current=void 0,t.error("Failed to get address details",S),y({query:v,status:"failed",error:s("address_error")}))})},A=(v,C)=>{a(E=>({...E,[v]:C}))};switch(d){case"query":return n.invariant(o,"Query state should not be enabled"),n.o(vs,{input:e,onSkip:()=>r(null),onAddressSelect:v=>{if(v===""){F.current&&(F.current=void 0,y(void 0)),p("manual");return}const C=(h==null?void 0:h.status)==="done"?h.items.find(E=>E.id===v):void 0;C&&(I.current!==v&&a(C.address),I.current=v,p("details"))},onAddressSearch:w,lookup:h,query:g});case"details":return n.invariant(i!==void 0),n.o(kt,{input:e,logger:t,onSubmitSuccess:r,addressFields:i,onFieldChange:A,actions:n.o(wt,{onClick:()=>{p("query")}})});case"manual":return n.o(kt,{logger:t,input:e,onSubmitSuccess:r,addressFields:i??{},onFieldChange:A,actions:o?n.o(wt,{onClick:()=>{p("query")}}):void 0})}},vs=({input:e,onSkip:r,lookup:t,onAddressSelect:s,query:i,onAddressSearch:a})=>{const{t:o}=n.useTranslation(),l=n._(null);return n.y(()=>{l.current&&(l.current.focus(),l.current.select())},[]),n.o(n.k$1,{children:[n.o("form",{noValidate:!0,onSubmit:d=>{d.preventDefault();const g=new FormData(d.currentTarget).get("address");typeof g=="string"&&a(g)},class:"flex gap-2 p-2.5",children:[n.o("div",{class:"group relative flex-1",children:[n.o("input",{ref:l,name:"address",id:"chat-address",autocomplete:"address-line1 country-name postal-code",autoFocus:!0,placeholder:e.config.placeholder||o("address_search"),defaultValue:i,class:Le({optional:!!e.config.optional,className:"w-full rounded-full"})}),n.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:[n.o("svg",{"aria-hidden":"true",width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:n.o("g",{id:"inploi",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round",strokeWidth:"1.5",children:[n.o("circle",{cx:"7",cy:"7",r:"4"}),n.o("path",{d:"M10 10L13 13"})]})}),n.o("span",{class:"sr-only",children:o("search")})]})]}),e.config.optional&&n.o(ge,{class:"relative",onClick:r})]}),(t==null?void 0:t.status)==="failed"?n.o(_e,{error:{message:t.error}}):null,n.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-10 flex items-center gap-2 px-4 py-2 text-sm":"sr-only",children:(t==null?void 0:t.status)==="pending"?n.o(n.k$1,{children:[n.o(n.LoadingIndicator,{"aria-hidden":"true",class:"h-4 w-4 shrink-0"}),o("address_searching")]}):(t==null?void 0:t.status)==="done"&&t.items.length===0?o("address_no_results"):null}),n.o("ul",{children:[((t==null?void 0:t.status)==="done"?t.items:[]).map(d=>n.o("li",{children:n.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:()=>{s(d.id)},children:[n.o("span",{class:"flex-grow",children:d.label}),n.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:n.o("path",{d:"M6 3L11 8L6 13"})})]})},d.id)),n.o("li",{children:n.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:()=>{s("")},children:n.o("span",{class:"flex-grow",children:o("address_manual")})})},"")]})]})},_t=["line1","line2","line3","city","state","postcode","country"],kt=({addressFields:e,onFieldChange:r,onSubmitSuccess:t,actions:s,input:i})=>{const a=n._(null);n.y(()=>{if(a.current){const d=a.current.querySelector("input");d&&(d.focus(),d.select())}},[]);const o=Object.keys(et),{t:l}=n.useTranslation();return n.o("form",{class:"flex flex-col px-2 pt-2",onSubmit:d=>{const p=new FormData(d.currentTarget),g=Object.fromEntries(p.entries());t({type:"address",value:g})},children:[n.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:a,children:_t.map((d,p)=>{const g=`isdk_${d}`,x=i.config.keys[d];return x?n.o(n.k$1,{children:[n.o("label",{for:g,class:"text-neutral-9 [&:has(+*>input:focus)]:text-neutral-11 w-24 pb-2 text-xs uppercase leading-3 tracking-widest transition-colors",children:l(d)}),n.o("div",{class:"flex flex-col items-stretch gap-1.5",children:[d==="country"?n.o("div",{class:"relative",children:[n.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:x,id:g,defaultValue:e[d],onChange:h=>r(d,h.currentTarget.value),required:!0,children:[e.country&&!o.includes(e.country)?n.o("option",{value:e[d],children:e[d]}):n.o("option",{value:"",children:l("select_country")}),o.map(h=>n.o("option",{value:h,children:h},h))]}),n.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:n.o("path",{d:"M4 6.5L8 10.5L12 6.5"})})]}):n.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:x,id:g,defaultValue:e[d],onInput:h=>r(d,h.currentTarget.value),required:!0}),p===_t.length-1?n.o("hr",{class:"m-0 w-full border-b border-b-transparent"}):n.o("hr",{class:"border-b-neutral-5 m-0 w-full border-b border-solid"})]})]}):null})}),n.o("div",{class:"bg-neutral-1 sticky bottom-0 flex items-center py-2",children:[s,n.o(me,{class:"ml-auto"})]})]})},tt=()=>{const e=n._(null);return n.p(()=>{var r;(r=e.current)==null||r.focus()},[]),e},ar=["true","false"],xs=nr(ar),ws="answer",or="flex items-center flex-wrap gap-2 p-2.5",lr="min-w-0 max-w-full flex-auto",ur=n.k$2(({label:e,...r},t)=>n.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:n.o("p",{class:"text-center text-base",children:e})})),_s=({input:e,onSubmitSuccess:r})=>{const t=tt();return n.o("form",{noValidate:!0,class:"",onSubmit:s=>{s.preventDefault();const i=n.getFormSubmitter(s).value,a=us(xs,i);r({type:"boolean",value:a==="true"})},children:[n.o("ul",{class:or,children:ar.map((s,i)=>n.o("li",{class:lr,children:n.o(ur,{ref:i===0?t:null,type:"submit",name:ws,value:s,label:e.config.labels[s]},s)}))}),e.config.optional&&n.o("div",{class:"px-2 pb-2",children:n.o(ge,{class:"relative w-full",type:"button",onClick:()=>r(null)})})]})},ks=e=>new Promise((r,t)=>{const s=new FileReader;s.onload=()=>{if(typeof s.result!="string"||!s.result)return t(new Error("Invalid file"));r(s.result)},s.onerror=t,s.readAsDataURL(e)}),Ct=e=>e.reduce((r,t)=>r+t.sizeKb,0),Cs=n.isSubmissionOfType("file"),St=3,rt=e=>{const r=e.lastIndexOf(".");return r===-1?[e,""]:[e.slice(0,r),e.slice(r)]},Ss=({file:e,class:r,...t})=>{const[s,i]=rt(e.name);return n.o("div",{class:n.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:[n.o("p",{"aria-label":"File name",class:"text-accent-12 flex flex-grow overflow-hidden",children:[n.o("span",{class:"block truncate",children:s}),n.o("span",{children:i})]}),n.o("p",{"aria-label":"File size",class:"text-accent-11",children:n.V(e.sizeKb)})]})},Vt=({class:e,...r})=>n.o("li",{class:n.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}),Vs=(e,r)=>{const[t,s]=rt(e);return`${t.slice(0,r)}${s}`},It=e=>({name:Vs(e.name,42),sizeKb:e.size/1e3}),Is=({input:e,onSubmitSuccess:r})=>{var F;const t=(F=n.store.current$.value.flow)==null?void 0:F.data.submissions[e.key],[s,i]=n.h(Cs(t)&&t.value.length?{status:"ready",files:t.value}:{status:"empty"}),a=n._(0),o=s.status==="ready"?s.files:[],l=s.status==="ready"||s.status==="pending"?s.files:[],d=s.status==="error"?s.error:void 0,p=l.length-St,g=Ct(l),x=tt(),{t:h}=n.useTranslation(),y=I=>{if(!I.length)return{type:"required",message:h("validation_file")};if(!n.U(I,e.config.extensions))return{type:"validate",message:h("validation_file_ext",{ext:e.config.extensions.join(", ")})};if(e.config.fileSizeLimitKib&&Ct(I)>e.config.fileSizeLimitKib)return{type:"max",message:h("validation_file_size",{size:n.V(e.config.fileSizeLimitKib)})};if(!e.config.allowMultiple&&I.length>1)return{type:"invalid",message:h("validation_file_max",{count:1})}};return n.o("form",{class:"flex flex-col gap-1 p-2.5",onSubmit:I=>{if(I.preventDefault(),s.status==="pending"||s.status==="error")return;const w=y(o);w?i({status:"error",error:w}):r({type:"file",value:o})},children:[n.o("div",{class:"flex items-center gap-2",children:[n.o("label",{ref:x,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:[l.length>0?n.o("ul",{class:"flex max-w-full flex-wrap justify-center gap-1 overflow-hidden p-1",children:[l.slice(0,St).map(I=>{const[w,A]=rt(I.name);return n.o(Vt,{class:"flex overflow-hidden",children:[n.o("span",{class:"block truncate",children:w}),n.o("span",{children:A})]})}),p>0?n.o(Vt,{children:["+",p," file",p!==1?"s":""]}):null]}):n.o("div",{class:"flex flex-col justify-center gap-4 pb-6 pt-5",children:[n.o("header",{class:"flex flex-col items-center gap-0",children:[n.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:n.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"})}),n.o("p",{class:"text-neutral-12 tracking-[-0.01em]",children:h("upload_file",{count:e.config.allowMultiple?2:1})}),e.config.fileSizeLimitKib?n.o("p",{class:"text-neutral-10 text-xs",children:["(",h("file_max_size",{size:n.V(e.config.fileSizeLimitKib)}),")"]}):null]}),n.o("aside",{class:"flex flex-col items-center gap-2",children:[n.o("p",{id:"accepted-filetypes",class:"sr-only",children:h("file_extensions")}),n.o("ul",{"aria-describedby":"accepted-filetypes",class:"flex flex-wrap justify-center gap-2",children:e.config.extensions.map(I=>n.o("li",{class:"ring-lowest outline-neutral-6 text-neutral-9 bg-neutral-1 rounded-md px-1 py-0.5 text-[11px] uppercase tracking-wide outline outline-1 ring-2",children:I.replace(".","")}))})]})]}),n.o("p",{role:"status",class:n.clsx("text-neutral-11 flex items-center gap-1.5 text-xs",l.length===0&&"sr-only"),children:s.status==="pending"?n.o(n.k$1,{children:[n.o(n.LoadingIndicator,{"aria-hidden":"true",class:"h-4 w-4"}),h("file_preparing",{count:l.length})]}):s.status==="ready"?n.o(n.k$1,{children:[n.V(g)," ",o.length>1?"total":"",n.o("span",{class:"sr-only",children:[". ",h("file_ready",{count:o.length})]})]}):null}),n.o("input",{id:"dropzone-file",onInput:async I=>{n.invariant(I.target instanceof HTMLInputElement);const w=I.target.files?Array.from(I.target.files):[];if(I.target.value="",!w.length)return;const A=++a.current,v=s.status==="ready",C=w.map(It),E=y(C);if(E)return i({status:"error",error:E});i({status:"pending",files:C});try{const S=await Promise.all(w.map(async M=>({...It(M),data:await ks(M)})));a.current===A&&i({status:"ready",files:S})}catch{a.current===A&&i({status:"error",error:{type:"invalid",message:h(v?"file_read_error_replacement":"file_read_error")}})}},multiple:e.config.allowMultiple,type:"file",class:"sr-only"})]}),n.o("div",{class:"flex h-full flex-col items-center gap-2",children:[n.o(me,{disabled:o.length===0}),e.config.optional&&n.o(ge,{class:"relative",onClick:()=>r(null)})]})]}),n.o(_e,{error:d})]})};var Te=e=>e.type==="checkbox",ye=e=>e instanceof Date,H=e=>e==null;const cr=e=>typeof e=="object";var P=e=>!H(e)&&!Array.isArray(e)&&cr(e)&&!ye(e),Fs=e=>P(e)&&e.target?Te(e.target)?e.target.checked:e.target.value:e,As=e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e,Es=(e,r)=>e.has(As(r)),Ms=e=>{const r=e.constructor&&e.constructor.prototype;return P(r)&&r.hasOwnProperty("isPrototypeOf")},st=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function q(e){if(e instanceof Date)return new Date(e);const r=typeof FileList<"u"&&e instanceof FileList;if(st&&(e instanceof Blob||r))return e;const t=Array.isArray(e);if(!t&&!(P(e)&&Ms(e)))return e;const s=t?[]:Object.create(Object.getPrototypeOf(e));for(const i in e)Object.prototype.hasOwnProperty.call(e,i)&&(s[i]=q(e[i]));return s}var Be=e=>/^\w*$/.test(e),R=e=>e===void 0,nt=e=>Array.isArray(e)?e.filter(Boolean):[],it=e=>nt(e.replace(/["|']|\]/g,"").split(/\.|\[/)),k=(e,r,t)=>{if(!r||!P(e))return t;const s=(Be(r)?[r]:it(r)).reduce((i,a)=>H(i)?i:i[a],e);return R(s)||s===e?R(e[r])?t:e[r]:s},ne=e=>typeof e=="boolean",re=e=>typeof e=="function",O=(e,r,t)=>{let s=-1;const i=Be(r)?[r]:it(r),a=i.length,o=a-1;for(;++s<a;){const l=i[s];let d=t;if(s!==o){const p=e[l];d=P(p)||Array.isArray(p)?p:isNaN(+i[s+1])?{}:[]}if(l==="__proto__"||l==="constructor"||l==="prototype")return;e[l]=d,e=e[l]}};const Ft={BLUR:"blur",FOCUS_OUT:"focusout",CHANGE:"change"},se={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},ue={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},Ns=n.Cn.createContext(null);Ns.displayName="HookFormControlContext";var Ls=(e,r,t,s=!0)=>{const i={defaultValues:r._defaultValues};for(const a in e)Object.defineProperty(i,a,{get:()=>{const o=a;return r._proxyFormState[o]!==se.all&&(r._proxyFormState[o]=!s||se.all),t&&(t[o]=!0),e[o]}});return i};const Ts=typeof window<"u"?n.Cn.useLayoutEffect:n.Cn.useEffect;var Z=e=>typeof e=="string",Ds=(e,r,t,s,i)=>Z(e)?(s&&r.watch.add(e),k(t,e,i)):Array.isArray(e)?e.map(a=>(s&&r.watch.add(a),k(t,a))):(s&&(r.watchAll=!0),t),Ze=e=>H(e)||!cr(e);function fe(e,r,t=new WeakSet){if(Ze(e)||Ze(r))return Object.is(e,r);if(ye(e)&&ye(r))return Object.is(e.getTime(),r.getTime());const s=Object.keys(e),i=Object.keys(r);if(s.length!==i.length)return!1;if(t.has(e)||t.has(r))return!0;t.add(e),t.add(r);for(const a of s){const o=e[a];if(!i.includes(a))return!1;if(a!=="ref"){const l=r[a];if(ye(o)&&ye(l)||P(o)&&P(l)||Array.isArray(o)&&Array.isArray(l)?!fe(o,l,t):!Object.is(o,l))return!1}}return!0}const Os=n.Cn.createContext(null);Os.displayName="HookFormContext";var dr=(e,r,t,s,i)=>r?{...t[e],types:{...t[e]&&t[e].types?t[e].types:{},[s]:i||!0}}:{},Me=e=>Array.isArray(e)?e:[e],At=()=>{let e=[];return{get observers(){return e},next:i=>{for(const a of e)a.next&&a.next(i)},subscribe:i=>(e.push(i),{unsubscribe:()=>{e=e.filter(a=>a!==i)}}),unsubscribe:()=>{e=[]}}};function fr(e,r){const t={};for(const s in e)if(e.hasOwnProperty(s)){const i=e[s],a=r[s];if(i&&P(i)&&a){const o=fr(i,a);P(o)&&(t[s]=o)}else e[s]&&(t[s]=a)}return t}var W=e=>P(e)&&!Object.keys(e).length,at=e=>e.type==="file",De=e=>{if(!st)return!1;const r=e?e.ownerDocument:0;return e instanceof(r&&r.defaultView?r.defaultView.HTMLElement:HTMLElement)},hr=e=>e.type==="select-multiple",ot=e=>e.type==="radio",Rs=e=>ot(e)||Te(e),Je=e=>De(e)&&e.isConnected;function Bs(e,r){const t=r.slice(0,-1).length;let s=0;for(;s<t;)e=R(e)?s++:e[r[s++]];return e}function $s(e){for(const r in e)if(e.hasOwnProperty(r)&&!R(e[r]))return!1;return!0}function $(e,r){const t=Array.isArray(r)?r:Be(r)?[r]:it(r),s=t.length===1?e:Bs(e,t),i=t.length-1,a=t[i];return s&&delete s[a],i!==0&&(P(s)&&W(s)||Array.isArray(s)&&$s(s))&&$(e,t.slice(0,-1)),e}var Ps=e=>{for(const r in e)if(re(e[r]))return!0;return!1};function pr(e){return Array.isArray(e)||P(e)&&!Ps(e)}function Xe(e,r={}){for(const t in e){const s=e[t];pr(s)?(r[t]=Array.isArray(s)?[]:{},Xe(s,r[t])):R(s)||(r[t]=!0)}return r}function ve(e,r,t){t||(t=Xe(r));for(const s in e){const i=e[s];if(pr(i))R(r)||Ze(t[s])?t[s]=Xe(i,Array.isArray(i)?[]:{}):ve(i,H(r)?{}:r[s],t[s]);else{const a=r[s];t[s]=!fe(i,a)}}return t}const Et={value:!1,isValid:!1},Mt={value:!0,isValid:!0};var yr=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&&!R(e[0].attributes.value)?R(e[0].value)||e[0].value===""?Mt:{value:e[0].value,isValid:!0}:Mt:Et}return Et},mr=(e,{valueAsNumber:r,valueAsDate:t,setValueAs:s})=>R(e)?e:r?e===""?NaN:e&&+e:t&&Z(e)?new Date(e):s?s(e):e;const Nt={isValid:!1,value:null};var gr=e=>Array.isArray(e)?e.reduce((r,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:r,Nt):Nt;function Lt(e){const r=e.ref;return at(r)?r.files:ot(r)?gr(e.refs).value:hr(r)?[...r.selectedOptions].map(({value:t})=>t):Te(r)?yr(e.refs).value:mr(R(r.value)?e.ref.value:r.value,e)}var js=(e,r,t,s)=>{const i={};for(const a of e){const o=k(r,a);o&&O(i,a,o._f)}return{criteriaMode:t,names:[...e],fields:i,shouldUseNativeValidation:s}},Oe=e=>e instanceof RegExp,Ve=e=>R(e)?e:Oe(e)?e.source:P(e)?Oe(e.value)?e.value.source:e.value:e,Tt=e=>({isOnSubmit:!e||e===se.onSubmit,isOnBlur:e===se.onBlur,isOnChange:e===se.onChange,isOnAll:e===se.all,isOnTouch:e===se.onTouched});const Dt="AsyncFunction";var qs=e=>!!e&&!!e.validate&&!!(re(e.validate)&&e.validate.constructor.name===Dt||P(e.validate)&&Object.values(e.validate).find(r=>r.constructor.name===Dt)),Us=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),Ot=(e,r,t)=>!t&&(r.watchAll||r.watch.has(e)||[...r.watch].some(s=>e.startsWith(s)&&/^\.\w+/.test(e.slice(s.length))));const Ne=(e,r,t,s)=>{for(const i of t||Object.keys(e)){const a=k(e,i);if(a){const{_f:o,...l}=a;if(o){if(o.refs&&o.refs[0]&&r(o.refs[0],i)&&!s)return!0;if(o.ref&&r(o.ref,o.name)&&!s)return!0;if(Ne(l,r))break}else if(P(l)&&Ne(l,r))break}}};function Rt(e,r,t){const s=k(e,t);if(s||Be(t))return{error:s,name:t};const i=t.split(".");for(;i.length;){const a=i.join("."),o=k(r,a),l=k(e,a);if(o&&!Array.isArray(o)&&t!==a)return{name:t};if(l&&l.type)return{name:a,error:l};if(l&&l.root&&l.root.type)return{name:`${a}.root`,error:l.root};i.pop()}return{name:t}}var zs=(e,r,t,s)=>{t(e);const{name:i,...a}=e;return W(a)||Object.keys(a).length>=Object.keys(r).length||Object.keys(a).find(o=>r[o]===(!s||se.all))},Ks=(e,r,t)=>!e||!r||e===r||Me(e).some(s=>s&&(t?s===r:s.startsWith(r)||r.startsWith(s))),Gs=(e,r,t,s,i)=>i.isOnAll?!1:!t&&i.isOnTouch?!(r||e):(t?s.isOnBlur:i.isOnBlur)?!e:(t?s.isOnChange:i.isOnChange)?e:!0,Ws=(e,r)=>!nt(k(e,r)).length&&$(e,r),Hs=(e,r,t)=>{const s=Me(k(e,t));return O(s,"root",r[t]),O(e,t,s),e};function Bt(e,r,t="validate"){if(Z(e)||Array.isArray(e)&&e.every(Z)||ne(e)&&!e)return{type:t,message:Z(e)?e:"",ref:r}}var be=e=>P(e)&&!Oe(e)?e:{value:e,message:""},$t=async(e,r,t,s,i,a)=>{const{ref:o,refs:l,required:d,maxLength:p,minLength:g,min:x,max:h,pattern:y,validate:F,name:I,valueAsNumber:w,mount:A}=e._f,v=k(t,I);if(!A||r.has(I))return{};const C=l?l[0]:o,E=N=>{i&&C.reportValidity&&(C.setCustomValidity(ne(N)?"":N||""),C.reportValidity())},S={},M=ot(o),Y=Te(o),B=M||Y,Q=(w||at(o))&&R(o.value)&&R(v)||De(o)&&o.value===""||v===""||Array.isArray(v)&&!v.length,U=dr.bind(null,I,s,S),ee=(N,L,j,z=ue.maxLength,te=ue.minLength)=>{const J=N?L:j;S[I]={type:N?z:te,message:J,ref:o,...U(N?z:te,J)}};if(a?!Array.isArray(v)||!v.length:d&&(!B&&(Q||H(v))||ne(v)&&!v||Y&&!yr(l).isValid||M&&!gr(l).isValid)){const{value:N,message:L}=Z(d)?{value:!!d,message:d}:be(d);if(N&&(S[I]={type:ue.required,message:L,ref:C,...U(ue.required,L)},!s))return E(L),S}if(!Q&&(!H(x)||!H(h))){let N,L;const j=be(h),z=be(x);if(!H(v)&&!isNaN(v)){const te=o.valueAsNumber||v&&+v;H(j.value)||(N=te>j.value),H(z.value)||(L=te<z.value)}else{const te=o.valueAsDate||new Date(v),J=Se=>new Date(new Date().toDateString()+" "+Se),ke=o.type=="time",Ce=o.type=="week";Z(j.value)&&v&&(N=ke?J(v)>J(j.value):Ce?v>j.value:te>new Date(j.value)),Z(z.value)&&v&&(L=ke?J(v)<J(z.value):Ce?v<z.value:te<new Date(z.value))}if((N||L)&&(ee(!!N,j.message,z.message,ue.max,ue.min),!s))return E(S[I].message),S}if((p||g)&&!Q&&(Z(v)||a&&Array.isArray(v))){const N=be(p),L=be(g),j=!H(N.value)&&v.length>+N.value,z=!H(L.value)&&v.length<+L.value;if((j||z)&&(ee(j,N.message,L.message),!s))return E(S[I].message),S}if(y&&!Q&&Z(v)){const{value:N,message:L}=be(y);if(Oe(N)&&!v.match(N)&&(S[I]={type:ue.pattern,message:L,ref:o,...U(ue.pattern,L)},!s))return E(L),S}if(F){if(re(F)){const N=await F(v,t),L=Bt(N,C);if(L&&(S[I]={...L,...U(ue.validate,L.message)},!s))return E(L.message),S}else if(P(F)){let N={};for(const L in F){if(!W(N)&&!s)break;const j=Bt(await F[L](v,t),C,L);j&&(N={...j,...U(L,j.message)},E(j.message),s&&(S[I]=N))}if(!W(N)&&(S[I]={ref:C,...N},!s))return S}}return E(!0),S};const Js={mode:se.onSubmit,reValidateMode:se.onChange,shouldFocusError:!0};function Zs(e={}){let r={...Js,...e},t={submitCount:0,isDirty:!1,isReady:!1,isLoading:re(r.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:r.errors||{},disabled:r.disabled||!1},s={},i=P(r.defaultValues)||P(r.values)?q(r.defaultValues||r.values)||{}:{},a=r.shouldUnregister?{}:q(i),o={action:!1,mount:!1,watch:!1,keepIsValid:!1},l={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set},d,p=0;const g={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},x={...g};let h={...x};const y={array:At(),state:At()},F=r.criteriaMode===se.all,I=u=>c=>{clearTimeout(p),p=setTimeout(u,c)},w=async u=>{if(!o.keepIsValid&&!r.disabled&&(x.isValid||h.isValid||u)){let c;r.resolver?(c=W((await B()).errors),A()):c=await U(s,!0),c!==t.isValid&&y.state.next({isValid:c})}},A=(u,c)=>{!r.disabled&&(x.isValidating||x.validatingFields||h.isValidating||h.validatingFields)&&((u||Array.from(l.mount)).forEach(f=>{f&&(c?O(t.validatingFields,f,c):$(t.validatingFields,f))}),y.state.next({validatingFields:t.validatingFields,isValidating:!W(t.validatingFields)}))},v=(u,c=[],f,_,b=!0,m=!0)=>{if(_&&f&&!r.disabled){if(o.action=!0,m&&Array.isArray(k(s,u))){const V=f(k(s,u),_.argA,_.argB);b&&O(s,u,V)}if(m&&Array.isArray(k(t.errors,u))){const V=f(k(t.errors,u),_.argA,_.argB);b&&O(t.errors,u,V),Ws(t.errors,u)}if((x.touchedFields||h.touchedFields)&&m&&Array.isArray(k(t.touchedFields,u))){const V=f(k(t.touchedFields,u),_.argA,_.argB);b&&O(t.touchedFields,u,V)}(x.dirtyFields||h.dirtyFields)&&(t.dirtyFields=ve(i,a)),y.state.next({name:u,isDirty:N(u,c),dirtyFields:t.dirtyFields,errors:t.errors,isValid:t.isValid})}else O(a,u,c)},C=(u,c)=>{O(t.errors,u,c),y.state.next({errors:t.errors})},E=u=>{t.errors=u,y.state.next({errors:t.errors,isValid:!1})},S=(u,c,f,_)=>{const b=k(s,u);if(b){const m=k(a,u,R(f)?k(i,u):f);R(m)||_&&_.defaultChecked||c?O(a,u,c?m:Lt(b._f)):z(u,m),o.mount&&!o.action&&w()}},M=(u,c,f,_,b)=>{let m=!1,V=!1;const T={name:u};if(!r.disabled){if(!f||_){(x.isDirty||h.isDirty)&&(V=t.isDirty,t.isDirty=T.isDirty=N(),m=V!==T.isDirty);const D=fe(k(i,u),c);V=!!k(t.dirtyFields,u),D?$(t.dirtyFields,u):O(t.dirtyFields,u,!0),T.dirtyFields=t.dirtyFields,m=m||(x.dirtyFields||h.dirtyFields)&&V!==!D}if(f){const D=k(t.touchedFields,u);D||(O(t.touchedFields,u,f),T.touchedFields=t.touchedFields,m=m||(x.touchedFields||h.touchedFields)&&D!==f)}m&&b&&y.state.next(T)}return m?T:{}},Y=(u,c,f,_)=>{const b=k(t.errors,u),m=(x.isValid||h.isValid)&&ne(c)&&t.isValid!==c;if(r.delayError&&f?(d=I(()=>C(u,f)),d(r.delayError)):(clearTimeout(p),d=null,f?O(t.errors,u,f):$(t.errors,u)),(f?!fe(b,f):b)||!W(_)||m){const V={..._,...m&&ne(c)?{isValid:c}:{},errors:t.errors,name:u};t={...t,...V},y.state.next(V)}},B=async u=>(A(u,!0),await r.resolver(a,r.context,js(u||l.mount,s,r.criteriaMode,r.shouldUseNativeValidation))),Q=async u=>{const{errors:c}=await B(u);if(A(u),u)for(const f of u){const _=k(c,f);_?O(t.errors,f,_):$(t.errors,f)}else t.errors=c;return c},U=async(u,c,f={valid:!0})=>{for(const _ in u){const b=u[_];if(b){const{_f:m,...V}=b;if(m){const T=l.array.has(m.name),D=b._f&&qs(b._f);D&&x.validatingFields&&A([m.name],!0);const G=await $t(b,l.disabled,a,F,r.shouldUseNativeValidation&&!c,T);if(D&&x.validatingFields&&A([m.name]),G[m.name]&&(f.valid=!1,c||e.shouldUseNativeValidation))break;!c&&(k(G,m.name)?T?Hs(t.errors,G,m.name):O(t.errors,m.name,G[m.name]):$(t.errors,m.name))}!W(V)&&await U(V,c,f)}}return f.valid},ee=()=>{for(const u of l.unMount){const c=k(s,u);c&&(c._f.refs?c._f.refs.every(f=>!Je(f)):!Je(c._f.ref))&&je(u)}l.unMount=new Set},N=(u,c)=>!r.disabled&&(u&&c&&O(a,u,c),!fe(lt(),i)),L=(u,c,f)=>Ds(u,l,{...o.mount?a:R(c)?i:Z(u)?{[u]:c}:c},f,c),j=u=>nt(k(o.mount?a:i,u,r.shouldUnregister?k(i,u,[]):[])),z=(u,c,f={})=>{const _=k(s,u);let b=c;if(_){const m=_._f;m&&(!m.disabled&&O(a,u,mr(c,m)),b=De(m.ref)&&H(c)?"":c,hr(m.ref)?[...m.ref.options].forEach(V=>V.selected=b.includes(V.value)):m.refs?Te(m.ref)?m.refs.forEach(V=>{(!V.defaultChecked||!V.disabled)&&(Array.isArray(b)?V.checked=!!b.find(T=>T===V.value):V.checked=b===V.value||!!b)}):m.refs.forEach(V=>V.checked=V.value===b):at(m.ref)?m.ref.value="":(m.ref.value=b,m.ref.type||y.state.next({name:u,values:q(a)})))}(f.shouldDirty||f.shouldTouch)&&M(u,b,f.shouldTouch,f.shouldDirty,!0),f.shouldValidate&&Se(u)},te=(u,c,f)=>{for(const _ in c){if(!c.hasOwnProperty(_))return;const b=c[_],m=u+"."+_,V=k(s,m);(l.array.has(u)||P(b)||V&&!V._f)&&!ye(b)?te(m,b,f):z(m,b,f)}},J=(u,c,f={})=>{const _=k(s,u),b=l.array.has(u),m=q(c);O(a,u,m),b?(y.array.next({name:u,values:q(a)}),(x.isDirty||x.dirtyFields||h.isDirty||h.dirtyFields)&&f.shouldDirty&&y.state.next({name:u,dirtyFields:ve(i,a),isDirty:N(u,m)})):_&&!_._f&&!H(m)?te(u,m,f):z(u,m,f),Ot(u,l)?y.state.next({...t,name:u,values:q(a)}):y.state.next({name:o.mount?u:void 0,values:q(a)})},ke=async u=>{o.mount=!0;const c=u.target;let f=c.name,_=!0;const b=k(s,f),m=D=>{_=Number.isNaN(D)||ye(D)&&isNaN(D.getTime())||fe(D,k(a,f,D))},V=Tt(r.mode),T=Tt(r.reValidateMode);if(b){let D,G;const pe=c.type?Lt(b._f):Fs(u),de=u.type===Ft.BLUR||u.type===Ft.FOCUS_OUT,Vr=!Us(b._f)&&!r.resolver&&!k(t.errors,f)&&!b._f.deps||Gs(de,k(t.touchedFields,f),t.isSubmitted,T,V),ze=Ot(f,l,de);O(a,f,pe),de?(!c||!c.readOnly)&&(b._f.onBlur&&b._f.onBlur(u),d&&d(0)):b._f.onChange&&b._f.onChange(u);const Ke=M(f,pe,de),Ir=!W(Ke)||ze;if(!de&&y.state.next({name:f,type:u.type,values:q(a)}),Vr)return(x.isValid||h.isValid)&&(r.mode==="onBlur"?de&&w():de||w()),Ir&&y.state.next({name:f,...ze?{}:Ke});if(!de&&ze&&y.state.next({...t}),r.resolver){const{errors:gt}=await B([f]);if(A([f]),m(pe),_){const Fr=Rt(t.errors,s,f),bt=Rt(gt,s,Fr.name||f);D=bt.error,f=bt.name,G=W(gt)}}else A([f],!0),D=(await $t(b,l.disabled,a,F,r.shouldUseNativeValidation))[f],A([f]),m(pe),_&&(D?G=!1:(x.isValid||h.isValid)&&(G=await U(s,!0)));_&&(b._f.deps&&(!Array.isArray(b._f.deps)||b._f.deps.length>0)&&Se(b._f.deps),Y(f,G,D,Ke))}},Ce=(u,c)=>{if(k(t.errors,c)&&u.focus)return u.focus(),1},Se=async(u,c={})=>{let f,_;const b=Me(u);if(r.resolver){const m=await Q(R(u)?u:b);f=W(m),_=u?!b.some(V=>k(m,V)):f}else u?(_=(await Promise.all(b.map(async m=>{const V=k(s,m);return await U(V&&V._f?{[m]:V}:V)}))).every(Boolean),!(!_&&!t.isValid)&&w()):_=f=await U(s);return y.state.next({...!Z(u)||(x.isValid||h.isValid)&&f!==t.isValid?{}:{name:u},...r.resolver||!u?{isValid:f}:{},errors:t.errors}),c.shouldFocus&&!_&&Ne(s,Ce,u?b:l.mount),_},lt=(u,c)=>{let f={...o.mount?a:i};return c&&(f=fr(c.dirtyFields?t.dirtyFields:t.touchedFields,f)),R(u)?f:Z(u)?k(f,u):u.map(_=>k(f,_))},ut=(u,c)=>({invalid:!!k((c||t).errors,u),isDirty:!!k((c||t).dirtyFields,u),error:k((c||t).errors,u),isValidating:!!k(t.validatingFields,u),isTouched:!!k((c||t).touchedFields,u)}),vr=u=>{const c=u?Me(u):void 0;c==null||c.forEach(f=>$(t.errors,f)),c?c.forEach(f=>{y.state.next({name:f,errors:t.errors})}):y.state.next({errors:{}})},ct=(u,c,f)=>{const _=(k(s,u,{_f:{}})._f||{}).ref,b=k(t.errors,u)||{},{ref:m,message:V,type:T,...D}=b;O(t.errors,u,{...D,...c,ref:_}),y.state.next({name:u,errors:t.errors,isValid:!1}),f&&f.shouldFocus&&_&&_.focus&&_.focus()},xr=(u,c)=>re(u)?y.state.subscribe({next:f=>"values"in f&&u(L(void 0,c),f)}):L(u,c,!0),dt=u=>y.state.subscribe({next:c=>{Ks(u.name,c.name,u.exact)&&zs(c,u.formState||x,Sr,u.reRenderRoot)&&u.callback({values:{...a},...t,...c,defaultValues:i})}}).unsubscribe,wr=u=>(o.mount=!0,h={...h,...u.formState},dt({...u,formState:{...g,...u.formState}})),je=(u,c={})=>{for(const f of u?Me(u):l.mount)l.mount.delete(f),l.array.delete(f),c.keepValue||($(s,f),$(a,f)),!c.keepError&&$(t.errors,f),!c.keepDirty&&$(t.dirtyFields,f),!c.keepTouched&&$(t.touchedFields,f),!c.keepIsValidating&&$(t.validatingFields,f),!r.shouldUnregister&&!c.keepDefaultValue&&$(i,f);y.state.next({values:q(a)}),y.state.next({...t,...c.keepDirty?{isDirty:N()}:{}}),!c.keepIsValid&&w()},ft=({disabled:u,name:c})=>{if(ne(u)&&o.mount||u||l.disabled.has(c)){const b=l.disabled.has(c)!==!!u;u?l.disabled.add(c):l.disabled.delete(c),b&&o.mount&&!o.action&&w()}},qe=(u,c={})=>{let f=k(s,u);const _=ne(c.disabled)||ne(r.disabled);return O(s,u,{...f||{},_f:{...f&&f._f?f._f:{ref:{name:u}},name:u,mount:!0,...c}}),l.mount.add(u),f?ft({disabled:ne(c.disabled)?c.disabled:r.disabled,name:u}):S(u,!0,c.value),{..._?{disabled:c.disabled||r.disabled}:{},...r.progressive?{required:!!c.required,min:Ve(c.min),max:Ve(c.max),minLength:Ve(c.minLength),maxLength:Ve(c.maxLength),pattern:Ve(c.pattern)}:{},name:u,onChange:ke,onBlur:ke,ref:b=>{if(b){qe(u,c),f=k(s,u);const m=R(b.value)&&b.querySelectorAll&&b.querySelectorAll("input,select,textarea")[0]||b,V=Rs(m),T=f._f.refs||[];if(V?T.find(D=>D===m):m===f._f.ref)return;O(s,u,{_f:{...f._f,...V?{refs:[...T.filter(Je),m,...Array.isArray(k(i,u))?[{}]:[]],ref:{type:m.type,name:u}}:{ref:m}}}),S(u,!1,void 0,m)}else f=k(s,u,{}),f._f&&(f._f.mount=!1),(r.shouldUnregister||c.shouldUnregister)&&!(Es(l.array,u)&&o.action)&&l.unMount.add(u)}}},Ue=()=>r.shouldFocusError&&Ne(s,Ce,l.mount),_r=u=>{ne(u)&&(y.state.next({disabled:u}),Ne(s,(c,f)=>{const _=k(s,f);_&&(c.disabled=_._f.disabled||u,Array.isArray(_._f.refs)&&_._f.refs.forEach(b=>{b.disabled=_._f.disabled||u}))},0,!1))},ht=(u,c)=>async f=>{let _;f&&(f.preventDefault&&f.preventDefault(),f.persist&&f.persist());let b=q(a);if(y.state.next({isSubmitting:!0}),r.resolver){const{errors:m,values:V}=await B();A(),t.errors=m,b=q(V)}else await U(s);if(l.disabled.size)for(const m of l.disabled)$(b,m);if($(t.errors,"root"),W(t.errors)){y.state.next({errors:{}});try{await u(b,f)}catch(m){_=m}}else c&&await c({...t.errors},f),Ue(),setTimeout(Ue);if(y.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:W(t.errors)&&!_,submitCount:t.submitCount+1,errors:t.errors}),_)throw _},kr=(u,c={})=>{k(s,u)&&(R(c.defaultValue)?J(u,q(k(i,u))):(J(u,c.defaultValue),O(i,u,q(c.defaultValue))),c.keepTouched||$(t.touchedFields,u),c.keepDirty||($(t.dirtyFields,u),t.isDirty=c.defaultValue?N(u,q(k(i,u))):N()),c.keepError||($(t.errors,u),x.isValid&&w()),y.state.next({...t}))},pt=(u,c={})=>{const f=u?q(u):i,_=q(f),b=W(u),m=b?i:_;if(c.keepDefaultValues||(i=f),!c.keepValues){if(c.keepDirtyValues){const V=new Set([...l.mount,...Object.keys(ve(i,a))]);for(const T of Array.from(V)){const D=k(t.dirtyFields,T),G=k(a,T),pe=k(m,T);D&&!R(G)?O(m,T,G):!D&&!R(pe)&&J(T,pe)}}else{if(st&&R(u))for(const V of l.mount){const T=k(s,V);if(T&&T._f){const D=Array.isArray(T._f.refs)?T._f.refs[0]:T._f.ref;if(De(D)){const G=D.closest("form");if(G){G.reset();break}}}}if(c.keepFieldsRef)for(const V of l.mount)J(V,k(m,V));else s={}}a=r.shouldUnregister?c.keepDefaultValues?q(i):{}:q(m),y.array.next({values:{...m}}),y.state.next({values:{...m}})}l={mount:c.keepDirtyValues?l.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},o.mount=!x.isValid||!!c.keepIsValid||!!c.keepDirtyValues||!r.shouldUnregister&&!W(m),o.watch=!!r.shouldUnregister,o.keepIsValid=!!c.keepIsValid,o.action=!1,c.keepErrors||(t.errors={}),y.state.next({submitCount:c.keepSubmitCount?t.submitCount:0,isDirty:b?!1:c.keepDirty?t.isDirty:!!(c.keepDefaultValues&&!fe(u,i)),isSubmitted:c.keepIsSubmitted?t.isSubmitted:!1,dirtyFields:b?{}:c.keepDirtyValues?c.keepDefaultValues&&a?ve(i,a):t.dirtyFields:c.keepDefaultValues&&u?ve(i,u):c.keepDirty?t.dirtyFields:{},touchedFields:c.keepTouched?t.touchedFields:{},errors:c.keepErrors?t.errors:{},isSubmitSuccessful:c.keepIsSubmitSuccessful?t.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:i})},yt=(u,c)=>pt(re(u)?u(a):u,{...r.resetOptions,...c}),Cr=(u,c={})=>{const f=k(s,u),_=f&&f._f;if(_){const b=_.refs?_.refs[0]:_.ref;b.focus&&setTimeout(()=>{b.focus(),c.shouldSelect&&re(b.select)&&b.select()})}},Sr=u=>{t={...t,...u}},mt={control:{register:qe,unregister:je,getFieldState:ut,handleSubmit:ht,setError:ct,_subscribe:dt,_runSchema:B,_updateIsValidating:A,_focusError:Ue,_getWatch:L,_getDirty:N,_setValid:w,_setFieldArray:v,_setDisabledField:ft,_setErrors:E,_getFieldArray:j,_reset:pt,_resetDefaultValues:()=>re(r.defaultValues)&&r.defaultValues().then(u=>{yt(u,r.resetOptions),y.state.next({isLoading:!1})}),_removeUnmounted:ee,_disableForm:_r,_subjects:y,_proxyFormState:x,get _fields(){return s},get _formValues(){return a},get _state(){return o},set _state(u){o=u},get _defaultValues(){return i},get _names(){return l},set _names(u){l=u},get _formState(){return t},get _options(){return r},set _options(u){r={...r,...u}}},subscribe:wr,trigger:Se,register:qe,handleSubmit:ht,watch:xr,setValue:J,getValues:lt,reset:yt,resetField:kr,clearErrors:vr,unregister:je,setError:ct,setFocus:Cr,getFieldState:ut};return{...mt,formControl:mt}}function $e(e={}){const r=n.Cn.useRef(void 0),t=n.Cn.useRef(void 0),[s,i]=n.Cn.useState({isDirty:!1,isValidating:!1,isLoading:re(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:re(e.defaultValues)?void 0:e.defaultValues});if(!r.current)if(e.formControl)r.current={...e.formControl,formState:s},e.defaultValues&&!re(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{const{formControl:o,...l}=Zs(e);r.current={...l,formState:s}}const a=r.current.control;return a._options=e,Ts(()=>{const o=a._subscribe({formState:a._proxyFormState,callback:()=>i({...a._formState}),reRenderRoot:!0});return i(l=>({...l,isReady:!0})),a._formState.isReady=!0,o},[a]),n.Cn.useEffect(()=>a._disableForm(e.disabled),[a,e.disabled]),n.Cn.useEffect(()=>{e.mode&&(a._options.mode=e.mode),e.reValidateMode&&(a._options.reValidateMode=e.reValidateMode)},[a,e.mode,e.reValidateMode]),n.Cn.useEffect(()=>{e.errors&&(a._setErrors(e.errors),a._focusError())},[a,e.errors]),n.Cn.useEffect(()=>{e.shouldUnregister&&a._subjects.state.next({values:a._getWatch()})},[a,e.shouldUnregister]),n.Cn.useEffect(()=>{if(a._proxyFormState.isDirty){const o=a._getDirty();o!==s.isDirty&&a._subjects.state.next({isDirty:o})}},[a,s.isDirty]),n.Cn.useEffect(()=>{var o;e.values&&!fe(e.values,t.current)?(a._reset(e.values,{keepFieldsRef:!0,...a._options.resetOptions}),!((o=a._options.resetOptions)===null||o===void 0)&&o.keepIsValid||a._setValid(),t.current=e.values,i(l=>({...l}))):a._resetDefaultValues()},[a,e.values]),n.Cn.useEffect(()=>{a._state.mount||(a._setValid(),a._state.mount=!0),a._state.watch&&(a._state.watch=!1,a._subjects.state.next({...a._formState})),a._removeUnmounted()}),r.current.formState=n.Cn.useMemo(()=>Ls(s,a),[a,s]),r.current}const Pt=(e,r,t)=>{if(e&&"reportValidity"in e){const s=k(t,r);e.setCustomValidity(s&&s.message||""),e.reportValidity()}},Xs=(e,r)=>{for(const t in r.fields){const s=r.fields[t];s&&s.ref&&"reportValidity"in s.ref?Pt(s.ref,t,e):s.refs&&s.refs.forEach(i=>Pt(i,t,e))}},Ys=(e,r)=>{r.shouldUseNativeValidation&&Xs(e,r);const t={};for(const s in e){const i=k(r.fields,s),a=Object.assign(e[s]||{},{ref:i&&i.ref});if(Qs(r.names||Object.keys(e),s)){const o=Object.assign({},k(t,s));O(o,"root",a),O(t,s,o)}else O(t,s,a)}return t},Qs=(e,r)=>e.some(t=>t.startsWith(r+"."));var Pe=function(e,r,t){return t===void 0&&(t={}),function(s,i,a){try{var o=!a.shouldUseNativeValidation&&a.criteriaMode==="all";return Promise.resolve(fs(e,s,Object.assign({},r,{abortPipeEarly:!o}))).then(function(l){if(l.issues){for(var d={};l.issues.length;){var p=l.issues[0],g=is(p);if(g&&(d[g]||(d[g]={message:p.message,type:p.type}),o)){var x=d[g].types,h=x&&x[p.type];d[g]=dr(g,o,d,p.type,h?[].concat(h,p.message):p.message)}l.issues.shift()}return{values:{},errors:Ys(d,a)}}return{values:t.raw?s:l.output,errors:{}}})}catch(l){return Promise.reject(l)}}};const jt=27,qt=12,Ut=10,en=n.isSubmissionOfType("enum"),tn=(e,r)=>{const t={min:e.minSelected??0,max:e.maxSelected??e.options.length};return Pe(ce({checked:he(ir(X(),rr()),Qe(s=>Object.entries(s).filter(([i,a])=>a).map(([i,a])=>i)),Ae(t.max,r("validation_multiple_choice_max",{count:t.max})),xe(t.min,r("validation_multiple_choice_min",{count:t.min})))}))},rn=n.k$2(({option:e,...r},t)=>n.o(n.k$1,{children:[n.o("input",{class:"peer sr-only h-full",type:"checkbox",...r,ref:t}),n.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})]})),zt=n.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:or}}}),sn=({input:e,onSubmitSuccess:r})=>{var g,x;const t=e.key?(g=n.store.current$.value.flow)==null?void 0:g.data.submissions[e.key]:void 0,s=(e.config.minSelected===1||e.config.minSelected===void 0)&&e.config.maxSelected===1,i=s&&e.config.options.length===2,{t:a}=n.useTranslation(),{register:o,handleSubmit:l,formState:{errors:d}}=$e({defaultValues:{checked:s?{}:en(t)?Object.fromEntries(t.value.map(h=>[h,!0])):{}},resolver:tn(e.config,a)}),p=tt();return i?n.o("ul",{style:{maxHeight:6.5*jt+5*qt+2*Ut},class:zt({variant:"booleanLike"}),children:e.config.options.map((h,y)=>n.o("li",{class:lr,children:n.o(ur,{type:"submit",ref:F=>{F&&y===0&&(p.current=F)},label:h.label,value:"true",onClick:()=>r({type:"enum",value:[h.value]})})},h.value))}):n.o("form",{noValidate:!0,onSubmit:h=>l(y=>{const F=y.checked;r({type:"enum",value:F})})(h),children:[n.o("div",{class:"flex items-center gap-1",children:[n.o("ul",{style:{maxHeight:6.5*jt+5*qt+2*Ut},class:zt({variant:e.config.options.length===1?"singleOption":void 0}),children:e.config.options.map((h,y)=>{const F=`checked.${h.value}`,{ref:I,...w}=o(F);return n.o("li",{class:"relative",children:n.o(rn,{option:h,autoFocus:y===0,ref:A=>{A&&y===0&&(p.current=A),I(A)},id:F,...w,onClick:s?()=>r({type:"enum",value:[h.value]}):void 0})},h.value)})}),n.o("div",{class:"flex flex-col items-center gap-2 pr-2.5 pt-2.5",children:[s?null:n.o(me,{}),e.config.minSelected===0&&n.o(ge,{class:"relative",type:"button",onClick:()=>r({type:"enum",value:[]})})]})]}),n.o("div",{class:"px-1",children:n.o(_e,{error:(x=d.checked)==null?void 0:x.root})})]})},nn=n.isSubmissionOfType("number"),an=(e,r)=>{const t=e.min??Number.MIN_SAFE_INTEGER,s=e.max??Number.MAX_SAFE_INTEGER,i=e.decimalCases??0;return Pe(ce({number:he(sr(r("validation_number")),Yt(t,r("validation_number_min",{min:t})),Xt(s,r("validation_number_max",{max:s})),Jt(a=>a===Number(a.toFixed(i)),r("validation_number_decimal_cases",{count:i})))}))},on=({input:e,onSubmitSuccess:r})=>{var x;const t=e.config.defaultValue,s=e.key?(x=n.store.current$.value.flow)==null?void 0:x.data.submissions[e.key]:void 0,{t:i}=n.useTranslation(),{register:a,handleSubmit:o,formState:{errors:l}}=$e({defaultValues:{number:t?Number(t):nn(s)?s.value:void 0},resolver:an(e.config,i)}),{ref:d,...p}=a("number",{required:!e.config.optional,valueAsNumber:!0}),g=n._();return n.y(()=>{g.current&&(g.current.focus(),g.current.select())},[]),n.o("form",{class:"flex flex-col gap-1 p-2.5",onSubmit:o(h=>{h.number!==void 0&&r({type:"number",value:h.number})}),children:[n.o("div",{class:"flex items-center gap-2",children:[n.o("div",{class:"relative min-w-0 flex-grow",children:[n.o("input",{...p,id:"chat-input",autocomplete:"off",autoCapitalize:"off",autoCorrect:"off",autoFocus:!0,ref:h=>{h&&(g.current=h),d(h)},type:"text",min:e.config.min,max:e.config.max,class:Le({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&&n.o(ge,{class:"absolute bottom-0 right-0.5 top-0",onClick:()=>r(null)})]}),n.o(me,{})]}),n.o(_e,{error:l.number})]})},ln=e=>{if(e==="")return{countryCode:"",phoneNumber:""};const r=Object.entries(et).find(i=>e.startsWith(i[1])),t=r?r[1]:"",s=e.replace(t,"");return/^\d+$/.test(s)?{countryCode:t,phoneNumber:s}:{countryCode:"",phoneNumber:""}},un="44",cn=/^[0-9 ]+$/,dn=n.isSubmissionOfType("string"),fn=n.isSubmissionOfType("phone"),hn=e=>{const r=he(X(e("validation_country_code")),Ye(cn,e("validation_country_code"))),t=he(X(e("validation_phone")),xe(1,e("validation_phone")),Qe(s=>s.replace(/[^0-9]/g,"")));return Pe(ce({countryCode:r,phoneNumber:t}))},pn=({input:e,onSubmitSuccess:r})=>{var I;const t=e.key?(I=n.store.current$.value.flow)==null?void 0:I.data.submissions[e.key]:void 0,{t:s}=n.useTranslation(),[i,a]=n.h(),o=dn(t)?ln(t.value):fn(t)?t.value:void 0,{register:l,handleSubmit:d,formState:{errors:p},watch:g}=$e({defaultValues:{countryCode:(o==null?void 0:o.countryCode)??e.config.defaultValue.countryCode??un,phoneNumber:(o==null?void 0:o.phoneNumber)??e.config.defaultValue.phoneNumber??""},resolver:hn(s)}),{ref:x,...h}=l("phoneNumber",{required:!e.config.optional}),y=n._(),F=g("countryCode");return n.y(()=>{y.current&&(y.current.focus(),y.current.select())},[]),n.o("form",{noValidate:!0,class:"flex flex-col gap-1 p-2.5",onSubmit:d(w=>{const A=w.phoneNumber.replace(/[^0-9]/g,""),v=w.countryCode.replace(/[^0-9]/g,"");a(void 0);const C=e.config.minChars??7,E=A.length+v.length;if(E<C)return a(s("validation_phone_min_chars",{count:C}));const S=e.config.maxChars;if(S!=null&&E>S)return a(s("validation_max_chars",{count:S}));e.config.submissionFormat==="phone"?r({type:"phone",value:{countryCode:v,phoneNumber:A}}):r({type:"string",value:F+w.phoneNumber})}),children:[n.o("div",{class:"flex items-center gap-2",children:[n.o("div",{class:"relative flex min-w-0 flex-1 flex-grow gap-2",children:[n.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:[n.o("span",{children:["+",F]}),n.o("select",{...l("countryCode",{}),id:`isdk_phone_${e.key}`,class:"absolute inset-0 opacity-0",children:Object.entries(et).map(([w,A])=>n.o("option",{value:A,children:[w," (+",A,")"]},w))})]}),n.o("input",{...h,id:"chat-input",type:"tel",inputMode:"tel",autocomplete:"off",autoCapitalize:"off",autoCorrect:"off",autoFocus:!0,ref:w=>{w&&(y.current=w),x(w)},class:Le({optional:e.config.optional,className:"min-w-0 flex-1 rounded-r-full"}),placeholder:e.config.placeholder}),e.config.optional&&n.o(ge,{class:"absolute bottom-0 right-1 top-0",onClick:()=>r(null)})]}),n.o(me,{})]}),n.o(_e,{error:p.countryCode||p.phoneNumber||{message:i}})]})},yn=({input:e,onSubmitSuccess:r})=>n.o("div",{class:"flex flex-col items-center py-3",children:n.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 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",name:e.key,onClick:()=>{r(null)},children:n.o("span",{class:"flex items-center gap-1.5",children:[n.o("span",{class:"inline-flex items-center text-sm font-medium",children:e.config.label||"Submit"}),n.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:[n.o("path",{d:"M4 8L8 4L12 8"}),n.o("path",{d:"M8 4V13"})]})]})})}),mn={date:{type:"date",inputMode:"text"},email:{type:"email",inputMode:"email",formNoValidate:!0},text:{type:"text",inputMode:"text"},url:{type:"url",inputMode:"url",formNoValidate:!0}},gn=n.isSubmissionOfType("string"),bn=(e,r)=>{const t={maxLength:r("validation_max_chars",{count:e.maxChars??999}),minLength:r("validation_min_chars",{count:e.minChars??1})};return Pe(ce({text:{date:he(X(r("validation_date")),Ye(/^\d{4}-\d{2}-\d{2}$/,r("validation_date"))),email:he(X(r("validation_email")),Zt(r("validation_email")),xe(e.minChars??1,t.minLength),Ae(e.maxChars??1/0,t.maxLength)),text:he(X(),xe(e.minChars??1,t.minLength),Ae(e.maxChars??1/0,t.maxLength)),url:he(X(r("validation_url")),Qt(r("validation_url")),xe(e.minChars??1,t.minLength),Ae(e.maxChars??1/0,t.maxLength))}[e.format]}))},vn=({input:e,onSubmitSuccess:r})=>{var x;const{t}=n.useTranslation(),s=e.key?(x=n.store.current$.value.flow)==null?void 0:x.data.submissions[e.key]:void 0,i=e.config.defaultValue,{register:a,handleSubmit:o,formState:{errors:l}}=$e({defaultValues:{text:i||(gn(s)?s.value:"")},resolver:bn(e.config,t)}),{ref:d,...p}=a("text",{required:!e.config.optional}),g=n._();return n.y(()=>{g.current&&(g.current.focus(),g.current.select())},[]),n.o("form",{noValidate:!0,class:"flex flex-col gap-1 p-2.5",onSubmit:o(h=>{r({type:"string",value:h.text})}),children:[n.o("div",{class:"flex items-center gap-2",children:[n.o("div",{class:"relative min-w-0 flex-1",children:[n.o("input",{id:"chat-input",...p,...mn[e.config.format],autocomplete:"off",autoCapitalize:"off",autoCorrect:"off",autoFocus:!0,ref:h=>{h&&(g.current=h),d(h)},placeholder:e.config.placeholder,class:Le({optional:!!e.config.optional,className:"w-full rounded-full"})}),e.config.optional&&n.o(ge,{class:"absolute bottom-0 right-0.5 top-0",onClick:()=>r(null)})]}),n.o(me,{})]}),n.o(_e,{error:l.text})]})},xn={text:vn,phone:pn,"multiple-choice":sn,boolean:_s,file:Is,submit:yn,address:bs,number:on},wn=({logger:e})=>{var i;const r=(i=n.store.current$.value.flow)==null?void 0:i.data.currentInput,t=n._(null),s=()=>n.chatStore.onInteractionFn$.value();return n.y(()=>{var a;(a=t.current)==null||a.scrollTo({top:0})},[r]),n.o("div",{ref:t,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:n.o("div",{class:"flex flex-col",onPointerDownCapture:r?s:void 0,onKeyDownCapture:r?s:void 0,children:r?(()=>{const a=xn[r.type];return n.o(a,{logger:e,onSubmitSuccess:n.chatStore.onSubmitSuccessFn$.value,input:r})})():n.o("div",{class:"flex items-center gap-2 p-2.5",children:[n.o("input",{"aria-hidden":"true",id:"chat-input",class:Le({optional:!1,className:"flex-grow rounded-full"}),disabled:!0}),n.o(me,{disabled:!0,"aria-hidden":"true",tabIndex:-1})]})})})};function _n(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var kn=function(e){return e instanceof RegExp},Cn=function(r){var t=/[\\^$.*+?()[\]{}|]/g,s=RegExp(t.source);return r&&s.test(r)?r.replace(t,"\\$&"):r},br=function(e){return typeof e=="string"},Sn=function(e){var r=[];return e.forEach(function(t){Array.isArray(t)?r=r.concat(t):r.push(t)}),r};function Vn(e,r,t){var s=0,i=0;if(e==="")return e;if(!e||!br(e))throw new TypeError("First argument to react-string-replace#replaceString must be a string");var a=r;kn(a)||(a=new RegExp("("+Cn(a)+")","gi"));for(var o=e.split(a),l=1,d=o.length;l<d;l+=2){if(o[l]===void 0||o[l-1]===void 0){console.warn("reactStringReplace: Encountered undefined value during string replacement. Your RegExp may not be working the way you expect.");continue}i=o[l].length,s+=o[l-1].length,o[l]=t(o[l],l,s),s+=i}return o}var In=function(r,t,s){return Array.isArray(r)||(r=[r]),Sn(r.map(function(i){return br(i)?Vn(i,t,s):i}))};const Ie=_n(In),Fn=/(\[[^\]]+\]\([^)]+\))/g,An=/\[([^\]]+)\]\(([^)]+)\)/,En=/(https?:\/\/[^\s]+)/g,Mn=/_(.*?)_/g,Nn=/\*\*(.*?)\*\*/g,Ln=/\\n|\n/g,Kt="text-accent-10 hover:text-accent-11 no-underline underline-offset-2 hover:underline",Tn=e=>{const r=Ie(e,Fn,(o,l)=>{const[,d,p]=o.match(An)??[];return p?n.o("a",{class:Kt,href:p,children:d??p},p+l):n.o("span",{children:"INVALID LINK"})}),t=Ie(r,En,(o,l)=>n.o("a",{class:Kt,href:o,children:o},o+l)),s=Ie(t,Mn,(o,l)=>n.o("em",{children:o},o+l)),i=Ie(s,Nn,(o,l)=>n.o("strong",{children:o},o+l));return Ie(i,Ln,(o,l)=>n.o("br",{},`br-${l}`))},Dn=n.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"}}),On=({children:e,className:r,animate:t,side:s,...i})=>n.o("p",{style:{transformOrigin:s==="left"?"0% 50%":"100% 50%"},class:Dn({className:r,side:s,animate:t}),...i,children:e}),Rn=({message:e})=>n.o("div",{class:"bg-accent-3 flex w-full items-center justify-center overflow-hidden rounded-xl px-2 py-2",children:n.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,n.o("svg",{class:"flex-none",width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:n.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"})})]})}),Bn=({className:e,...r})=>n.o("div",{"aria-hidden":!0,children:n.chatStore.isBotTyping$.value===!0?n.o("div",{"aria-label":"Typing…",class:n.clsx("flex gap-1 p-4",e),...r,children:Array.from({length:3},(t,s)=>n.o("div",{class:"bg-accent-9 h-1.5 w-1.5 animate-bounce rounded-full",style:{animationDelay:`${-s*200}ms`}}))}):void 0}),$n={bot:"left",user:"right"},Pn=n.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-8",warning:"text-[#FFC107]",error:"text-error-9",success:"text-[#4CAF50]"}}}),jn=({lastSentMessageFooter:e})=>{var t;const r=((t=n.store.current$.value.flow)==null?void 0:t.data.messages)??[];return n.o("ol",{"aria-label":"Chat messages","aria-live":"polite",class:"mt-auto flex flex-col justify-end gap-2 p-2 pt-[calc(var(--header-height)+1rem)]",children:[r.map((s,i)=>n.o(n.k$1,{children:n.o("li",{class:"flex",tabIndex:i===r.length-1?-1:void 0,children:n.M$1(s).with({type:"system"},a=>n.o("p",{class:Pn({variant:a.variant}),children:a.text})).with({type:"text",author:n.z$1.union("bot","user")},a=>{const o=a.author==="user"&&!r.slice(i+1).some(p=>p.type==="text"&&p.author==="user"),l=i===r.length-1,d=a.author==="bot"?Tn(a.text):a.text;return n.o(n.k$1,{children:[o?e:null,n.o(On,{animate:l,side:$n[a.author],children:d},i)]})}).with({type:"link"},a=>n.o(Rn,{message:a})).with({type:"image"},a=>n.o("img",{class:"shadow-surface-md w-full max-w-[min(100%,24rem)] rounded-2xl",src:a.url,style:{aspectRatio:a.width/a.height}})).with({type:"file"},a=>n.o(Ss,{class:a.author==="bot"?void 0:"ml-auto",file:{name:a.fileName,sizeKb:a.fileSizeKb}})).with({type:"loading"},a=>{const o=r[r.length-1];return!(a===o)||n.chatStore.isBotTyping$.value?null:n.o("div",{class:"flex flex-grow flex-col items-center justify-center",children:n.o(n.LoadingIndicator,{class:"text-neutral-6 h-8 w-8"})})}).exhaustive()})},i)),n.o(Bn,{},"typing")]})},qn=({logger:e,apiClient:r,analytics:t,talentBankClient:s})=>{const{flow:i}=n.store.current$.value;n.invariant(i,"Flow is required to exist to show chatbot body");const a=n.store.viewState$.value,{chatRef:o,chatService:l}=n.useChatService(),{t:d}=n.useTranslation(),[p,g]=n.h();return n.y(()=>{a==="maximised"&&n.chatStore.scrollToEnd()},[a]),n.y(()=>{var v;const{state:x,flow:h}=n.store.current$.peek();if(x!=="loaded")throw new Error(d("invalid_state"));let y=h.data.nodeHistory.at(-1);if(n.chatStore.scrollToEnd(),n.store.setInput(void 0),h.data.isFinished)return;const F=()=>{const C=n.store.current$.peek().flow;!C||C.data.hasInteracted||(n.store.markAsInteracted(),vt(t,C,"FLOW_INTERACT"))};n.chatStore.onInteractionFn$.value=F,y===void 0?(y=n.getHeadOrThrow(i.nodes).id,n.store.setCurrentNodeId(y),vt(t,h,"FLOW_START")):n.store.removeMessagesSentByNodeIds([y]);const{interpret:I,abort:w,undo:A}=Lr({context:i.context,analytics:{service:t,customProperties:(v=i.analytics)==null?void 0:v.customProperties},apiClient:r,logger:e,talentBankClient:s,flow:i,chatService:l,t:d,getApplicationRecovery:()=>{var C;return(C=n.store.current$.peek().flow)==null?void 0:C.data.applicationRecovery},setApplicationRecovery:n.store.setApplicationRecovery,getSubmissions:()=>{var C;return(C=n.store.current$.peek().flow)==null?void 0:C.data.submissions},onInterpret:C=>n.store.setCurrentNodeId(C.id),onFlowEnd:async()=>{var E;n.store.markAsFinished();const C=n.store.current$.peek().flow;n.invariant(C),t.log({event:"FLOW_END",properties:{flow_id:i.id,flow_version:i.version,flow_session_id:C.data.flowSessionId,flow_build:i.build,job:i.job},customProperties:(E=i.analytics)==null?void 0:E.customProperties})}});return g(()=>A),I(y),()=>{n.chatStore.onInteractionFn$.value===F&&(n.chatStore.onInteractionFn$.value=()=>{}),w()}},[t,r,l,e,i,s,d]),n.o(n.k$1,{children:[n.o("div",{class:"relative flex min-h-0 w-full max-w-full flex-grow flex-col",children:[n.o("div",{ref:o,role:"region","aria-label":d("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:n.o(jn,{lastSentMessageFooter:i.data.isFinished||!p?null:n.o(zn,{undoFn:p})})}),n.chatStore.isReadingHistory$.value&&!i.data.isFinished&&!n.chatStore.isBotTyping$.value&&n.o("div",{class:"absolute bottom-2 left-1/2 -translate-x-1/2",children:n.o(n.SvgIconButton,{class:"bg-neutral-1 ring-divider shadow-surface-md ring-1","aria-label":d("jump_to_current"),onClick:()=>{var h,y;n.chatStore.scrollToEnd(),(y=((h=o.current)==null?void 0:h.querySelector('li[tabindex="-1"]'))??o.current)==null||y.focus({preventScroll:!0})},children:n.o(n.ChevronDown,{})})})]}),n.o(wn,{logger:e})]})},Un=e=>"key"in e.data&&e.data.key?[e.data.key]:"keys"in e.data?Object.values(e.data.keys).filter(r=>typeof r=="string"):[],zn=({undoFn:e})=>{const{t:r}=n.useTranslation();return n.o("div",{class:"flex flex-1 items-center justify-end px-1",children:n.o(n.SvgIconButton,{"aria-label":r("undo"),onClick:async()=>{const{flow:t}=n.store.current$.peek();n.invariant(t);const{removed:s}=e(t.data.nodeHistory),i=t.data.nodeHistory.splice(-s);i.length!==0&&(n.store.removeMessagesSentByNodeIds(i),n.store.setInput(void 0),i.pop(),i.map(a=>t.nodes.find(o=>o.id===a)).filter(Boolean).flatMap(Un).forEach(a=>delete t.data.submissions[a]),n.store.current$.value={...n.store.current$.value})},children:n.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=qn;