@gengage/assistant-fe 0.5.3 → 0.5.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/qna.iife.js CHANGED
@@ -1,4 +1,4 @@
1
- (function(U){Object.defineProperty(U,Symbol.toStringTag,{value:"Module"});var yn=({element:e,renderElement:t})=>{if(!e.children||e.children.length===0)return null;const n=document.createElement("div");for(const r of e.children){const o=t(r);o&&n.appendChild(o)}return n};function vn(e){const t=document.createElement("div");if(t.className=e.containerClassName,!e.spec.elements[e.spec.root])return t;const n=e.unknownRenderer??yn,r=i=>{const a=e.spec.elements[i];if(!a)return null;const s=e.registry[a.type];return s?s({elementId:i,element:a,spec:e.spec,context:e.context,renderElement:r}):n({elementId:i,element:a,spec:e.spec,context:e.context,renderElement:r})},o=r(e.spec.root);return o&&t.appendChild(o),t}function bn(e,t){if(!t)return e;const n={...e};for(const[r,o]of Object.entries(t))o&&(n[r]=o);return n}var wn=["http:","https:"];function kn(e){const t=e.trim();if(!t)return!1;if(t.startsWith("/")&&!t.startsWith("//"))return!0;try{return wn.includes(new URL(t).protocol)}catch{return!1}}function zn(){return typeof window<"u"&&Array.isArray(window.dataLayer)}function ze(e,t){const n={event:e,...t};zn()&&window.dataLayer.push(n)}function Sn(e){ze("gengage-on-init",{gengage_widget:e})}function En(e){ze("gengage-show",{gengage_widget:e})}function An(e,t){ze("gengage-suggested-question",{gengage_question_title:e,gengage_action_type:t})}function Se(e,t){window.dispatchEvent(new CustomEvent(e,{detail:t,bubbles:!1}))}function Qe(e,t){const n=r=>{t(r.detail)};return window.addEventListener(e,n),()=>window.removeEventListener(e,n)}function Tn(){const e=window.__gengageSessionId??sessionStorage.getItem("gengage_session_id")??null??crypto.randomUUID();return window.__gengageSessionId=e,sessionStorage.setItem("gengage_session_id",e),window.gengage||(window.gengage={}),window.gengage.sessionId=e,e}function $n(e){return{sessionId:e?.sessionId??Tn(),...e}}var We={"--gengage-chat-offset":"20px","--gengage-chat-launcher-width":"56px","--gengage-chat-launcher-height":"56px","--gengage-chat-width":"400px","--gengage-chat-shell-radius":"1rem","--gengage-chat-header-height":"72px","--gengage-chat-conversation-width":"396px","--gengage-chat-panel-min-width":"320px","--gengage-chat-panel-max-width":"1200px","--gengage-chat-input-height":"48px","--gengage-qna-pill-radius":"999px","--gengage-qna-input-radius":"12px","--gengage-simrel-card-radius":"0.75rem","--radius-control":"12px","--radius-card":"16px","--radius-panel":"24px","--radius-pill":"999px","--surface-card-muted":"#f8fafc","--text-secondary":"#4b5563","--text-muted":"#6b7280","--border-default":"rgba(17, 24, 39, 0.10)"};function In(e){if(!e)return{...We};const t={...We,...e},n=e["--gengage-chat-launcher-size"];return n!==void 0&&(e["--gengage-chat-launcher-width"]===void 0&&(t["--gengage-chat-launcher-width"]=n),e["--gengage-chat-launcher-height"]===void 0&&(t["--gengage-chat-launcher-height"]=n)),t}var R={primaryColor:"#b7102a",primaryForeground:"#ffffff",backgroundColor:"#ffffff",foregroundColor:"#111827",borderRadius:"0.75rem",fontFamily:'"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',fontSize:"14px",zIndex:"1000","--glov-chatbot-width":"420px","--glov-left-spacing":"260px","--chatbot-padding":"16px","--root-wrapper-background-color":"#f8f9fa","--root-wrapper-border-color":"#edeeef","--gengage-chat-width":"400px","--gengage-chat-shell-radius":"1rem","--gengage-chat-header-height":"72px","--gengage-chat-conversation-width":"396px","--gengage-chat-panel-min-width":"320px","--gengage-chat-panel-max-width":"1200px","--gengage-chat-input-height":"48px","--gengage-qna-pill-radius":"999px","--gengage-qna-input-radius":"0.75rem","--gengage-simrel-card-radius":"0.75rem","--client-primary":"#b7102a","--client-primary-hover":"color-mix(in srgb, #b7102a 88%, black 12%)","--client-primary-active":"color-mix(in srgb, #b7102a 78%, black 22%)","--client-primary-subtle":"color-mix(in srgb, #b7102a 12%, white)","--client-primary-soft":"color-mix(in srgb, #b7102a 20%, white)","--client-on-primary":"#ffffff","--client-focus-ring":"color-mix(in srgb, #b7102a 32%, transparent)","--surface-page":"#f6f7fb","--surface-shell":"#10131a","--surface-card":"#ffffff","--surface-card-muted":"#f8fafc","--surface-card-soft":"#f8fafc","--surface-elevated":"#ffffff","--surface-input":"#ffffff","--surface-overlay":"rgba(16, 19, 26, 0.52)","--text-primary":"#111827","--text-secondary":"#4b5563","--text-muted":"#6b7280","--text-inverse":"#f9fafb","--border-subtle":"rgba(17, 24, 39, 0.06)","--border-default":"rgba(17, 24, 39, 0.10)","--border-strong":"rgba(17, 24, 39, 0.18)","--shadow-1":"0 1px 2px rgba(16, 24, 40, 0.04), 0 1px 3px rgba(16, 24, 40, 0.06)","--shadow-2":"0 4px 12px rgba(16, 24, 40, 0.08)","--shadow-3":"0 10px 24px rgba(16, 24, 40, 0.12)","--radius-control":"12px","--radius-card":"16px","--radius-panel":"24px","--radius-pill":"999px","--success":"#16a34a","--warning":"#d97706","--error":"#dc2626","--info":"#2563eb","--rating":"#f5b301","--ai-accent-start":"#0b24d6","--ai-accent-end":"#f768f2","--ai-accent-soft":"linear-gradient(135deg, rgba(11, 36, 214, 0.08), rgba(247, 104, 242, 0.08))"},q="gengage-global-toast-root",Ve="gengage-global-toast-style",Ee="gengage-global-toast-root--visible",Pn=4200,Cn=1500,On=15e3,Zn=["--gengage-font-family","--surface-card","--text-primary","--text-muted","--border-default","--radius-card","--shadow-3","--error","--ds-toast-error-bg","--ds-toast-error-border","--ds-toast-error-accent","--ds-toast-error-fg","--ds-toast-error-shadow"],Ge=!1,B=null,xn=[/failed to fetch/i,/networkerror/i,/network request failed/i,/load failed/i,/err_network/i,/fetch failed/i,/network error/i];function Ke(e){return typeof e=="string"&&e.toLowerCase().startsWith("tr")}function Rn(e){if(typeof navigator<"u"&&navigator.onLine===!1)return!0;const t=e instanceof Error?e.message.trim():"";return t?xn.some(n=>n.test(t)):!1}function Ln(e,t){return Rn(t)?Ke(e)?"Bağlantı sorunu oluştu. Lütfen tekrar deneyin.":"Connection issue. Please try again.":Ke(e)?"Bir hata oluştu. Lütfen tekrar deneyin.":"Something went wrong. Please try again."}function Nn(){Ge||typeof window>"u"||typeof document>"u"||(Ge=!0,Qe("gengage:global:error",e=>{Ae(e)}))}function Ae(e){if(typeof document>"u")return;const t=e.message.trim();if(!t)return;Bn();const n=jn();Dn(n),n.innerHTML="";const r=document.createElement("section");r.className="gengage-global-toast gengage-global-toast--error",r.setAttribute("role","status"),r.setAttribute("aria-live","polite");const o=document.createElement("div");o.className="gengage-global-toast-title",o.textContent=qn(e.source);const i=document.createElement("div");i.className="gengage-global-toast-message",i.textContent=t,r.appendChild(o),r.appendChild(i),n.appendChild(r),n.classList.add(Ee),B&&(clearTimeout(B),B=null),e.sticky!==!0&&(B=setTimeout(()=>{Ye()},Un(e.durationMs)))}function Ye(){if(typeof document>"u")return;const e=document.getElementById(q);e&&(e.classList.remove(Ee),e.innerHTML="",B&&(clearTimeout(B),B=null))}function qn(e){switch(e){case"chat":return"Chat warning";case"qna":return"QnA warning";case"simrel":return"Widget warning";default:return"Connection warning"}}function jn(){const e=document.getElementById(q);if(e instanceof HTMLElement)return e;const t=document.createElement("div");return t.id=q,t.className="gengage-global-toast-root",document.body.appendChild(t),t}function Dn(e){if(typeof document>"u"||typeof window>"u")return;const t=document.querySelector(".gengage-chat-root, .gengage-qna-container, .gengage-simrel-container, .gengage-simbut-root");if(!t)return;const n=window.getComputedStyle(t);for(const r of Zn){const o=n.getPropertyValue(r).trim();o?e.style.setProperty(r,o):e.style.removeProperty(r)}}function Un(e){return typeof e!="number"||!Number.isFinite(e)?Pn:Math.min(On,Math.max(Cn,Math.round(e)))}function Bn(){if(document.getElementById(Ve))return;const e=document.createElement("style");e.id=Ve;const t=R["--surface-card"]??R.backgroundColor??"#ffffff",n=R["--text-primary"]??R.foregroundColor??"#111827",r=R["--border-default"]??"rgba(17, 24, 39, 0.10)",o=R["--error"]??"#dc2626",i=R["--shadow-3"]??"0 10px 24px rgba(16, 24, 40, 0.12)",a=R["--radius-card"]??"16px",s=R["--text-muted"]??"#6b7280";e.textContent=`
1
+ (function(U){Object.defineProperty(U,Symbol.toStringTag,{value:"Module"});var vn=({element:e,renderElement:t})=>{if(!e.children||e.children.length===0)return null;const n=document.createElement("div");for(const r of e.children){const o=t(r);o&&n.appendChild(o)}return n};function bn(e){const t=document.createElement("div");if(t.className=e.containerClassName,!e.spec.elements[e.spec.root])return t;const n=e.unknownRenderer??vn,r=i=>{const a=e.spec.elements[i];if(!a)return null;const s=e.registry[a.type];return s?s({elementId:i,element:a,spec:e.spec,context:e.context,renderElement:r}):n({elementId:i,element:a,spec:e.spec,context:e.context,renderElement:r})},o=r(e.spec.root);return o&&t.appendChild(o),t}function wn(e,t){if(!t)return e;const n={...e};for(const[r,o]of Object.entries(t))o&&(n[r]=o);return n}var kn=["http:","https:"];function zn(e){const t=e.trim();if(!t)return!1;if(t.startsWith("/")&&!t.startsWith("//"))return!0;try{return kn.includes(new URL(t).protocol)}catch{return!1}}function Sn(){return typeof window<"u"&&Array.isArray(window.dataLayer)}function ze(e,t){const n={event:e,...t};Sn()&&window.dataLayer.push(n)}function En(e){ze("gengage-on-init",{gengage_widget:e})}function An(e){ze("gengage-show",{gengage_widget:e})}function Tn(e,t){ze("gengage-suggested-question",{gengage_question_title:e,gengage_action_type:t})}function Se(e,t){window.dispatchEvent(new CustomEvent(e,{detail:t,bubbles:!1}))}function Qe(e,t){const n=r=>{t(r.detail)};return window.addEventListener(e,n),()=>window.removeEventListener(e,n)}function $n(){const e=window.__gengageSessionId??sessionStorage.getItem("gengage_session_id")??null??crypto.randomUUID();return window.__gengageSessionId=e,sessionStorage.setItem("gengage_session_id",e),window.gengage||(window.gengage={}),window.gengage.sessionId=e,e}function In(e){return{sessionId:e?.sessionId??$n(),...e}}var We={"--gengage-chat-offset":"20px","--gengage-chat-launcher-width":"56px","--gengage-chat-launcher-height":"56px","--gengage-chat-width":"400px","--gengage-chat-shell-radius":"1rem","--gengage-chat-header-height":"72px","--gengage-chat-conversation-width":"396px","--gengage-chat-panel-min-width":"320px","--gengage-chat-panel-max-width":"1200px","--gengage-chat-input-height":"48px","--gengage-qna-pill-radius":"999px","--gengage-qna-input-radius":"12px","--gengage-simrel-card-radius":"0.75rem","--radius-control":"12px","--radius-card":"16px","--radius-panel":"24px","--radius-pill":"999px","--surface-card-muted":"#f8fafc","--text-secondary":"#4b5563","--text-muted":"#6b7280","--border-default":"rgba(17, 24, 39, 0.10)"};function Pn(e){if(!e)return{...We};const t={...We,...e},n=e["--gengage-chat-launcher-size"];return n!==void 0&&(e["--gengage-chat-launcher-width"]===void 0&&(t["--gengage-chat-launcher-width"]=n),e["--gengage-chat-launcher-height"]===void 0&&(t["--gengage-chat-launcher-height"]=n)),t}var R={primaryColor:"#b7102a",primaryForeground:"#ffffff",backgroundColor:"#ffffff",foregroundColor:"#111827",borderRadius:"0.75rem",fontFamily:'"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',fontSize:"14px",zIndex:"1000","--glov-chatbot-width":"420px","--glov-left-spacing":"260px","--chatbot-padding":"16px","--root-wrapper-background-color":"#f8f9fa","--root-wrapper-border-color":"#edeeef","--gengage-chat-width":"400px","--gengage-chat-shell-radius":"1rem","--gengage-chat-header-height":"72px","--gengage-chat-conversation-width":"396px","--gengage-chat-panel-min-width":"320px","--gengage-chat-panel-max-width":"1200px","--gengage-chat-input-height":"48px","--gengage-qna-pill-radius":"999px","--gengage-qna-input-radius":"0.75rem","--gengage-simrel-card-radius":"0.75rem","--client-primary":"#b7102a","--client-primary-hover":"color-mix(in srgb, #b7102a 88%, black 12%)","--client-primary-active":"color-mix(in srgb, #b7102a 78%, black 22%)","--client-primary-subtle":"color-mix(in srgb, #b7102a 12%, white)","--client-primary-soft":"color-mix(in srgb, #b7102a 20%, white)","--client-on-primary":"#ffffff","--client-focus-ring":"color-mix(in srgb, #b7102a 32%, transparent)","--surface-page":"#f6f7fb","--surface-shell":"#10131a","--surface-card":"#ffffff","--surface-card-muted":"#f8fafc","--surface-card-soft":"#f8fafc","--surface-elevated":"#ffffff","--surface-input":"#ffffff","--surface-overlay":"rgba(16, 19, 26, 0.52)","--text-primary":"#111827","--text-secondary":"#4b5563","--text-muted":"#6b7280","--text-inverse":"#f9fafb","--border-subtle":"rgba(17, 24, 39, 0.06)","--border-default":"rgba(17, 24, 39, 0.10)","--border-strong":"rgba(17, 24, 39, 0.18)","--shadow-1":"0 1px 2px rgba(16, 24, 40, 0.04), 0 1px 3px rgba(16, 24, 40, 0.06)","--shadow-2":"0 4px 12px rgba(16, 24, 40, 0.08)","--shadow-3":"0 10px 24px rgba(16, 24, 40, 0.12)","--radius-control":"12px","--radius-card":"16px","--radius-panel":"24px","--radius-pill":"999px","--success":"#16a34a","--warning":"#d97706","--error":"#dc2626","--info":"#2563eb","--rating":"#f5b301","--ai-accent-start":"#0b24d6","--ai-accent-end":"#f768f2","--ai-accent-soft":"linear-gradient(135deg, rgba(11, 36, 214, 0.08), rgba(247, 104, 242, 0.08))"},q="gengage-global-toast-root",Ve="gengage-global-toast-style",Ee="gengage-global-toast-root--visible",Cn=4200,On=1500,Zn=15e3,xn=["--gengage-font-family","--surface-card","--text-primary","--text-muted","--border-default","--radius-card","--shadow-3","--error","--ds-toast-error-bg","--ds-toast-error-border","--ds-toast-error-accent","--ds-toast-error-fg","--ds-toast-error-shadow"],Ge=!1,B=null,Rn=[/failed to fetch/i,/networkerror/i,/network request failed/i,/load failed/i,/err_network/i,/fetch failed/i,/network error/i];function Ke(e){return typeof e=="string"&&e.toLowerCase().startsWith("tr")}function Ln(e){if(typeof navigator<"u"&&navigator.onLine===!1)return!0;const t=e instanceof Error?e.message.trim():"";return t?Rn.some(n=>n.test(t)):!1}function Nn(e,t){return Ln(t)?Ke(e)?"Bağlantı sorunu oluştu. Lütfen tekrar deneyin.":"Connection issue. Please try again.":Ke(e)?"Bir hata oluştu. Lütfen tekrar deneyin.":"Something went wrong. Please try again."}function qn(){Ge||typeof window>"u"||typeof document>"u"||(Ge=!0,Qe("gengage:global:error",e=>{Ae(e)}))}function Ae(e){if(typeof document>"u")return;const t=e.message.trim();if(!t)return;Mn();const n=Dn();Un(n),n.innerHTML="";const r=document.createElement("section");r.className="gengage-global-toast gengage-global-toast--error",r.setAttribute("role","status"),r.setAttribute("aria-live","polite");const o=document.createElement("div");o.className="gengage-global-toast-title",o.textContent=jn(e.source);const i=document.createElement("div");i.className="gengage-global-toast-message",i.textContent=t,r.appendChild(o),r.appendChild(i),n.appendChild(r),n.classList.add(Ee),B&&(clearTimeout(B),B=null),e.sticky!==!0&&(B=setTimeout(()=>{Ye()},Bn(e.durationMs)))}function Ye(){if(typeof document>"u")return;const e=document.getElementById(q);e&&(e.classList.remove(Ee),e.innerHTML="",B&&(clearTimeout(B),B=null))}function jn(e){switch(e){case"chat":return"Chat warning";case"qna":return"QnA warning";case"simrel":return"Widget warning";default:return"Connection warning"}}function Dn(){const e=document.getElementById(q);if(e instanceof HTMLElement)return e;const t=document.createElement("div");return t.id=q,t.className="gengage-global-toast-root",document.body.appendChild(t),t}function Un(e){if(typeof document>"u"||typeof window>"u")return;const t=document.querySelector(".gengage-chat-root, .gengage-qna-container, .gengage-simrel-container, .gengage-simbut-root");if(!t)return;const n=window.getComputedStyle(t);for(const r of xn){const o=n.getPropertyValue(r).trim();o?e.style.setProperty(r,o):e.style.removeProperty(r)}}function Bn(e){return typeof e!="number"||!Number.isFinite(e)?Cn:Math.min(Zn,Math.max(On,Math.round(e)))}function Mn(){if(document.getElementById(Ve))return;const e=document.createElement("style");e.id=Ve;const t=R["--surface-card"]??R.backgroundColor??"#ffffff",n=R["--text-primary"]??R.foregroundColor??"#111827",r=R["--border-default"]??"rgba(17, 24, 39, 0.10)",o=R["--error"]??"#dc2626",i=R["--shadow-3"]??"0 10px 24px rgba(16, 24, 40, 0.12)",a=R["--radius-card"]??"16px",s=R["--text-muted"]??"#6b7280";e.textContent=`
2
2
  #${q} {
3
3
  position: fixed;
4
4
  top: 16px;
@@ -44,10 +44,10 @@
44
44
  transform: translateY(0);
45
45
  }
46
46
  }
47
- `,document.head.appendChild(e)}var X=null;function Mn(){if(X!==null)return X;try{X=localStorage.getItem("gengage:debug")==="1"}catch{X=!1}return X}function Te(e,t,n){if(!Mn())return;const r=[`[gengage:${e}]`,t];n!==void 0&&r.push(n),console.debug(...r)}var Fn=("0.5.3".trim(),"0.5.3".trim()),Hn=("iife-build".trim(),"iife-build".trim());function Jn(){if(typeof window>"u")return;const e=window;e.__gengageSdkRuntimeInfoLogged||(e.__gengageSdkRuntimeInfoLogged=!0,console.info(`[gengage] @gengage/assistant-fe v${Fn} (${Hn})`))}var Qn=class{constructor(){this.isVisible=!1,this.isInitialised=!1,this._handlers=new Map,this._cleanups=[],this._ownsRoot=!1,this._destroying=!1}async init(e){if(this.isInitialised){console.warn("[gengage] Widget already initialised. Call update() instead.");return}const t=In(e.theme);Jn(),this.config={...e,theme:t,session:$n(e.session)},this.root=this._resolveMount(e.mountTarget),this._applyTheme(t),Nn();const n=Qe("gengage:context:update",r=>this.update(r));this._cleanups.push(n),Te("lifecycle",`${this.constructor.name}.init`,{accountId:e.accountId,sku:e.pageContext?.sku});try{await this.onInit(this.config)}catch(r){throw this.destroy(),r}this._destroying||(this.isInitialised=!0,Te("lifecycle",`${this.constructor.name} ready`),this.emit("ready"))}update(e){this.isInitialised&&(this.config.pageContext?this.config={...this.config,pageContext:{...this.config.pageContext,...e}}:e.pageType!==void 0&&(this.config={...this.config,pageContext:e}),this.onUpdate(e),this.emit("context-update",this.config.pageContext))}show(){this.isVisible||(this.isVisible=!0,this.root.style.display="",this.onShow(),this.emit("show"))}hide(){this.isVisible&&(this.isVisible=!1,this.root.style.display="none",this.onHide(),this.emit("hide"))}destroy(){this._destroying||(this._destroying=!0,this.emit("destroy"),this._cleanups.forEach(e=>e()),this._cleanups.length=0,this._handlers.clear(),this.onDestroy(),this._cleanupRoot(),this.isInitialised=!1)}_cleanupRoot(){this._ownsRoot?this.root.remove():this.root.innerHTML=""}on(e,t){return this._handlers.has(e)||this._handlers.set(e,new Set),this._handlers.get(e).add(t),()=>this._handlers.get(e)?.delete(t)}emit(e,...t){this._handlers.get(e)?.forEach(n=>n(...t))}addCleanup(e){this._cleanups.push(e)}_resolveMount(e){if(e instanceof HTMLElement)return e;if(typeof e=="string"){const n=document.querySelector(e);if(!n)throw new Error(`[gengage] Mount target not found: "${e}"`);return n}const t=document.createElement("div");return t.dataset.gengageWidget=this.constructor.name.toLowerCase(),document.body.insertBefore(t,document.body.firstChild),this._ownsRoot=!0,t}_applyTheme(e){if(e){for(const[t,n]of Object.entries(e))if(n!==void 0){const r=t.startsWith("--")?t:`--gengage-${Wn(t)}`;this.root.style.setProperty(r,n)}}}};function Wn(e){return e.replace(/([A-Z])/g,"-$1").toLowerCase()}function Xe(e){const t=e?.trim();return t||"tr"}var Vn=8e3,Gn=5e3,Kn="https://www.google.com/favicon.ico",N=new Map,et=!1,W=null,ee=null,M=!1;function Yn(e){return typeof e=="string"&&e.toLowerCase().startsWith("tr")}function tt(e){return Yn(e)?"İnternet bağlantısında sorun var gibi görünüyor. İstek sürerken yeniden deneyeceğiz.":"Your internet connection looks unstable. We'll keep retrying while this request is active."}function nt(){let e;for(const t of N.values())e=t;return e}function $e(){W&&(clearTimeout(W),W=null)}function Xn(){ee&&(clearInterval(ee),ee=null)}async function rt(){try{if(typeof navigator<"u"&&navigator.onLine===!1)return!1;if(typeof window<"u"){const n=window.location.hostname;if(n==="localhost"||n==="127.0.0.1")return navigator.onLine}const e=new AbortController,t=setTimeout(()=>e.abort(),3e3);try{return await fetch(Kn,{method:"HEAD",mode:"no-cors",cache:"no-cache",signal:e.signal}),!0}catch{return navigator.onLine}finally{clearTimeout(t)}}catch{return typeof navigator>"u"?!0:navigator.onLine}}function se(){M=!1,Xn(),Ye()}function ce(){W||M||N.size===0||(W=setTimeout(async()=>{W=null,!(M||N.size===0)&&!await rt()&&N.size>0&&(M=!0,Ae({source:"sdk",message:tt(nt()),sticky:!0}),ee||(ee=setInterval(async()=>{if(N.size===0){se();return}await rt()&&(se(),ce())},Gn)))},Vn))}function er(){et||typeof window>"u"||(et=!0,window.addEventListener("online",()=>{se(),ce()}),window.addEventListener("offline",()=>{N.size===0||M||(M=!0,$e(),Ae({source:"sdk",message:tt(nt()),sticky:!0}))}))}function tr(e){er();const t=Symbol(e.source);N.set(t,e.locale),ce();let n=!1;return()=>{if(!n){if(n=!0,N.delete(t),N.size===0){$e(),se();return}M||($e(),ce())}}}function ot(e){return typeof e=="object"&&e!==null&&typeof e.type=="string"}function nr(e){const t=[];let n=0,r=!1,o=!1,i=0;for(let a=0;a<e.length;a++){const s=e[a];if(o){o=!1;continue}if(s==="\\"&&r){o=!0;continue}if(s==='"'){r=!r;continue}r||(s==="{"&&n++,s==="}"&&(n--,n===0&&(t.push(e.slice(i,a+1)),i=a+1)))}return t.length>0?t:[e]}function it(e,t){const n=e.trim();if(!n||n.startsWith(":"))return!1;const r=n.startsWith("data: ")?n.slice(6):n;if(r==="[DONE]")return t.onDone?.(),!0;try{const o=JSON.parse(r);return ot(o)?(Te("stream",`event: ${o.type}`,o),t.onEvent(o),o.type==="done"?(t.onDone?.(),!0):!1):!1}catch{const o=nr(r);if(o.length>1){for(const i of o)try{const a=JSON.parse(i);if(!ot(a))continue;if(t.onEvent(a),a.type==="done")return t.onDone?.(),!0}catch{}return!1}return!1}}async function rr(e,t){if(!e.ok){t.onError?.(new Error(`HTTP ${e.status}: ${e.statusText}`));return}if(!e.body){t.onError?.(new Error("Response body is null — streaming not supported"));return}const n=e.body.getReader(),r=new TextDecoder("utf-8");let o="";const i=t.idleTimeoutMs??6e4,a=Symbol("idle-timeout");let s=!1;try{for(;;){const c=n.read();let u;const d=await(i>0?Promise.race([c.then(h=>(clearTimeout(u),h)),new Promise(h=>{u=setTimeout(()=>h(a),i)})]):c);if(d===a){s=!0,await n.cancel();break}const{done:g,value:f}=d;if(g)break;o+=r.decode(f,{stream:!0});const p=o.split(`
48
- `);o=p.pop()??"";for(const h of p)if(it(h,t))return}if(o.trim()&&it(o,t))return}catch(c){if(c instanceof DOMException&&c.name==="AbortError")return;t.onError?.(c instanceof Error?c:new Error(String(c)))}finally{s||n.releaseLock()}t.onDone?.()}var or={process_action:"/process_action",launcher_action:"/launcher_action",similar_products:"/similar_products",product_groupings:"/product_groupings"};function ir(e){if(e===void 0)throw new Error("[gengage] middlewareUrl is required. Pass your Gengage backend URL in widget config.");const t=e.trim();return t===""?"":t.replace(/\/+$/,"")}function ar(e,t){return`${ir(t?.middlewareUrl)}/chat${or[e]}`}var at=3,sr=(e,t)=>{const n=e.replace(/\s+/g," ").trim().replace(/^[,.;:!?•-]+|[,.;:!?•-]+$/g,"");if(!n)return"";const r=t?.stripLeadingStopWords?n.replace(/^(?:daha|için)\s+/i,"").trim():n;return r?r.split(/\s+/).slice(0,3).join(" ").trim():""},Ie=(e,t)=>e?e.split(/[•,;:/()]|(?:\sve\s)|(?:\sand\s)|(?:\sile\s)|(?:\sfor\s)|(?:\swith\s)/i).map(n=>sr(n,t)).filter(Boolean):[];function cr(e){const t=(e.display_keywords??[]).flatMap(o=>Ie(o,{stripLeadingStopWords:!0})),n=t.filter((o,i)=>t.indexOf(o)===i);if(n.length>0)return n.slice(0,at);const r=[...Ie(e.chosen_attribute,{stripLeadingStopWords:!0}),...Ie(e.short_name)];return r.filter((o,i)=>r.indexOf(o)===i).slice(0,at)}function ur(e){return cr(e).join(" • ")}var lr=["beauty_consulting","watch_expert"];function dr(e){return typeof e=="string"&&lr.includes(e)}function Pe(...e){for(const t of e){if(typeof t!="string")continue;const n=t.trim();if(n.length>0)return n}}function Ce(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"&&t.trim().length>0).map(t=>t.trim()):[]}function st(e){const t={...e},n=Pe(t.sku),r=Ce(t.group_skus);if(n?t.sku=n:delete t.sku,r.length>0?t.group_skus=r:delete t.group_skus,n||r.length>0)delete t.image_url;else{const o=Pe(t.image_url);o?t.image_url=o:delete t.image_url}return t}function pr(e){if(typeof e.type!="string")return null;if(fr(e))return e;const t=e;switch(t.type){case"outputText":return gr(t);case"suggestedActions":return hr(t);case"productList":return mr(t);case"productDetails":return _r(t);case"productDetailsSimilars":return yr(t);case"comparisonTable":return vr(t);case"context":return zr(t);case"chatStreamEnd":return Sr();case"loading":return Er(t);case"panelLoading":return Ar(t);case"similarLoading":return Tr(t);case"redirect":return $r(t);case"error":return Ir(t);case"dummy":return Pr(t);case"launcherAction":return Cr(t);case"text":return Oe(t);case"productItem":return Or(t);case"text_image":return ct(t);case"quick_qna":return ut(t);case"reviewHighlights":return Zr(t);case"aiProductSuggestions":return Lr(t);case"aiProductGroupings":return Nr(t);case"aiSuggestedSearches":return jr(t);case"prosAndCons":return xr(t);case"getGroundingReview":return Dr(t);case"voice":return Br(t);case"visitorDataResponse":return Rr(t);case"productListPreview":return Ur();case"groupList":return Mr(t);case"formGetInfo":case"formTestDrive":case"formServiceRequest":case"launchFormPage":return Fr(t);case"launcherContent":return Jr(t);case"handoff":return Hr(t);case"uiSpec":return eo(t);default:return null}}function fr(e){const t=e.type;if(typeof t!="string")return!1;switch(t){case"metadata":return typeof e.sessionId=="string"&&typeof e.model=="string";case"text_chunk":return typeof e.content=="string";case"ui_spec":{const n=e.widget;if(n!=="chat"&&n!=="qna"&&n!=="simrel")return!1;const r=C(e.spec);return r?typeof r.root=="string"&&C(r.elements)!==null:!1}case"action":{const n=C(e.action);return n!==null&&typeof n.kind=="string"}case"error":return typeof e.code=="string"&&typeof e.message=="string";case"done":return!0;default:return!1}}function gr(e){const t=y(e.payload.text,e.payload.plain_text)??"",n=y(e.payload.plain_text,e.payload.text)??t;if(e.payload.is_error)return{type:"error",code:"BACKEND_ERROR",message:n||"Backend returned an error"};const r={type:"text_chunk",content:t,final:!0},o=e.payload.product_mentions;Array.isArray(o)&&o.length>0&&(r.productMentions=o.filter(c=>typeof c=="object"&&c!==null&&typeof c.sku=="string"&&typeof c.short_name=="string"));const i=e.payload.sku_to_product_item;i&&typeof i=="object"&&!Array.isArray(i)&&(r.skuToProductItem=i);const a=e.payload.conversation_mode;typeof a=="string"&&a&&(r.conversationMode=a);const s=e.payload.render_hint;return typeof s=="string"&&s&&(r.renderHint=s),e.payload.kvkk===!0&&(r.kvkk=!0),r}function hr(e){return lt((e.payload.actions??[]).map(t=>{const n=y(t.title)??"",r=Z(t.requestDetails,n),o=r?{label:n,action:r}:null;return o?(typeof t.icon=="string"&&(o.icon=t.icon),typeof t.image=="string"&&(o.image=t.image),o):null}).filter(ne),"chat")}function mr(e){const t=(Array.isArray(e.payload.style_variations)?e.payload.style_variations:[]).map(a=>{const s=y(a.style_label);if(!s)return null;const c=y(a.style_mood),u=y(a.image_url??void 0),d=(Array.isArray(a.product_list)?a.product_list:[]).map(f=>{const p=C(f);return p?Ze(C(p.product_detail)??C(p.product)??p):null}).filter(ne),g=Array.isArray(a.recommendation_groups)?a.recommendation_groups.map(f=>({label:y(f.label)??"",reason:y(f.reason)??"",skus:Array.isArray(f.skus)?f.skus.filter(p=>typeof p=="string"&&p.trim().length>0):[]})):[];return{style_label:s,style_mood:c??"",...u?{image_url:u}:{},...typeof a.status=="string"?{status:a.status}:{},product_list:d,recommendation_groups:g}}).filter(ne),n=e.payload.product_list??[],r=dr(e.payload.source)&&t.length>0?t[0].product_list:null,o=r?Qr(r,"chat"):dt(n,"chat");o.panelHint="panel";const i=o.spec.elements[o.spec.root];if(i){const a={};typeof e.payload.offset=="number"&&(a.offset=e.payload.offset),typeof e.payload.end_of_list=="boolean"&&(a.endOfList=e.payload.end_of_list),typeof e.payload.title=="string"&&(a.panelTitle=e.payload.title),typeof e.payload.source=="string"&&(a.source=e.payload.source),t.length>0&&(a.styleVariations=t),e.payload.replace_panel===!0&&(a.replacePanel=!0),(e.payload.ranking_state==="pending"||e.payload.ranking_state==="final")&&(a.rankingState=e.payload.ranking_state);const s=e.payload.sequence_id??e.payload.search_id;typeof s=="string"&&s.length>0&&(a.sequenceId=s),Object.keys(a).length>0&&(i.props={...i.props,...a})}return o}function _r(e){const t=e.payload.productDetails;if(!t)return Vr("chat");const n=V(t);return{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"ProductDetailsPanel",props:{product:{...t,...n}}}}},panelHint:"panel"}}function yr(e){const t=dt(e.payload.similarProducts??[],"chat"),n=t.spec.elements[t.spec.root];return n&&(n.props={...n.props,similarsAppend:!0}),{...t,panelHint:"panel"}}function vr(e){const t=e.payload.multiple_product_details??[],n=e.payload,r={key_differences:n.key_differences,recommended_choice:n.recommended_choice,recommended_choice_sku:n.recommended_choice_sku,special_considerations:n.special_considerations,criteria_view:n.criteria_view,criteria_view_short:n.criteria_view_short,compared_field_names:n.compared_field_names,winner_product:n.winner_product,winner_hits:n.winner_hits,...e.payload.product_comparison_framework??{}},o=e.payload.table,i=e.payload.features_list,a=[];for(const v of t){const S=V(v);a.push(S)}const s=br(o,a,r,i);let c;r?.recommended_choice_sku?c=r.recommended_choice_sku:r?.winner_product&&r.winner_product.length>0&&(c=r.winner_product[0]?.product_detail?.sku??r.winner_product[0]?.sku);const u=c?a.find(v=>v.sku===c)??a[0]:a[0],d=[];if(Array.isArray(r?.key_differences))for(const v of r.key_differences)typeof v=="string"&&d.push(v);const g=Yr(r?.special_considerations),f=r?.recommended_choice,p=r?.winner_hits,h={};for(const v of a){const S=v.sku;S&&(h[S]={title:v.name??S,type:"launchSingleProduct",payload:{sku:S}})}const m={products:a,attributes:s,highlights:d,productActions:h};return u&&(m.recommended=u),g.length>0&&(m.specialCases=g),f&&(m.recommendedText=f),p&&(m.winnerHits=p),typeof r?.key_differences=="string"&&(m.keyDifferencesHtml=r.key_differences),r?.special_considerations&&(m.specialConsiderations=r.special_considerations),{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"ComparisonTable",props:m}}},panelHint:"panel"}}function br(e,t,n,r){if(!e)return[];const o=Object.entries(e);if(o.length===0)return[];const i=o[0]?.[1];if(Array.isArray(i)){const g=n.criteria_view??n.criteria_view_short??{},f=n.compared_field_names??Object.keys(e),p=[];for(const h of f){const m=e[h];if(!m||!Array.isArray(m))continue;const v=g[h]??h;p.push({label:v,values:m.map(S=>typeof S=="string"?S:String(S??""))})}return p}const a=e,s=t.map(g=>String(g.sku??"")).filter(g=>g.length>0),c=n.criteria_view??n.criteria_view_short??{},u=(r&&r.length>0?r:n.compared_field_names&&n.compared_field_names.length>0?n.compared_field_names:wr(a)).filter(g=>g!=="name"&&g!=="name_short"&&!g.endsWith("_short")),d=[];for(const g of u){const f=s.map(h=>{const m=a[h];if(!m||typeof m!="object")return"";const v=m[`${g}_short`],S=m[g];return kr(v??S)});if(f.every(h=>h.length===0))continue;const p=c[g]??g;d.push({label:p,values:f})}return d}function wr(e){const t=[],n=new Set;for(const r of Object.values(e))if(!(!r||typeof r!="object"))for(const o of Object.keys(r))n.has(o)||(n.add(o),t.push(o));return t}function kr(e){return typeof e=="string"?e:typeof e=="number"||typeof e=="boolean"?String(e):""}function zr(e){return{type:"metadata",sessionId:"",model:"",meta:{panel:e.payload.panel,messages:e.payload.messages,message_id:e.payload.message_id}}}function Sr(){return{type:"done"}}function Er(e){return{type:"metadata",sessionId:"",model:"",meta:{loading:!0,loadingText:e.payload.text,thinkingMessages:e.payload.thinking_messages,dynamicLoading:e.payload.is_dynamic===!0}}}function Ar(e){return{type:"metadata",sessionId:"",model:"",meta:{loading:!0,panelLoading:!0,panelPendingType:e.payload?.pending_type,loadingText:e.payload?.text}}}function Tr(e){return{type:"metadata",sessionId:"",model:"",meta:{loading:!0,similarPanelLoading:!0,panelPendingType:e.payload?.pending_type,loadingText:e.payload?.text}}}function $r(e){const t=y(e.payload.url);return t?{type:"action",action:{kind:"navigate",url:t,newTab:e.payload.new_tab===!0}}:{type:"metadata",sessionId:"",model:"",meta:{redirect:e.payload,redirectTarget:y(e.payload.to)}}}function Ir(e){return{type:"error",code:"BACKEND_ERROR",message:y(e.payload?.text,e.payload?.message,e.payload?.error)??"Backend returned an error"}}function Pr(e){return{type:"metadata",sessionId:"",model:"",meta:{noop:!0}}}function Cr(e){const t=e.payload??{};if(Array.isArray(t.action_list)){const o={action_list:t.action_list},i=typeof t.type=="string"?t.type:void 0,a=typeof t.theme=="string"?t.theme:void 0;return i!==void 0&&(o.type=i),a!==void 0&&(o.theme=a),ut({type:"quick_qna",payload:o})}const n=C(t.action);if(n){const o={action:n},i=typeof t.text=="string"?t.text:void 0,a=typeof t.image_url=="string"?t.image_url:void 0,s=typeof t.theme=="string"?t.theme:void 0;return i!==void 0&&(o.text=i),a!==void 0&&(o.image_url=a),s!==void 0&&(o.theme=s),ct({type:"text_image",payload:o})}const r=typeof t.text=="string"?t.text:"";if(r){const o={text:r},i=typeof t.type=="string"?t.type:void 0,a=typeof t.theme=="string"?t.theme:void 0,s=C(t.payload)??void 0;return i!==void 0&&(o.type=i),s!==void 0&&(o.payload=s),a!==void 0&&(o.theme=a),Oe({type:"text",payload:o})}return{type:"metadata",sessionId:"",model:"",meta:{launcherAction:t}}}function Oe(e){const t={text:y(e.payload.text)??""};return typeof e.payload.theme=="string"&&(t.theme=e.payload.theme),e.payload.payload!==void 0&&(t.payload=e.payload.payload),{type:"ui_spec",widget:"qna",spec:{root:"root",elements:{root:{type:"QuestionHeading",props:t}}}}}function Or(e){return Wr(e.payload,"qna")}function ct(e){const t=y(e.payload.text)??"",n=Z(e.payload.action,t);if(n){const o={label:t||n.title,action:n};return typeof e.payload.image_url=="string"&&(o.image=e.payload.image_url),typeof e.payload.theme=="string"&&(o.theme=e.payload.theme),{type:"ui_spec",widget:"qna",spec:{root:"root",elements:{root:{type:"ActionButton",props:o}}}}}const r={text:t};return typeof e.payload.theme=="string"&&(r.theme=e.payload.theme),Oe({type:"text",payload:r})}function ut(e){return lt((e.payload.action_list??[]).map(t=>{const n=y(t.title)??"",r=Z(t.requestDetails,n),o=r?{label:n,action:r}:null;return o?(typeof t.icon=="string"&&(o.icon=t.icon),typeof t.image=="string"&&(o.image=t.image),o):null}).filter(ne),"qna")}function Zr(e){const t={reviews:(e.payload.reviews??[]).map(n=>{const r={};return typeof n.review_class=="string"&&(r.review_class=n.review_class),typeof n.review_text=="string"&&(r.review_text=n.review_text),(typeof n.review_rating=="string"||typeof n.review_rating=="number")&&(r.review_rating=n.review_rating),typeof n.review_tag=="string"&&(r.review_tag=n.review_tag),r})};return typeof e.payload.sku=="string"&&(t.sku=e.payload.sku),{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"ReviewHighlights",props:t}}}}}function xr(e){const t={};return Array.isArray(e.payload.pros)&&(t.pros=e.payload.pros),Array.isArray(e.payload.cons)&&(t.cons=e.payload.cons),typeof e.payload.product_name=="string"&&(t.productName=e.payload.product_name),{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"ProsAndCons",props:t}}}}}function Rr(e){return{type:"metadata",sessionId:"",model:"",meta:{visitorDataResponse:e.payload}}}function Lr(e){const t=e.payload.product_suggestions??[],n=[];for(let r=0;r<t.length;r++){const o=t[r];if(!o)continue;const i=Gr(o);if(!i)continue;const a={product:i},s=Z(o.requestDetails,i.name);s&&(a.action=s),typeof o.role=="string"&&(a.role=o.role),typeof o.reason=="string"&&(a.reason=o.reason),typeof o.review_highlight=="string"&&(a.reviewHighlight=o.review_highlight),Array.isArray(o.labels)&&(a.labels=o.labels),typeof o.expert_quality_score=="number"&&(a.expertQualityScore=o.expert_quality_score),n.push(a)}return n.length===0?{type:"metadata",sessionId:"",model:"",meta:{aiProductSuggestions:e.payload.product_suggestions??[]}}:{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"AITopPicks",props:{suggestions:n}}}}}}function Nr(e){const t=e.payload.product_groupings??[],n=[],r=[];for(let o=0;o<t.length;o++){const i=t[o];if(!i)continue;const a=y(i.name)??"",s=y(i.sku,i.repr_sku),c=y(i.image,i.repr_image),u=qr(i,a,s),d=(Array.isArray(i.group_products)?i.group_products:[]).map(p=>{const h=C(p);return h?Ze(h):null}).filter(ne),g=c??y(...d.map(p=>p.imageUrl));if(a&&d.length>0){const p={groupName:a,products:d};g&&(p.image=g),n.push(p)}if(!u)continue;const f={name:a,action:u};if(Array.isArray(i.labels)){const p=i.labels.filter(h=>typeof h=="string");p.length>0&&(f.labels=p)}c!==void 0&&(f.image=c),r.push(f)}return n.length>0?{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"CategoriesContainer",props:{groups:n}}}},panelHint:"panel"}:r.length===0?{type:"metadata",sessionId:"",model:"",meta:{aiProductGroupings:e.payload.product_groupings??[]}}:{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"AIGroupingCards",props:{entries:r}}}}}}function qr(e,t,n){const r=C(e.requestDetails);if(r){if(r.type!=="findSimilar")return Z(r,t);const a={...C(r.payload)??{}};n&&!Pe(a.sku)&&(a.sku=n);const s=Ce(e.group_skus);return s.length>0&&(a.group_skus=s),Z({...r,payload:st(a)},t)}const o={};n&&(o.sku=n);const i=Ce(e.group_skus);return i.length>0&&(o.group_skus=i),Object.keys(o).length===0?null:Z({type:"findSimilar",payload:st(o)},t)}function jr(e){const t=e.payload.suggested_searches??[],n=[];for(let r=0;r<t.length;r++){const o=t[r];if(!o)continue;const i=y(o.short_name,o.chosen_attribute,o.detailed_user_message)??`Search ${r+1}`,a={},s=y(o.detailed_user_message);s&&(a.text=s);const c=C(C(o.requestDetails)?.payload),u=c?.group_skus;o.group_skus&&Array.isArray(o.group_skus)?a.group_skus=o.group_skus:Array.isArray(u)&&(a.group_skus=u.filter(S=>typeof S=="string"));const d=y(o.sku,o.representative_product_sku,c?.sku);d&&(a.sku=d),a.is_suggested_text=1;const g={type:"inputText",payload:a},f=Z(o.requestDetails,i),p=f?.type==="findSimilar"&&typeof a.text=="string"?Z(g,i):f??Z(g,i);if(!p)continue;const h={shortName:i,action:p},m=y(o.detailed_user_message);m&&m!==i&&(h.detailedMessage=m);const v=ur(o);v&&v!==i&&v!==(m??"")&&(h.whyDifferent=v),typeof o.image=="string"&&(h.image=o.image),n.push(h)}return n.length===0?{type:"metadata",sessionId:"",model:"",meta:{aiSuggestedSearches:e.payload.suggested_searches??[]}}:{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"AISuggestedSearchCards",props:{entries:n}}}}}}function Dr(e){const t=e.payload,n=Z(t.requestDetails??t.request_details,y(t.review_count,t.reviewCount,t.text,t.title)??"Show product reviews");if(!n)return{type:"metadata",sessionId:"",model:"",meta:{groundingReview:t}};const r={action:n};return t.title&&(r.title=t.title),t.text&&(r.text=t.text),t.review_count?r.reviewCount=t.review_count:typeof t.reviewCount=="string"&&t.reviewCount.trim()&&(r.reviewCount=t.reviewCount),{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"GroundingReviewCard",props:r}}}}}function Ur(){return{type:"metadata",sessionId:"",model:"",meta:{analyzeAnimation:!0}}}function Br(e){return{type:"metadata",sessionId:"",model:"",meta:{voice:e.payload}}}function Mr(e){const t=e.payload.group_list??[],n=[];for(const o of t){const i=o.group_name??"",a=(o.product_list??[]).map(V);n.push({groupName:i,products:a})}const r=[];for(const o of e.payload.filter_tags??[]){const i=o.title??"";if(!i)continue;const a=Z(o.requestDetails,i),s={title:i};a&&(s.action=a),r.push(s)}return{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"CategoriesContainer",props:{groups:n,filterTags:r}}}},panelHint:"panel"}}function Fr(e){return{type:"metadata",sessionId:"",model:"",meta:{formType:e.type,formPayload:e.payload??{}}}}function Hr(e){const t={};return typeof e.payload?.summary=="string"&&(t.summary=e.payload.summary),Array.isArray(e.payload?.products_discussed)&&(t.products_discussed=e.payload.products_discussed),typeof e.payload?.user_sentiment=="string"&&(t.user_sentiment=e.payload.user_sentiment),{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"HandoffNotice",props:t}}}}}function Jr(e){return{type:"metadata",sessionId:"",model:"",meta:{launcherContent:e.payload??{}}}}function lt(e,t){const n={},r=[];for(let o=0;o<e.length;o++){const i=e[o];if(!i)continue;const a=`action-${o}`;r.push(a);const s={label:i.label,action:i.action};i.icon!==void 0&&(s.icon=i.icon),i.image!==void 0&&(s.image=i.image),i.description!==void 0&&(s.description=i.description),n[a]={type:"ActionButton",props:s}}return n.root={type:"ActionButtons",props:{buttons:e.map(o=>{const i={label:o.label,action:o.action};return o.image!==void 0&&(i.image=o.image),o.description!==void 0&&(i.description=o.description),o.icon!==void 0&&(i.icon=o.icon),i})},children:r},{type:"ui_spec",widget:t,spec:{root:"root",elements:n}}}function dt(e,t){const n={},r=[];for(let o=0;o<e.length;o++){const i=e[o];if(!i)continue;const a=V(i),s=`product-${o}`;r.push(s);const c={product:a,index:o};a.sku&&(c.action={title:a.name,type:"launchSingleProduct",payload:{sku:a.sku}}),n[s]={type:"ProductCard",props:c}}return n.root={type:"ProductGrid",props:{layout:"grid"},children:r},{type:"ui_spec",widget:t,spec:{root:"root",elements:n}}}function Qr(e,t){const n={},r=[];for(let o=0;o<e.length;o++){const i=e[o];if(!i)continue;const a=`product-${o}`;r.push(a);const s={product:i,index:o},c=i.sku;c&&(s.action={title:i.name??"",type:"launchSingleProduct",payload:{sku:c}}),n[a]={type:"ProductCard",props:s}}return n.root={type:"ProductGrid",props:{layout:"grid"},children:r},{type:"ui_spec",widget:t,spec:{root:"root",elements:n}}}function Wr(e,t){return{type:"ui_spec",widget:t,spec:{root:"root",elements:{root:{type:"ProductCard",props:{product:V(e),index:0}}}}}}function Vr(e){return{type:"ui_spec",widget:e,spec:{root:"root",elements:{root:{type:"ActionButtons",props:{buttons:[]},children:[]}}}}}function Gr(e){const t=y(e.sku),n=y(e.short_name),r={...C(e.product_item)??e},o=y(e.discount_reason,e.discountReason);return o&&!y(r.discount_reason,r.discountReason)&&(r.discount_reason=o),Ze(r,t,n)}function Ze(e,t,n){const r=y(e.sku,t),o=y(e.name,n);if(!r||!o)return null;const i={sku:r,name:o},a=y(e.brand);a&&(i.brand=a);const s=y(e.url);s&&(i.url=s);const c=Kr(e.images);if(c.length>0)i.images=c;else{const m=y(e.image,e.image_url,e.imageUrl);m&&(i.images=[m])}const u=te(e.price_discounted);u!==void 0&&(i.price_discounted=u);const d=te(e.price);d!==void 0&&(i.price=d);const g=te(e.rating);g!==void 0&&(i.rating=g);const f=te(e.review_count)??te(e.reviewCount);f!==void 0&&(i.review_count=f);const p=y(e.cart_code,e.cartCode);p&&(i.cart_code=p),typeof e.in_stock=="boolean"&&(i.in_stock=e.in_stock),typeof e.inStock=="boolean"&&(i.in_stock=e.inStock);const h=y(e.discount_reason,e.discountReason);return h&&(i.discount_reason=h),V(i)}function Z(e,t){const n=C(e);if(!n)return null;const r=n.type;if(typeof r!="string"||r.length===0)return null;const o={title:t||r,type:r};return n.payload!==void 0&&(o.payload=n.payload),o}function C(e){return!e||typeof e!="object"||Array.isArray(e)?null:e}function y(...e){for(const t of e)if(typeof t=="string"){const n=t.trim();if(n.length>0)return n}}function Kr(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"&&t.length>0):[]}function Yr(e){if(typeof e=="string"){const t=e.trim();return t?[t]:[]}return Array.isArray(e)?e.filter(t=>typeof t=="string").map(t=>t.trim()).filter(t=>t.length>0):[]}function te(e){if(typeof e=="number"&&Number.isFinite(e))return e;if(typeof e=="string"){let t;e.includes(".")&&e.includes(",")?t=e.replace(/\./g,"").replace(",","."):t=e.replace(",",".");const n=Number(t);if(Number.isFinite(n))return n}}function ne(e){return e!=null}var Xr=new Set(["sku","name","brand","images","price","price_discounted","price_discount_rate","price_currency","discount_reason","url","rating","review_count","cart_code","in_stock","description","description_html","features","specifications","short_name","category_ids","category_names","variants","facet_hits","promotions"]);function V(e){const t=e.price_discounted!=null&&e.price_discounted>0,n=t?e.price_discounted:e.price,r=t&&e.price!=null?e.price:void 0;let o;r!=null&&n!=null&&r>0?o=Math.round((r-n)/r*100):e.price_discount_rate!=null&&e.price_discount_rate>0&&(o=e.price_discount_rate);const i=y(e.brand),a=y(e.name)??e.sku,s=i&&!a.toLowerCase().startsWith(i.toLowerCase())?`${i} ${a}`:a,c={sku:e.sku,name:s,url:y(e.url)??""},u=e.images?.[0];u&&(c.imageUrl=u),e.images&&e.images.length>1&&(c.images=e.images),n!=null&&n>0&&(c.price=String(n)),r!=null&&r>0&&(c.originalPrice=String(r)),o!==void 0&&(c.discountPercent=o),i!==void 0&&(c.brand=i),e.rating!==void 0&&(c.rating=e.rating),e.review_count!==void 0&&(c.reviewCount=e.review_count),e.cart_code!==void 0&&(c.cartCode=e.cart_code),e.in_stock!==void 0&&(c.inStock=e.in_stock),e.variants&&e.variants.length>0&&(c.variants=e.variants),e.discount_reason!==void 0&&(c.discountReason=e.discount_reason),e.promotions&&e.promotions.length>0&&(c.promotions=e.promotions),e.description!==void 0&&(c.description=e.description),e.description_html!==void 0&&(c.descriptionHtml=e.description_html),e.features&&e.features.length>0&&(c.features=e.features),e.specifications!==void 0&&(c.specifications=e.specifications),e.facet_hits&&(c.facetHits=e.facet_hits),e.category_names&&e.category_names.length>0&&(c.categoryNames=e.category_names),e.short_name!==void 0&&(c.shortName=e.short_name);const d=e,g={};let f=!1;for(const p of Object.keys(d))Xr.has(p)||(g[p]=d[p],f=!0);return f&&(c.extras=g),c}function eo(e){const t=e.payload.type,{type:n,...r}=e.payload;return{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:t,props:r}}}}}async function to(e,t,n){const r=ar("launcher_action",t),o={uiSpecs:[],actions:[]},i={method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)};n!==void 0&&(i.signal=n);const a=await fetch(r,i);if(!a.ok)throw new Error(`HTTP ${a.status}: ${a.statusText}`);const s={onEvent:c=>{const u=pr(c);if(u&&(u.type==="ui_spec"&&o.uiSpecs.push(u.spec),u.type==="ui_spec"&&u.spec.elements)){for(const d of Object.values(u.spec.elements))if(d.type==="ActionButton"&&d.props?.action){const g=d.props.action;o.actions.push(g)}}}};return n!==void 0&&(s.signal=n),await rr(a,s),o}function pt(e){const t=document.createElement("div");t.className="gengage-qna-buttons gds-toolbar",t.dataset.gengagePart="qna-button-row",t.setAttribute("role","group"),t.setAttribute("aria-label",e.quickQuestionsAriaLabel??"Quick questions"),e.orientation==="vertical"&&(t.style.flexDirection="column");for(const n of e.actions){const r=document.createElement("button");r.className="gengage-qna-button gds-chip",r.dataset.gengagePart="qna-quick-question",r.textContent=n.title,r.type="button",r.addEventListener("click",()=>{const o={title:n.title,type:n.type};n.payload!==void 0&&(o.payload=n.payload),e.onAction(o)}),t.appendChild(r)}if(e.ctaText||e.onOpenChat){const n=document.createElement("button");n.className="gengage-qna-cta gds-btn gds-btn-secondary",n.dataset.gengagePart="qna-cta",n.textContent=e.ctaText??e.defaultCtaText??"Ask something else",n.type="button",n.addEventListener("click",()=>{e.onOpenChat?.()}),t.appendChild(n)}return t}function no(e){const t=document.createElement("div");t.className="gengage-qna-input-wrapper",t.dataset.gengagePart="qna-input-wrapper";const n=document.createElement("div");n.className="gengage-qna-input-combo",n.dataset.gengagePart="qna-input-combo";const r=document.createElement("input");r.type="text",r.className="gengage-qna-input",r.dataset.gengagePart="qna-input",r.setAttribute("aria-label",e.askQuestionAriaLabel??"Ask a question");const o=Array.isArray(e.placeholders)?e.placeholders:e.placeholders?[e.placeholders]:[e.defaultInputPlaceholder??"Ask a question..."];let i=0,a=o[0]??"";r.placeholder=a;let s=null,c=null,u=!1;const d=()=>{s&&clearInterval(s),s=null,c&&clearTimeout(c),c=null,r.classList.remove("gengage-qna-input--fade")},g=()=>o.length>1&&!u&&r.value.trim().length===0,f=()=>{d(),g()&&(s=setInterval(()=>{g()&&(r.classList.add("gengage-qna-input--fade"),c=setTimeout(()=>{i=(i+1)%o.length,a=o[i]??"",r.placeholder=a,r.classList.remove("gengage-qna-input--fade")},180))},3e3))},p=document.createElement("div");p.className="gengage-qna-input-actions",p.dataset.gengagePart="qna-input-actions";const h=document.createElement("button");h.className="gengage-qna-icon-btn gengage-qna-clear gengage-qna-icon-btn--hidden",h.type="button",h.dataset.gengagePart="qna-clear",h.setAttribute("aria-label","Clear question"),h.innerHTML='<svg viewBox="0 0 24 24" aria-hidden="true" focusable="false"><path d="M18 6L6 18" /><path d="M6 6L18 18" /></svg>';const m=document.createElement("button");m.className="gengage-qna-icon-btn gengage-qna-send gengage-qna-icon-btn--hidden",m.type="button",m.dataset.gengagePart="qna-send",m.setAttribute("aria-label",e.sendQuestionAriaLabel??"Send question"),m.disabled=!0,m.innerHTML=`<svg viewBox="0 0 24 24" aria-hidden="true" focusable="false"><path d="M22 2L11 13" /><path d="M22 2L15 22L11 13L2 9L22 2Z" /></svg><span class="gengage-qna-sr-only">${e.ctaLabel??e.sendButtonText??"Ask"}</span>`;const v=()=>{const w=r.value.trim().length>0;h.classList.toggle("gengage-qna-icon-btn--hidden",!w),m.classList.toggle("gengage-qna-icon-btn--hidden",!w),m.classList.toggle("gengage-qna-send--active",w),m.disabled=!w},S=()=>{const w=r.value.trim();w&&(e.onSubmit({title:w,type:"user_message",payload:w}),r.value="",v(),f())};return h.addEventListener("click",()=>{r.value="",v(),r.focus({preventScroll:!0})}),m.addEventListener("click",S),r.addEventListener("focus",()=>{u=!0,d(),r.placeholder=""}),r.addEventListener("blur",()=>{u=!1,r.value.trim().length===0&&(r.placeholder=a),f()}),r.addEventListener("input",()=>{if(v(),r.value.trim().length>0){d();return}r.placeholder=u?"":a,f()}),r.addEventListener("keydown",w=>{w.key==="Enter"&&(w.preventDefault(),S()),w.key==="Escape"&&r.value.length>0&&(r.value="",v(),f())}),p.appendChild(h),p.appendChild(m),n.appendChild(r),n.appendChild(p),t.appendChild(n),v(),f(),t._cleanup=()=>{d()},t}function ue(e,t){if(!e||typeof e!="object")return null;const n=e,r=n.type;if(typeof r!="string"||r.length===0)return null;const o=n.title,i=n.payload,a=typeof o=="string"&&o.length>0?o:t;if(!a)return null;const s={title:a,type:r};return i!==void 0&&(s.payload=i),s}function ft(e){const t={title:e.title,type:e.type};return e.payload!==void 0&&(t.payload=e.payload),t}function gt(e,t){const n=[],r=e.props?.actions;if(Array.isArray(r))for(const a of r){const s=ue(a);s&&n.push(s)}const o=e.props?.buttons;if(Array.isArray(o))for(const a of o){if(!a||typeof a!="object")continue;const s=a,c=typeof s.label=="string"?s.label:void 0,u=ue(s.action,c);u&&n.push(u)}if(e.children)for(const a of e.children){const s=t.elements[a];if(!s||s.type!=="ActionButton")continue;const c=typeof s.props?.label=="string"?s.props.label:void 0,u=ue(s.props?.action,c);u&&n.push(u)}const i=new Set;return n.filter(a=>i.has(a.title)?!1:(i.add(a.title),!0))}var ht={ButtonRow:({element:e,spec:t,context:n})=>{const r=gt(e,t).map(ft),o=e.props?.orientation,i={actions:r,onAction:n.onAction,defaultCtaText:n.i18n.defaultCtaText,quickQuestionsAriaLabel:n.i18n.quickQuestionsAriaLabel};return n.onOpenChat!==void 0&&(i.onOpenChat=n.onOpenChat),n.ctaText!==void 0&&(i.ctaText=n.ctaText),(o==="horizontal"||o==="vertical")&&(i.orientation=o),pt(i)},ActionButtons:({element:e,spec:t,context:n})=>{const r={actions:gt(e,t).map(ft),onAction:n.onAction,defaultCtaText:n.i18n.defaultCtaText,quickQuestionsAriaLabel:n.i18n.quickQuestionsAriaLabel};return n.onOpenChat!==void 0&&(r.onOpenChat=n.onOpenChat),n.ctaText!==void 0&&(r.ctaText=n.ctaText),pt(r)},ActionButton:({element:e,context:t})=>{const n=document.createElement("button");n.className="gengage-qna-button gds-chip",n.type="button",n.dataset.gengagePart="qna-action-button";const r=e.props?.label;typeof r=="string"?n.textContent=r:n.textContent=t.i18n.defaultCtaText;const o=ue(e.props?.action,typeof r=="string"?r:void 0);return o&&n.addEventListener("click",()=>t.onAction(o)),n},TextInput:({element:e,context:t})=>{const n=e.props?.placeholder,r=typeof n=="string"||Array.isArray(n)?n:t.inputPlaceholder,o=typeof e.props?.ctaLabel=="string"?e.props.ctaLabel:void 0,i={onSubmit:t.onAction,askQuestionAriaLabel:t.i18n.askQuestionAriaLabel,defaultInputPlaceholder:t.i18n.defaultInputPlaceholder,sendButtonText:t.i18n.sendButton,sendQuestionAriaLabel:t.i18n.sendQuestionAriaLabel};return r!==void 0&&(i.placeholders=r),o!==void 0&&(i.ctaLabel=o),no(i)},QuestionHeading:({element:e,context:t})=>{const n=document.createElement("h3");n.className="gengage-qna-heading",n.dataset.gengagePart="qna-heading";const r=e.props?.text,o=t.headingTitleOverride;return n.textContent=typeof o=="string"&&o.trim().length>0?o:typeof r=="string"?r:"",n},ProductCard:()=>null},xe=({element:e,renderElement:t})=>{if(!e.children||e.children.length===0)return null;const n=document.createElement("div");for(const r of e.children){const o=t(r);o&&n.appendChild(o)}return n};function mt(){return{...ht}}function _t(e,t,n=ht,r=xe){return vn({spec:e,context:t,registry:n,containerClassName:"gengage-qna-uispec",unknownRenderer:r})}function ro(e){if(!e)return;const t=e.extra;if(t&&typeof t=="object"&&!Array.isArray(t)){const r=t.visible_skus??t.visibleSkus;if(Array.isArray(r)){const o=r.filter(i=>typeof i=="string"&&i.trim().length>0).map(i=>i.trim()).slice(0,200);if(o.length>0)return o}}const n=typeof e.sku=="string"&&e.sku.trim()?e.sku.trim():void 0;return n?[n]:void 0}function yt(e,t){if(!e)return null;const n=e.action;if(!n||typeof n!="object")return null;const r=n,o=r.type;if(typeof o!="string"||o.length===0)return null;const i=r.title,a=typeof i=="string"&&i.length>0?i:typeof t=="string"&&t.length>0?t:"";if(!a)return null;const s=r.payload,c={title:a,type:o};return s!==void 0&&(c.payload=s),c}function oo(e,t){const n=e.elements[e.root];if(!n)return!1;const r=o=>{if(o.type!=="ActionButton")return!1;const i=o.props;if(!i||typeof i!="object")return!1;const a=typeof i.label=="string"?i.label:void 0;return a===t?!0:yt(i,a)?.title===t};if(n.type==="ActionButton")return r(n);if(n.children)for(const o of n.children){const i=e.elements[o];if(i&&r(i))return!0}if(n.type==="ActionButtons"&&Array.isArray(n.props?.buttons)){for(const o of n.props.buttons)if(o?.label===t||o?.action?.title===t)return!0}return!1}var vt=0;function bt(){return vt+=1,`gengage-merge-${vt}`}function io(e,t){const n=e.elements[e.root];if(!n||n.type!=="ButtonRow")return;const r=bt();e.elements[r]={type:"ActionButton",props:{label:t.title,action:{title:t.title,type:t.type,...t.payload!==void 0?{payload:t.payload}:{}}}},n.children=n.children?[r,...n.children]:[r]}function ao(e,t){const n=e.elements[e.root];if(!n||n.type!=="ActionButtons")return;const r=bt();e.elements[r]={type:"ActionButton",props:{label:t.title,action:{title:t.title,type:t.type,...t.payload!==void 0?{payload:t.payload}:{}}}},n.children=n.children?[r,...n.children]:[r];const o=n.props?.buttons??[],i={label:t.title,action:{title:t.title,type:t.type,...t.payload!==void 0?{payload:t.payload}:{}}};n.props={...n.props,buttons:[i,...o]}}function so(e){const t={},n=[];for(let r=0;r<e.length;r++){const o=e[r],i=`action-${r}`;n.push(i),t[i]={type:"ActionButton",props:{label:o.title,action:{title:o.title,type:o.type,...o.payload!==void 0?{payload:o.payload}:{}}}}}return t.root={type:"ButtonRow",children:n},{root:"root",elements:t}}function co(e){return e.find(t=>{const n=t.elements[t.root];return n?.type==="ActionButtons"||n?.type==="ButtonRow"})}function wt(e,t){const n=e.productContextQuickPillLabel,r={text:n};return t&&t.length>0&&(r.sku_list=t),{title:n,type:"user_message",payload:r}}function uo(e,t,n){const r=n?.skuList,o=[],i=[];for(const c of e){const u=c.elements[c.root];if(u?.type==="ActionButton"){const d=u.props;if(yt(d,typeof d?.label=="string"?d.label:void 0)?.type==="findSimilar"){o.push(wt(t,r));continue}}i.push(c)}if(o.length===0)return e;const a=wt(t,r),s=co(i);if(!s)return[...i,so([a])];if(!oo(s,a.title)){const c=s.elements[s.root];c?.type==="ActionButtons"?ao(s,a):c?.type==="ButtonRow"&&io(s,a)}return i}var kt={quickQuestionsAriaLabel:"Hızlı sorular",askQuestionAriaLabel:"Soru sorun",defaultInputPlaceholder:"Bir soru sorun...",sendButton:"Sor",sendQuestionAriaLabel:"Soruyu gönder",defaultCtaText:"Başka bir şey sor",redirectingToChat:"Sohbete yönlendiriliyor...",productContextQuickPillLabel:"Bu ürün hakkında ne bilmeliyim?"},lo={quickQuestionsAriaLabel:"Quick questions",askQuestionAriaLabel:"Ask a question",defaultInputPlaceholder:"Ask a question...",sendButton:"Ask",sendQuestionAriaLabel:"Send question",defaultCtaText:"Ask something else",redirectingToChat:"Redirecting to chat...",productContextQuickPillLabel:"What should I know about this product?"};function po(e){return e?e.toLowerCase().split("-")[0]??"tr":"tr"}function fo(e){return po(e)==="en"?lo:kt}var zt=class extends Qn{constructor(...e){super(...e),this._abortController=null,this._debounceTimer=null,this._contentEl=null,this._i18n=kt,this._actionHandler=this._handleAction.bind(this),this._openChatHandler=this._handleOpenChat.bind(this)}async onInit(e){this._i18n=this._resolveI18n(e),this._contentEl=document.createElement("div"),this._contentEl.className="gengage-qna-container",this._contentEl.dataset.gengagePart="qna-container",this._contentEl.lang=Xe(e.locale);const t=this._createChrome(e);if(t){const r=document.createElement("div");r.className="gengage-qna-chrome-widget",r.dataset.gengagePart="qna-chrome-widget",r.appendChild(this._contentEl),t.appendChild(r),this.root.appendChild(t)}else this.root.appendChild(this._contentEl);const n=e.pageContext?.sku;n&&(this._lastSku=n,await this._fetchAndRender(n)),Sn("qna")}onUpdate(e){const t=e.sku;!t||t===this._lastSku||(this._debounceTimer&&clearTimeout(this._debounceTimer),this._debounceTimer=setTimeout(()=>{this._debounceTimer=null,this._lastSku=t,this._fetchAndRender(t)},50))}onShow(){this._contentEl&&(this._contentEl.style.opacity="0",this._contentEl.style.transition="opacity 0.2s ease-in",requestAnimationFrame(()=>{this._contentEl&&(this._contentEl.style.opacity="1")}))}onHide(){}onDestroy(){this._abort(),this._debounceTimer&&(clearTimeout(this._debounceTimer),this._debounceTimer=null),this._contentEl&&(this._cleanupTextInputTimers(),this._contentEl.remove(),this._contentEl=null)}_abort(){this._abortController?.abort(),this._abortController=null}_resolvedQnaHeaderTitle(){const e=this.config.headerTitle??this.config.headingTitle;if(typeof e!="string")return;const t=e.trim();return t.length>0?t:void 0}_cleanupTextInputTimers(){if(!this._contentEl)return;const e=this._contentEl.querySelectorAll(".gengage-qna-input-wrapper");for(const t of e)t._cleanup?.()}async _fetchAndRender(e){if(this._abort(),this._abortController=new AbortController,!this._contentEl)return;this._cleanupTextInputTimers(),this._contentEl.innerHTML="";const t=this._createLoadingIndicator();this._contentEl.appendChild(t);const n={middlewareUrl:this.config.middlewareUrl},r=tr({source:"qna",locale:this.config.locale});try{const o=this.config.session?.sessionId??"",i={account_id:this.config.accountId,session_id:o,correlation_id:o,sku:e,locale:Xe(this.config.locale)};this.config.session?.userId!==void 0&&(i.user_id=this.config.session.userId),this.config.session?.viewId!==void 0&&(i.view_id=this.config.session.viewId);const a=this.config.pageContext?.pageType;a!==void 0&&(i.page_type=a);const s=await to(i,n,this._abortController.signal);if(!this._contentEl)return;this._contentEl.innerHTML="";const c=document.createElement("div");c.className="gengage-qna-panel gds-panel",c.dataset.gengagePart="qna-panel",this._contentEl.appendChild(c);const u=this._specIncludesType(s.uiSpecs,"QuestionHeading"),d=this._resolvedQnaHeaderTitle()??(this.config.showStaticQuestion&&this.config.staticQuestionText?this.config.staticQuestionText:void 0);if(!u&&d){const w=document.createElement("h3");w.className="gengage-qna-heading",w.textContent=d,c.appendChild(w)}const g=this.config.inputPlaceholder;let f;if(g!==!0)f=g??this._i18n.defaultInputPlaceholder;else if(s.actions.length>0){const w=s.actions.filter(I=>I.type==="user_message"||I.title.includes("?")).map(I=>I.title);f=w.length>0?w:this._i18n.defaultInputPlaceholder}else f=this._i18n.defaultInputPlaceholder;const p={onAction:this._actionHandler,i18n:this._i18n},h=this._resolvedQnaHeaderTitle();h!==void 0&&(p.headingTitleOverride=h),this.config.hideButtonRowCta||(p.onOpenChat=this._openChatHandler,this.config.ctaText!==void 0&&(p.ctaText=this.config.ctaText)),f!==void 0&&(p.inputPlaceholder=f);const m=this._buildFallbackActionsSpec(s.actions),v=ro(this.config.pageContext),S=(s.uiSpecs.length>0?uo(s.uiSpecs,this._i18n,{skuList:v}):[m]).filter(w=>Object.keys(w.elements).length>0);for(const w of S){const I=this._renderUISpec(w,p);c.appendChild(I)}S.length>0&&En("qna"),this._specIncludesType(S,"TextInput")||this._insertStandaloneInputBeforePills(c,p,f)}catch(o){if(o instanceof DOMException&&o.name==="AbortError")return;if(Se("gengage:global:error",{source:"qna",code:"FETCH_ERROR",message:Ln(this.config.locale,o)}),this._contentEl){this._cleanupTextInputTimers(),this._contentEl.innerHTML="";const i=document.createElement("div");i.className="gengage-qna-panel",this._contentEl.appendChild(i);const a=this.config.inputPlaceholder===!0?this._i18n.defaultInputPlaceholder:this.config.inputPlaceholder??this._i18n.defaultInputPlaceholder,s={onAction:this._actionHandler,i18n:this._i18n,onOpenChat:this._openChatHandler},c=this._resolvedQnaHeaderTitle();c!==void 0&&(s.headingTitleOverride=c),this.config.ctaText!==void 0&&(s.ctaText=this.config.ctaText),this._appendStandaloneInput(s,a,i)}}finally{r()}}_createLoadingIndicator(){const e=document.createElement("div");e.className="gengage-qna-loading";for(let t=0;t<3;t++){const n=document.createElement("div");n.className="gengage-qna-loading-dot",e.appendChild(n)}return e}_resolveI18n(e){return{...fo(e.locale),...e.i18n}}_createChrome(e){const t=e.chrome;if(!t)return null;const n=typeof t.title=="string"?t.title.trim():"",r=typeof t.subtitle=="string"?t.subtitle.trim():"",o=typeof t.startButtonLabel=="string"?t.startButtonLabel.trim():"",i=typeof t.imageUrl=="string"?t.imageUrl.trim():"",a=typeof t.imagePadding=="string"?t.imagePadding.trim():"",s=document.createElement("section");s.className="gengage-qna-chrome",s.dataset.gengagePart="qna-chrome",t.layout==="side-image"&&(s.classList.add("gengage-qna-chrome--side-image"),s.dataset.gengageChromeLayout="side-image"),a&&s.style.setProperty("--gengage-qna-chrome-image-padding",a);const c=document.createElement("div");if(c.className="gengage-qna-chrome-copy",c.dataset.gengagePart="qna-chrome-copy",n){const u=document.createElement("h2");u.className="gengage-qna-chrome-title",u.dataset.gengagePart="qna-chrome-title",u.textContent=n,c.appendChild(u)}if(r){const u=document.createElement("p");u.className="gengage-qna-chrome-subtitle",u.dataset.gengagePart="qna-chrome-subtitle",u.textContent=r,c.appendChild(u)}if(c.children.length>0&&s.appendChild(c),i&&kn(i)){const u=document.createElement("img");u.className="gengage-qna-chrome-image",u.dataset.gengagePart="qna-chrome-image",u.src=i,u.alt=typeof t.imageAlt=="string"?t.imageAlt:"",u.loading="lazy",u.addEventListener("error",()=>{u.style.display="none"},{once:!0}),s.appendChild(u)}if(o){const u=document.createElement("button");u.className="gengage-qna-chrome-start",u.dataset.gengagePart="qna-chrome-start",u.type="button",u.textContent=o,u.addEventListener("click",()=>this._handleOpenChat()),s.appendChild(u)}return s.children.length===0?null:s}_resolveUISpecRegistry(){return bn(mt(),this.config.renderer?.registry)}_renderUISpec(e,t){const n=this._resolveUISpecRegistry(),r=this.config.renderer?.unknownRenderer??xe,o=(a,s)=>_t(a,s,n,r),i=this.config.renderer?.renderUISpec;return i?i(e,t,{registry:n,unknownRenderer:r,defaultRender:o}):o(e,t)}_specIncludesType(e,t){for(const n of e)for(const r of Object.values(n.elements))if(r.type===t)return!0;return!1}_buildFallbackActionsSpec(e){if(e.length===0)return{root:"root",elements:{}};const t={},n=[];for(let r=0;r<e.length;r++){const o=e[r],i=`action-${r}`;n.push(i),t[i]={type:"ActionButton",props:{label:o.title,action:{title:o.title,type:o.type,payload:o.payload}}}}return t.root={type:"ButtonRow",children:n},{root:"root",elements:t}}_insertStandaloneInputBeforePills(e,t,n){const r={root:"root",elements:{root:{type:"TextInput",props:{placeholder:n}}}},o=this._renderUISpec(r,t),i=o.querySelector(".gengage-qna-input-wrapper");if(!i)return;const a=e.querySelector(".gengage-qna-uispec"),s=e.querySelector(".gengage-qna-uispec > .gengage-qna-buttons"),c=this.config.inputAfterPills===!0;if(s)c?s.insertAdjacentElement("afterend",i):s.insertAdjacentElement("beforebegin",i);else if(a){const u=a.querySelector(":scope > .gengage-qna-heading");!c&&u?u.insertAdjacentElement("afterend",i):a.appendChild(i)}else{e.appendChild(o);return}o.remove()}_appendStandaloneInput(e,t,n){if(!this._contentEl)return;const r={root:"root",elements:{root:{type:"TextInput",props:{placeholder:t}}}},o=this._renderUISpec(r,e);(n??this._contentEl).appendChild(o)}_handleAction(e){this._showTransitionIndicator(),An(e.title,e.type),this.config.onActionSelected?.(e),setTimeout(()=>Se("gengage:qna:action",e),350)}_handleOpenChat(){this._showTransitionIndicator(),this.config.onOpenChat?.(),setTimeout(()=>Se("gengage:qna:open-chat",{}),350)}_showTransitionIndicator(){if(!this._contentEl)return;this._contentEl.querySelector(".gengage-qna-transition-indicator")?.remove(),this._contentEl.classList.add("gengage-qna--transitioning");const e=this._i18n.redirectingToChat??"Redirecting to chat...",t=document.createElement("div");t.className="gengage-qna-transition-indicator",t.textContent=e,(this._contentEl.querySelector(".gengage-qna-panel")??this._contentEl).appendChild(t),setTimeout(()=>{this._contentEl?.classList.remove("gengage-qna--transitioning"),t.remove()},600)}};function go(){return new zt}var St;function l(e,t,n){function r(s,c){if(s._zod||Object.defineProperty(s,"_zod",{value:{def:c,constr:a,traits:new Set},enumerable:!1}),s._zod.traits.has(e))return;s._zod.traits.add(e),t(s,c);const u=a.prototype,d=Object.keys(u);for(let g=0;g<d.length;g++){const f=d[g];f in s||(s[f]=u[f].bind(s))}}const o=n?.Parent??Object;class i extends o{}Object.defineProperty(i,"name",{value:e});function a(s){var c;const u=n?.Parent?new i:this;r(u,s),(c=u._zod).deferred??(c.deferred=[]);for(const d of u._zod.deferred)d();return u}return Object.defineProperty(a,"init",{value:r}),Object.defineProperty(a,Symbol.hasInstance,{value:s=>n?.Parent&&s instanceof n.Parent?!0:s?._zod?.traits?.has(e)}),Object.defineProperty(a,"name",{value:e}),a}var G=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Et=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}};(St=globalThis).__zod_globalConfig??(St.__zod_globalConfig={});var le=globalThis.__zod_globalConfig;function F(e){return e&&Object.assign(le,e),le}function At(e){const t=Object.values(e).filter(n=>typeof n=="number");return Object.entries(e).filter(([n,r])=>t.indexOf(+n)===-1).map(([n,r])=>r)}function Re(e,t){return typeof t=="bigint"?t.toString():t}function Le(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}throw new Error("cached value already set")}}}function Ne(e){return e==null}function qe(e){const t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}var Tt=Symbol("evaluating");function b(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==Tt)return r===void 0&&(r=Tt,r=n()),r},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function H(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function j(...e){const t={};for(const n of e)Object.assign(t,Object.getOwnPropertyDescriptors(n));return Object.defineProperties({},t)}function $t(e){return JSON.stringify(e)}function ho(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var It="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function de(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var mo=Le(()=>{if(le.jitless||typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch{return!1}});function re(e){if(de(e)===!1)return!1;const t=e.constructor;if(t===void 0||typeof t!="function")return!0;const n=t.prototype;return!(de(n)===!1||Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)}function Pt(e){return re(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}var _o=new Set(["string","number","symbol"]);function pe(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function D(e,t,n){const r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function _(e){const t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function yo(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var Fc={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function vo(e,t){const n=e._zod.def,r=n.checks;if(r&&r.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");return D(e,j(e._zod.def,{get shape(){const o={};for(const i in t){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&(o[i]=n.shape[i])}return H(this,"shape",o),o},checks:[]}))}function bo(e,t){const n=e._zod.def,r=n.checks;if(r&&r.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");return D(e,j(e._zod.def,{get shape(){const o={...e._zod.def.shape};for(const i in t){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&delete o[i]}return H(this,"shape",o),o},checks:[]}))}function wo(e,t){if(!re(t))throw new Error("Invalid input to extend: expected a plain object");const n=e._zod.def.checks;if(n&&n.length>0){const r=e._zod.def.shape;for(const o in t)if(Object.getOwnPropertyDescriptor(r,o)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return D(e,j(e._zod.def,{get shape(){const r={...e._zod.def.shape,...t};return H(this,"shape",r),r}}))}function ko(e,t){if(!re(t))throw new Error("Invalid input to safeExtend: expected a plain object");return D(e,j(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t};return H(this,"shape",n),n}}))}function zo(e,t){if(e._zod.def.checks?.length)throw new Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");return D(e,j(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t._zod.def.shape};return H(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]}))}function So(e,t,n){const r=t._zod.def.checks;if(r&&r.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");return D(t,j(t._zod.def,{get shape(){const o=t._zod.def.shape,i={...o};if(n)for(const a in n){if(!(a in o))throw new Error(`Unrecognized key: "${a}"`);n[a]&&(i[a]=e?new e({type:"optional",innerType:o[a]}):o[a])}else for(const a in o)i[a]=e?new e({type:"optional",innerType:o[a]}):o[a];return H(this,"shape",i),i},checks:[]}))}function Eo(e,t,n){return D(t,j(t._zod.def,{get shape(){const r=t._zod.def.shape,o={...r};if(n)for(const i in n){if(!(i in o))throw new Error(`Unrecognized key: "${i}"`);n[i]&&(o[i]=new e({type:"nonoptional",innerType:r[i]}))}else for(const i in r)o[i]=new e({type:"nonoptional",innerType:r[i]});return H(this,"shape",o),o}}))}function K(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Ao(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function Ct(e,t){return t.map(n=>{var r;return(r=n).path??(r.path=[]),n.path.unshift(e),n})}function fe(e){return typeof e=="string"?e:e?.message}function J(e,t,n){const r=e.message?e.message:fe(e.inst?._zod.def?.error?.(e))??fe(t?.error?.(e))??fe(n.customError?.(e))??fe(n.localeError?.(e))??"Invalid input",{inst:o,continue:i,input:a,...s}=e;return s.path??(s.path=[]),s.message=r,t?.reportInput&&(s.input=a),s}function je(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function oe(...e){const[t,n,r]=e;return typeof t=="string"?{message:t,code:"custom",input:n,inst:r}:{...t}}var Ot=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,Re,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Zt=l("$ZodError",Ot),xt=l("$ZodError",Ot,{Parent:Error});function To(e,t=n=>n.message){const n={},r=[];for(const o of e.issues)o.path.length>0?(n[o.path[0]]=n[o.path[0]]||[],n[o.path[0]].push(t(o))):r.push(t(o));return{formErrors:r,fieldErrors:n}}function $o(e,t=n=>n.message){const n={_errors:[]},r=(o,i=[])=>{for(const a of o.issues)if(a.code==="invalid_union"&&a.errors.length)a.errors.map(s=>r({issues:s},[...i,...a.path]));else if(a.code==="invalid_key")r({issues:a.issues},[...i,...a.path]);else if(a.code==="invalid_element")r({issues:a.issues},[...i,...a.path]);else{const s=[...i,...a.path];if(s.length===0)n._errors.push(t(a));else{let c=n,u=0;for(;u<s.length;){const d=s[u];u!==s.length-1?c[d]=c[d]||{_errors:[]}:(c[d]=c[d]||{_errors:[]},c[d]._errors.push(t(a))),c=c[d],u++}}}};return r(e),n}var De=e=>(t,n,r,o)=>{const i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new G;if(a.issues.length){const s=new(o?.Err??e)(a.issues.map(c=>J(c,i,F())));throw It(s,o?.callee),s}return a.value},Ue=e=>async(t,n,r,o)=>{const i=r?{...r,async:!0}:{async:!0};let a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise&&(a=await a),a.issues.length){const s=new(o?.Err??e)(a.issues.map(c=>J(c,i,F())));throw It(s,o?.callee),s}return a.value},ge=e=>(t,n,r)=>{const o=r?{...r,async:!1}:{async:!1},i=t._zod.run({value:n,issues:[]},o);if(i instanceof Promise)throw new G;return i.issues.length?{success:!1,error:new(e??Zt)(i.issues.map(a=>J(a,o,F())))}:{success:!0,data:i.value}},Io=ge(xt),he=e=>async(t,n,r)=>{const o=r?{...r,async:!0}:{async:!0};let i=t._zod.run({value:n,issues:[]},o);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new e(i.issues.map(a=>J(a,o,F())))}:{success:!0,data:i.value}},Po=he(xt),Co=e=>(t,n,r)=>{const o=r?{...r,direction:"backward"}:{direction:"backward"};return De(e)(t,n,o)},Oo=e=>(t,n,r)=>De(e)(t,n,r),Zo=e=>async(t,n,r)=>{const o=r?{...r,direction:"backward"}:{direction:"backward"};return Ue(e)(t,n,o)},xo=e=>async(t,n,r)=>Ue(e)(t,n,r),Ro=e=>(t,n,r)=>{const o=r?{...r,direction:"backward"}:{direction:"backward"};return ge(e)(t,n,o)},Lo=e=>(t,n,r)=>ge(e)(t,n,r),No=e=>async(t,n,r)=>{const o=r?{...r,direction:"backward"}:{direction:"backward"};return he(e)(t,n,o)},qo=e=>async(t,n,r)=>he(e)(t,n,r),jo=/^[cC][0-9a-z]{6,}$/,Do=/^[0-9a-z]+$/,Uo=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Bo=/^[0-9a-vA-V]{20}$/,Mo=/^[A-Za-z0-9]{27}$/,Fo=/^[a-zA-Z0-9_-]{21}$/,Ho=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Jo=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Rt=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,Qo=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Wo="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Vo(){return new RegExp(Wo,"u")}var Go=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Ko=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,Yo=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Xo=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,ei=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Lt=/^[A-Za-z0-9_-]*$/,ti=/^https?$/,ni=/^\+[1-9]\d{6,14}$/,Nt="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",ri=new RegExp(`^${Nt}$`);function qt(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function oi(e){return new RegExp(`^${qt(e)}$`)}function ii(e){const t=qt({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const r=`${t}(?:${n.join("|")})`;return new RegExp(`^${Nt}T(?:${r})$`)}var ai=e=>{const t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},si=/^(?:true|false)$/i,ci=/^[^A-Z]*$/,ui=/^[^a-z]*$/,L=l("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),li=l("$ZodCheckMaxLength",(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=r=>{const o=r.value;return!Ne(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<o&&(r._zod.bag.maximum=t.maximum)}),e._zod.check=r=>{const o=r.value;if(o.length<=t.maximum)return;const i=je(o);r.issues.push({origin:i,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),di=l("$ZodCheckMinLength",(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=r=>{const o=r.value;return!Ne(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>o&&(r._zod.bag.minimum=t.minimum)}),e._zod.check=r=>{const o=r.value;if(o.length>=t.minimum)return;const i=je(o);r.issues.push({origin:i,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),pi=l("$ZodCheckLengthEquals",(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=r=>{const o=r.value;return!Ne(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=r=>{const o=r.value,i=o.length;if(i===t.length)return;const a=je(o),s=i>t.length;r.issues.push({origin:a,...s?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),me=l("$ZodCheckStringFormat",(e,t)=>{var n,r;L.init(e,t),e._zod.onattach.push(o=>{const i=o._zod.bag;i.format=t.format,t.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=o=>{t.pattern.lastIndex=0,!t.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),fi=l("$ZodCheckRegex",(e,t)=>{me.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),gi=l("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=ci),me.init(e,t)}),hi=l("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=ui),me.init(e,t)}),mi=l("$ZodCheckIncludes",(e,t)=>{L.init(e,t);const n=pe(t.includes),r=new RegExp(typeof t.position=="number"?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(o=>{const i=o._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),e._zod.check=o=>{o.value.includes(t.includes,t.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),_i=l("$ZodCheckStartsWith",(e,t)=>{L.init(e,t);const n=new RegExp(`^${pe(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push(r=>{const o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=r=>{r.value.startsWith(t.prefix)||r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:r.value,inst:e,continue:!t.abort})}}),yi=l("$ZodCheckEndsWith",(e,t)=>{L.init(e,t);const n=new RegExp(`.*${pe(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push(r=>{const o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=r=>{r.value.endsWith(t.suffix)||r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:r.value,inst:e,continue:!t.abort})}}),vi=l("$ZodCheckOverwrite",(e,t)=>{L.init(e,t),e._zod.check=n=>{n.value=t.tx(n.value)}}),bi=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}const t=e.split(`
47
+ `,document.head.appendChild(e)}var X=null;function Fn(){if(X!==null)return X;try{X=localStorage.getItem("gengage:debug")==="1"}catch{X=!1}return X}function Te(e,t,n){if(!Fn())return;const r=[`[gengage:${e}]`,t];n!==void 0&&r.push(n),console.debug(...r)}var Hn=("0.5.5".trim(),"0.5.5".trim()),Jn=("iife-build".trim(),"iife-build".trim());function Qn(){if(typeof window>"u")return;const e=window;e.__gengageSdkRuntimeInfoLogged||(e.__gengageSdkRuntimeInfoLogged=!0,console.info(`[gengage] @gengage/assistant-fe v${Hn} (${Jn})`))}var Wn=class{constructor(){this.isVisible=!1,this.isInitialised=!1,this._handlers=new Map,this._cleanups=[],this._ownsRoot=!1,this._destroying=!1}async init(e){if(this.isInitialised){console.warn("[gengage] Widget already initialised. Call update() instead.");return}const t=Pn(e.theme);Qn(),this.config={...e,theme:t,session:In(e.session)},this.root=this._resolveMount(e.mountTarget),this._applyTheme(t),qn();const n=Qe("gengage:context:update",r=>this.update(r));this._cleanups.push(n),Te("lifecycle",`${this.constructor.name}.init`,{accountId:e.accountId,sku:e.pageContext?.sku});try{await this.onInit(this.config)}catch(r){throw this.destroy(),r}this._destroying||(this.isInitialised=!0,Te("lifecycle",`${this.constructor.name} ready`),this.emit("ready"))}update(e){this.isInitialised&&(this.config.pageContext?this.config={...this.config,pageContext:{...this.config.pageContext,...e}}:e.pageType!==void 0&&(this.config={...this.config,pageContext:e}),this.onUpdate(e),this.emit("context-update",this.config.pageContext))}show(){this.isVisible||(this.isVisible=!0,this.root.style.display="",this.onShow(),this.emit("show"))}hide(){this.isVisible&&(this.isVisible=!1,this.root.style.display="none",this.onHide(),this.emit("hide"))}destroy(){this._destroying||(this._destroying=!0,this.emit("destroy"),this._cleanups.forEach(e=>e()),this._cleanups.length=0,this._handlers.clear(),this.onDestroy(),this._cleanupRoot(),this.isInitialised=!1)}_cleanupRoot(){this._ownsRoot?this.root.remove():this.root.innerHTML=""}on(e,t){return this._handlers.has(e)||this._handlers.set(e,new Set),this._handlers.get(e).add(t),()=>this._handlers.get(e)?.delete(t)}emit(e,...t){this._handlers.get(e)?.forEach(n=>n(...t))}addCleanup(e){this._cleanups.push(e)}_resolveMount(e){if(e instanceof HTMLElement)return e;if(typeof e=="string"){const n=document.querySelector(e);if(!n)throw new Error(`[gengage] Mount target not found: "${e}"`);return n}const t=document.createElement("div");return t.dataset.gengageWidget=this.constructor.name.toLowerCase(),document.body.insertBefore(t,document.body.firstChild),this._ownsRoot=!0,t}_applyTheme(e){if(e){for(const[t,n]of Object.entries(e))if(n!==void 0){const r=t.startsWith("--")?t:`--gengage-${Vn(t)}`;this.root.style.setProperty(r,n)}}}};function Vn(e){return e.replace(/([A-Z])/g,"-$1").toLowerCase()}function Xe(e){const t=e?.trim();return t||"tr"}var Gn=8e3,Kn=5e3,Yn="https://www.google.com/favicon.ico",N=new Map,et=!1,W=null,ee=null,M=!1;function Xn(e){return typeof e=="string"&&e.toLowerCase().startsWith("tr")}function tt(e){return Xn(e)?"İnternet bağlantısında sorun var gibi görünüyor. İstek sürerken yeniden deneyeceğiz.":"Your internet connection looks unstable. We'll keep retrying while this request is active."}function nt(){let e;for(const t of N.values())e=t;return e}function $e(){W&&(clearTimeout(W),W=null)}function er(){ee&&(clearInterval(ee),ee=null)}async function rt(){try{if(typeof navigator<"u"&&navigator.onLine===!1)return!1;if(typeof window<"u"){const n=window.location.hostname;if(n==="localhost"||n==="127.0.0.1")return navigator.onLine}const e=new AbortController,t=setTimeout(()=>e.abort(),3e3);try{return await fetch(Yn,{method:"HEAD",mode:"no-cors",cache:"no-cache",signal:e.signal}),!0}catch{return navigator.onLine}finally{clearTimeout(t)}}catch{return typeof navigator>"u"?!0:navigator.onLine}}function se(){M=!1,er(),Ye()}function ce(){W||M||N.size===0||(W=setTimeout(async()=>{W=null,!(M||N.size===0)&&!await rt()&&N.size>0&&(M=!0,Ae({source:"sdk",message:tt(nt()),sticky:!0}),ee||(ee=setInterval(async()=>{if(N.size===0){se();return}await rt()&&(se(),ce())},Kn)))},Gn))}function tr(){et||typeof window>"u"||(et=!0,window.addEventListener("online",()=>{se(),ce()}),window.addEventListener("offline",()=>{N.size===0||M||(M=!0,$e(),Ae({source:"sdk",message:tt(nt()),sticky:!0}))}))}function nr(e){tr();const t=Symbol(e.source);N.set(t,e.locale),ce();let n=!1;return()=>{if(!n){if(n=!0,N.delete(t),N.size===0){$e(),se();return}M||($e(),ce())}}}function ot(e){return typeof e=="object"&&e!==null&&typeof e.type=="string"}function rr(e){const t=[];let n=0,r=!1,o=!1,i=0;for(let a=0;a<e.length;a++){const s=e[a];if(o){o=!1;continue}if(s==="\\"&&r){o=!0;continue}if(s==='"'){r=!r;continue}r||(s==="{"&&n++,s==="}"&&(n--,n===0&&(t.push(e.slice(i,a+1)),i=a+1)))}return t.length>0?t:[e]}function it(e,t){const n=e.trim();if(!n||n.startsWith(":"))return!1;const r=n.startsWith("data: ")?n.slice(6):n;if(r==="[DONE]")return t.onDone?.(),!0;try{const o=JSON.parse(r);return ot(o)?(Te("stream",`event: ${o.type}`,o),t.onEvent(o),o.type==="done"?(t.onDone?.(),!0):!1):!1}catch{const o=rr(r);if(o.length>1){for(const i of o)try{const a=JSON.parse(i);if(!ot(a))continue;if(t.onEvent(a),a.type==="done")return t.onDone?.(),!0}catch{}return!1}return!1}}async function or(e,t){if(!e.ok){t.onError?.(new Error(`HTTP ${e.status}: ${e.statusText}`));return}if(!e.body){t.onError?.(new Error("Response body is null — streaming not supported"));return}const n=e.body.getReader(),r=new TextDecoder("utf-8");let o="";const i=t.idleTimeoutMs??6e4,a=Symbol("idle-timeout");let s=!1;try{for(;;){const c=n.read();let u;const d=await(i>0?Promise.race([c.then(h=>(clearTimeout(u),h)),new Promise(h=>{u=setTimeout(()=>h(a),i)})]):c);if(d===a){s=!0,await n.cancel();break}const{done:g,value:p}=d;if(g)break;o+=r.decode(p,{stream:!0});const f=o.split(`
48
+ `);o=f.pop()??"";for(const h of f)if(it(h,t))return}if(o.trim()&&it(o,t))return}catch(c){if(c instanceof DOMException&&c.name==="AbortError")return;t.onError?.(c instanceof Error?c:new Error(String(c)))}finally{s||n.releaseLock()}t.onDone?.()}var ir={process_action:"/process_action",launcher_action:"/launcher_action",similar_products:"/similar_products",product_groupings:"/product_groupings"};function ar(e){if(e===void 0)throw new Error("[gengage] middlewareUrl is required. Pass your Gengage backend URL in widget config.");const t=e.trim();return t===""?"":t.replace(/\/+$/,"")}function sr(e,t){return`${ar(t?.middlewareUrl)}/chat${ir[e]}`}var at=3,cr=(e,t)=>{const n=e.replace(/\s+/g," ").trim().replace(/^[,.;:!?•-]+|[,.;:!?•-]+$/g,"");if(!n)return"";const r=t?.stripLeadingStopWords?n.replace(/^(?:daha|için)\s+/i,"").trim():n;return r?r.split(/\s+/).slice(0,3).join(" ").trim():""},Ie=(e,t)=>e?e.split(/[•,;:/()]|(?:\sve\s)|(?:\sand\s)|(?:\sile\s)|(?:\sfor\s)|(?:\swith\s)/i).map(n=>cr(n,t)).filter(Boolean):[];function ur(e){const t=(e.display_keywords??[]).flatMap(o=>Ie(o,{stripLeadingStopWords:!0})),n=t.filter((o,i)=>t.indexOf(o)===i);if(n.length>0)return n.slice(0,at);const r=[...Ie(e.chosen_attribute,{stripLeadingStopWords:!0}),...Ie(e.short_name)];return r.filter((o,i)=>r.indexOf(o)===i).slice(0,at)}function lr(e){return ur(e).join(" • ")}function dr(e){return e==="beauty_consulting"||e==="account_expert"}function Pe(...e){for(const t of e){if(typeof t!="string")continue;const n=t.trim();if(n.length>0)return n}}function Ce(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"&&t.trim().length>0).map(t=>t.trim()):[]}function st(e){const t={...e},n=Pe(t.sku),r=Ce(t.group_skus);if(n?t.sku=n:delete t.sku,r.length>0?t.group_skus=r:delete t.group_skus,n||r.length>0)delete t.image_url;else{const o=Pe(t.image_url);o?t.image_url=o:delete t.image_url}return t}function pr(e){if(typeof e.type!="string")return null;if(fr(e))return e;const t=e;switch(t.type){case"outputText":return gr(t);case"suggestedActions":return hr(t);case"productList":return mr(t);case"productDetails":return _r(t);case"productDetailsSimilars":return yr(t);case"comparisonTable":return vr(t);case"context":return zr(t);case"chatStreamEnd":return Sr();case"loading":return Er(t);case"panelLoading":return Ar(t);case"similarLoading":return Tr(t);case"redirect":return $r(t);case"error":return Ir(t);case"dummy":return Pr(t);case"launcherAction":return Cr(t);case"text":return Oe(t);case"productItem":return Or(t);case"text_image":return ct(t);case"quick_qna":return ut(t);case"reviewHighlights":return Zr(t);case"aiProductSuggestions":return Lr(t);case"aiProductGroupings":return Nr(t);case"aiSuggestedSearches":return jr(t);case"prosAndCons":return xr(t);case"getGroundingReview":return Dr(t);case"voice":return Br(t);case"visitorDataResponse":return Rr(t);case"productListPreview":return Ur();case"groupList":return Mr(t);case"formGetInfo":case"formTestDrive":case"formServiceRequest":case"launchFormPage":return Fr(t);case"launcherContent":return Jr(t);case"handoff":return Hr(t);case"uiSpec":return Xr(t);default:return null}}function fr(e){const t=e.type;if(typeof t!="string")return!1;switch(t){case"metadata":return typeof e.sessionId=="string"&&typeof e.model=="string";case"text_chunk":return typeof e.content=="string";case"ui_spec":{const n=e.widget;if(n!=="chat"&&n!=="qna"&&n!=="simrel")return!1;const r=C(e.spec);return r?typeof r.root=="string"&&C(r.elements)!==null:!1}case"action":{const n=C(e.action);return n!==null&&typeof n.kind=="string"}case"error":return typeof e.code=="string"&&typeof e.message=="string";case"done":return!0;default:return!1}}function gr(e){const t=v(e.payload.text,e.payload.plain_text)??"",n=v(e.payload.plain_text,e.payload.text)??t;if(e.payload.is_error)return{type:"error",code:"BACKEND_ERROR",message:n||"Backend returned an error"};const r={type:"text_chunk",content:t,final:!0},o=e.payload.product_mentions;Array.isArray(o)&&o.length>0&&(r.productMentions=o.filter(c=>typeof c=="object"&&c!==null&&typeof c.sku=="string"&&typeof c.short_name=="string"));const i=e.payload.sku_to_product_item;i&&typeof i=="object"&&!Array.isArray(i)&&(r.skuToProductItem=i);const a=e.payload.conversation_mode;typeof a=="string"&&a&&(r.conversationMode=a);const s=e.payload.render_hint;return typeof s=="string"&&s&&(r.renderHint=s),e.payload.kvkk===!0&&(r.kvkk=!0),r}function hr(e){return lt((e.payload.actions??[]).map(t=>{const n=v(t.title)??"",r=Z(t.requestDetails,n),o=r?{label:n,action:r}:null;return o?(typeof t.icon=="string"&&(o.icon=t.icon),typeof t.image=="string"&&(o.image=t.image),o):null}).filter(ne),"chat")}function mr(e){const t=(Array.isArray(e.payload.style_variations)?e.payload.style_variations:[]).map(a=>{const s=v(a.style_label);if(!s)return null;const c=v(a.style_mood),u=v(a.image_url??void 0),d=(Array.isArray(a.product_list)?a.product_list:[]).map(p=>{const f=C(p);return f?Ze(C(f.product_detail)??C(f.product)??f):null}).filter(ne),g=Array.isArray(a.recommendation_groups)?a.recommendation_groups.map(p=>({label:v(p.label)??"",reason:v(p.reason)??"",skus:Array.isArray(p.skus)?p.skus.filter(f=>typeof f=="string"&&f.trim().length>0):[]})):[];return{style_label:s,style_mood:c??"",...u?{image_url:u}:{},...typeof a.status=="string"?{status:a.status}:{},product_list:d,recommendation_groups:g}}).filter(ne),n=e.payload.product_list??[],r=dr(e.payload.source)&&t.length>0?t[0].product_list:null,o=r?Qr(r,"chat"):dt(n,"chat");o.panelHint="panel";const i=o.spec.elements[o.spec.root];if(i){const a={};typeof e.payload.offset=="number"&&(a.offset=e.payload.offset),typeof e.payload.end_of_list=="boolean"&&(a.endOfList=e.payload.end_of_list),typeof e.payload.title=="string"&&(a.panelTitle=e.payload.title),typeof e.payload.source=="string"&&(a.source=e.payload.source),t.length>0&&(a.styleVariations=t),e.payload.replace_panel===!0&&(a.replacePanel=!0),(e.payload.ranking_state==="pending"||e.payload.ranking_state==="final")&&(a.rankingState=e.payload.ranking_state);const s=e.payload.sequence_id??e.payload.search_id;typeof s=="string"&&s.length>0&&(a.sequenceId=s),Object.keys(a).length>0&&(i.props={...i.props,...a})}return o}function _r(e){const t=e.payload.productDetails;if(!t)return Vr("chat");const n=V(t);return{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"ProductDetailsPanel",props:{product:{...t,...n}}}}},panelHint:"panel"}}function yr(e){const t=dt(e.payload.similarProducts??[],"chat"),n=t.spec.elements[t.spec.root];return n&&(n.props={...n.props,similarsAppend:!0}),{...t,panelHint:"panel"}}function vr(e){const t=e.payload.multiple_product_details??[],n=e.payload,r={key_differences:n.key_differences,recommended_choice:n.recommended_choice,recommended_choice_sku:n.recommended_choice_sku,special_considerations:n.special_considerations,criteria_view:n.criteria_view,criteria_view_short:n.criteria_view_short,compared_field_names:n.compared_field_names,winner_product:n.winner_product,winner_hits:n.winner_hits,...e.payload.product_comparison_framework??{}},o=e.payload.table,i=e.payload.features_list,a=[];for(const y of t){const w=V(y);a.push(w)}const s=br(o,a,r,i);let c;r?.recommended_choice_sku?c=r.recommended_choice_sku:r?.winner_product&&r.winner_product.length>0&&(c=r.winner_product[0]?.product_detail?.sku??r.winner_product[0]?.sku);const u=c?a.find(y=>y.sku===c)??a[0]:a[0],d=[];if(Array.isArray(r?.key_differences))for(const y of r.key_differences)typeof y=="string"&&d.push(y);const g=pt(r?.special_considerations),p=r?.recommended_choice,f=r?.winner_hits,h={};for(const y of a){const w=y.sku;w&&(h[w]={title:y.name??w,type:"launchSingleProduct",payload:{sku:w}})}const m={products:a,attributes:s,highlights:d,productActions:h};return u&&(m.recommended=u),g.length>0&&(m.specialCases=g),p&&(m.recommendedText=p),f&&(m.winnerHits=f),typeof r?.key_differences=="string"&&(m.keyDifferencesHtml=r.key_differences),r?.special_considerations&&(m.specialConsiderations=r.special_considerations),{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"ComparisonTable",props:m}}},panelHint:"panel"}}function br(e,t,n,r){if(!e)return[];const o=Object.entries(e);if(o.length===0)return[];const i=o[0]?.[1];if(Array.isArray(i)){const g=n.criteria_view??n.criteria_view_short??{},p=n.compared_field_names??Object.keys(e),f=[];for(const h of p){const m=e[h];if(!m||!Array.isArray(m))continue;const y=g[h]??h;f.push({label:y,values:m.map(w=>typeof w=="string"?w:String(w??""))})}return f}const a=e,s=t.map(g=>String(g.sku??"")).filter(g=>g.length>0),c=n.criteria_view??n.criteria_view_short??{},u=(r&&r.length>0?r:n.compared_field_names&&n.compared_field_names.length>0?n.compared_field_names:wr(a)).filter(g=>g!=="name"&&g!=="name_short"&&!g.endsWith("_short")),d=[];for(const g of u){const p=s.map(h=>{const m=a[h];if(!m||typeof m!="object")return"";const y=m[`${g}_short`],w=m[g];return kr(y??w)});if(p.every(h=>h.length===0))continue;const f=c[g]??g;d.push({label:f,values:p})}return d}function wr(e){const t=[],n=new Set;for(const r of Object.values(e))if(!(!r||typeof r!="object"))for(const o of Object.keys(r))n.has(o)||(n.add(o),t.push(o));return t}function kr(e){return typeof e=="string"?e:typeof e=="number"||typeof e=="boolean"?String(e):""}function zr(e){return{type:"metadata",sessionId:"",model:"",meta:{panel:e.payload.panel,messages:e.payload.messages,message_id:e.payload.message_id}}}function Sr(){return{type:"done"}}function Er(e){return{type:"metadata",sessionId:"",model:"",meta:{loading:!0,loadingText:e.payload.text,thinkingMessages:e.payload.thinking_messages,dynamicLoading:e.payload.is_dynamic===!0}}}function Ar(e){return{type:"metadata",sessionId:"",model:"",meta:{loading:!0,panelLoading:!0,panelPendingType:e.payload?.pending_type,loadingText:e.payload?.text}}}function Tr(e){return{type:"metadata",sessionId:"",model:"",meta:{loading:!0,similarPanelLoading:!0,panelPendingType:e.payload?.pending_type,loadingText:e.payload?.text}}}function $r(e){const t=v(e.payload.url);return t?{type:"action",action:{kind:"navigate",url:t,newTab:e.payload.new_tab===!0}}:{type:"metadata",sessionId:"",model:"",meta:{redirect:e.payload,redirectTarget:v(e.payload.to)}}}function Ir(e){return{type:"error",code:"BACKEND_ERROR",message:v(e.payload?.text,e.payload?.message,e.payload?.error)??"Backend returned an error"}}function Pr(e){return{type:"metadata",sessionId:"",model:"",meta:{noop:!0}}}function Cr(e){const t=e.payload??{};if(Array.isArray(t.action_list)){const o={action_list:t.action_list},i=typeof t.type=="string"?t.type:void 0,a=typeof t.theme=="string"?t.theme:void 0;return i!==void 0&&(o.type=i),a!==void 0&&(o.theme=a),ut({type:"quick_qna",payload:o})}const n=C(t.action);if(n){const o={action:n},i=typeof t.text=="string"?t.text:void 0,a=typeof t.image_url=="string"?t.image_url:void 0,s=typeof t.theme=="string"?t.theme:void 0;return i!==void 0&&(o.text=i),a!==void 0&&(o.image_url=a),s!==void 0&&(o.theme=s),ct({type:"text_image",payload:o})}const r=typeof t.text=="string"?t.text:"";if(r){const o={text:r},i=typeof t.type=="string"?t.type:void 0,a=typeof t.theme=="string"?t.theme:void 0,s=C(t.payload)??void 0;return i!==void 0&&(o.type=i),s!==void 0&&(o.payload=s),a!==void 0&&(o.theme=a),Oe({type:"text",payload:o})}return{type:"metadata",sessionId:"",model:"",meta:{launcherAction:t}}}function Oe(e){const t={text:v(e.payload.text)??""};return typeof e.payload.theme=="string"&&(t.theme=e.payload.theme),e.payload.payload!==void 0&&(t.payload=e.payload.payload),{type:"ui_spec",widget:"qna",spec:{root:"root",elements:{root:{type:"QuestionHeading",props:t}}}}}function Or(e){return Wr(e.payload,"qna")}function ct(e){const t=v(e.payload.text)??"",n=Z(e.payload.action,t);if(n){const o={label:t||n.title,action:n};return typeof e.payload.image_url=="string"&&(o.image=e.payload.image_url),typeof e.payload.theme=="string"&&(o.theme=e.payload.theme),{type:"ui_spec",widget:"qna",spec:{root:"root",elements:{root:{type:"ActionButton",props:o}}}}}const r={text:t};return typeof e.payload.theme=="string"&&(r.theme=e.payload.theme),Oe({type:"text",payload:r})}function ut(e){return lt((e.payload.action_list??[]).map(t=>{const n=v(t.title)??"",r=Z(t.requestDetails,n),o=r?{label:n,action:r}:null;return o?(typeof t.icon=="string"&&(o.icon=t.icon),typeof t.image=="string"&&(o.image=t.image),o):null}).filter(ne),"qna")}function Zr(e){const t={reviews:(e.payload.reviews??[]).map(n=>{const r={};return typeof n.review_class=="string"&&(r.review_class=n.review_class),typeof n.review_text=="string"&&(r.review_text=n.review_text),(typeof n.review_rating=="string"||typeof n.review_rating=="number")&&(r.review_rating=n.review_rating),typeof n.review_tag=="string"&&(r.review_tag=n.review_tag),r})};return typeof e.payload.sku=="string"&&(t.sku=e.payload.sku),{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"ReviewHighlights",props:t}}}}}function xr(e){const t={};return Array.isArray(e.payload.pros)&&(t.pros=e.payload.pros),Array.isArray(e.payload.cons)&&(t.cons=e.payload.cons),typeof e.payload.product_name=="string"&&(t.productName=e.payload.product_name),{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"ProsAndCons",props:t}}}}}function Rr(e){return{type:"metadata",sessionId:"",model:"",meta:{visitorDataResponse:e.payload}}}function Lr(e){const t=e.payload.product_suggestions??[],n=[];for(let r=0;r<t.length;r++){const o=t[r];if(!o)continue;const i=Gr(o);if(!i)continue;const a={product:i},s=Z(o.requestDetails,i.name);s&&(a.action=s),typeof o.role=="string"&&(a.role=o.role),typeof o.reason=="string"&&(a.reason=o.reason),typeof o.review_highlight=="string"&&(a.reviewHighlight=o.review_highlight),Array.isArray(o.labels)&&(a.labels=o.labels),typeof o.expert_quality_score=="number"&&(a.expertQualityScore=o.expert_quality_score),n.push(a)}return n.length===0?{type:"metadata",sessionId:"",model:"",meta:{aiProductSuggestions:e.payload.product_suggestions??[]}}:{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"AITopPicks",props:{suggestions:n}}}}}}function Nr(e){const t=e.payload.product_groupings??[],n=[],r=[];for(let o=0;o<t.length;o++){const i=t[o];if(!i)continue;const a=v(i.name)??"",s=v(i.description),c=v(i.highlight),u=Array.isArray(i.labels)?pt(i.labels):[],d=v(i.sku,i.repr_sku),g=v(i.image,i.repr_image),p=qr(i,a,d),f=(Array.isArray(i.group_products)?i.group_products:[]).map(y=>{const w=C(y);return w?Ze(w):null}).filter(ne),h=g??v(...f.map(y=>y.imageUrl));if(a&&f.length>0){const y={groupName:a,products:f};h&&(y.image=h),s&&(y.description=s),c&&(y.highlight=c),u.length>0&&(y.labels=u),n.push(y)}if(!p)continue;const m={name:a,action:p};u.length>0&&(m.labels=u),g!==void 0&&(m.image=g),r.push(m)}return n.length>0?{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"CategoriesContainer",props:{groups:n}}}},panelHint:"panel"}:r.length===0?{type:"metadata",sessionId:"",model:"",meta:{aiProductGroupings:e.payload.product_groupings??[]}}:{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"AIGroupingCards",props:{entries:r}}}}}}function qr(e,t,n){const r=C(e.requestDetails);if(r){if(r.type!=="findSimilar")return Z(r,t);const a={...C(r.payload)??{}};n&&!Pe(a.sku)&&(a.sku=n);const s=Ce(e.group_skus);return s.length>0&&(a.group_skus=s),Z({...r,payload:st(a)},t)}const o={};n&&(o.sku=n);const i=Ce(e.group_skus);return i.length>0&&(o.group_skus=i),Object.keys(o).length===0?null:Z({type:"findSimilar",payload:st(o)},t)}function jr(e){const t=e.payload.suggested_searches??[],n=[];for(let r=0;r<t.length;r++){const o=t[r];if(!o)continue;const i=v(o.short_name,o.chosen_attribute,o.detailed_user_message)??`Search ${r+1}`,a={},s=v(o.detailed_user_message);s&&(a.text=s);const c=C(C(o.requestDetails)?.payload),u=c?.group_skus;o.group_skus&&Array.isArray(o.group_skus)?a.group_skus=o.group_skus:Array.isArray(u)&&(a.group_skus=u.filter(w=>typeof w=="string"));const d=v(o.sku,o.representative_product_sku,c?.sku);d&&(a.sku=d),a.is_suggested_text=1;const g={type:"inputText",payload:a},p=Z(o.requestDetails,i),f=p?.type==="findSimilar"&&typeof a.text=="string"?Z(g,i):p??Z(g,i);if(!f)continue;const h={shortName:i,action:f},m=v(o.detailed_user_message);m&&m!==i&&(h.detailedMessage=m);const y=lr(o);y&&y!==i&&y!==(m??"")&&(h.whyDifferent=y),typeof o.image=="string"&&(h.image=o.image),n.push(h)}return n.length===0?{type:"metadata",sessionId:"",model:"",meta:{aiSuggestedSearches:e.payload.suggested_searches??[]}}:{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"AISuggestedSearchCards",props:{entries:n}}}}}}function Dr(e){const t=e.payload,n=Z(t.requestDetails??t.request_details,v(t.review_count,t.reviewCount,t.text,t.title)??"Show product reviews");if(!n)return{type:"metadata",sessionId:"",model:"",meta:{groundingReview:t}};const r={action:n};return t.title&&(r.title=t.title),t.text&&(r.text=t.text),t.review_count?r.reviewCount=t.review_count:typeof t.reviewCount=="string"&&t.reviewCount.trim()&&(r.reviewCount=t.reviewCount),{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"GroundingReviewCard",props:r}}}}}function Ur(){return{type:"metadata",sessionId:"",model:"",meta:{analyzeAnimation:!0}}}function Br(e){return{type:"metadata",sessionId:"",model:"",meta:{voice:e.payload}}}function Mr(e){const t=e.payload.group_list??[],n=[];for(const o of t){const i=o.group_name??"",a=(o.product_list??[]).map(V);n.push({groupName:i,products:a})}const r=[];for(const o of e.payload.filter_tags??[]){const i=o.title??"";if(!i)continue;const a=Z(o.requestDetails,i),s={title:i};a&&(s.action=a),r.push(s)}return{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"CategoriesContainer",props:{groups:n,filterTags:r}}}},panelHint:"panel"}}function Fr(e){return{type:"metadata",sessionId:"",model:"",meta:{formType:e.type,formPayload:e.payload??{}}}}function Hr(e){const t={};return typeof e.payload?.summary=="string"&&(t.summary=e.payload.summary),Array.isArray(e.payload?.products_discussed)&&(t.products_discussed=e.payload.products_discussed),typeof e.payload?.user_sentiment=="string"&&(t.user_sentiment=e.payload.user_sentiment),{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:"HandoffNotice",props:t}}}}}function Jr(e){return{type:"metadata",sessionId:"",model:"",meta:{launcherContent:e.payload??{}}}}function lt(e,t){const n={},r=[];for(let o=0;o<e.length;o++){const i=e[o];if(!i)continue;const a=`action-${o}`;r.push(a);const s={label:i.label,action:i.action};i.icon!==void 0&&(s.icon=i.icon),i.image!==void 0&&(s.image=i.image),i.description!==void 0&&(s.description=i.description),n[a]={type:"ActionButton",props:s}}return n.root={type:"ActionButtons",props:{buttons:e.map(o=>{const i={label:o.label,action:o.action};return o.image!==void 0&&(i.image=o.image),o.description!==void 0&&(i.description=o.description),o.icon!==void 0&&(i.icon=o.icon),i})},children:r},{type:"ui_spec",widget:t,spec:{root:"root",elements:n}}}function dt(e,t){const n={},r=[];for(let o=0;o<e.length;o++){const i=e[o];if(!i)continue;const a=V(i),s=`product-${o}`;r.push(s);const c={product:a,index:o};a.sku&&(c.action={title:a.name,type:"launchSingleProduct",payload:{sku:a.sku}}),n[s]={type:"ProductCard",props:c}}return n.root={type:"ProductGrid",props:{layout:"grid"},children:r},{type:"ui_spec",widget:t,spec:{root:"root",elements:n}}}function Qr(e,t){const n={},r=[];for(let o=0;o<e.length;o++){const i=e[o];if(!i)continue;const a=`product-${o}`;r.push(a);const s={product:i,index:o},c=i.sku;c&&(s.action={title:i.name??"",type:"launchSingleProduct",payload:{sku:c}}),n[a]={type:"ProductCard",props:s}}return n.root={type:"ProductGrid",props:{layout:"grid"},children:r},{type:"ui_spec",widget:t,spec:{root:"root",elements:n}}}function Wr(e,t){return{type:"ui_spec",widget:t,spec:{root:"root",elements:{root:{type:"ProductCard",props:{product:V(e),index:0}}}}}}function Vr(e){return{type:"ui_spec",widget:e,spec:{root:"root",elements:{root:{type:"ActionButtons",props:{buttons:[]},children:[]}}}}}function Gr(e){const t=v(e.sku),n=v(e.short_name),r={...C(e.product_item)??e},o=v(e.discount_reason,e.discountReason);return o&&!v(r.discount_reason,r.discountReason)&&(r.discount_reason=o),Ze(r,t,n)}function Ze(e,t,n){const r=v(e.sku,t),o=v(e.name,n);if(!r||!o)return null;const i={sku:r,name:o},a=v(e.brand);a&&(i.brand=a);const s=v(e.url);s&&(i.url=s);const c=Kr(e.images);if(c.length>0)i.images=c;else{const m=v(e.image,e.image_url,e.imageUrl);m&&(i.images=[m])}const u=te(e.price_discounted);u!==void 0&&(i.price_discounted=u);const d=te(e.price);d!==void 0&&(i.price=d);const g=te(e.rating);g!==void 0&&(i.rating=g);const p=te(e.review_count)??te(e.reviewCount);p!==void 0&&(i.review_count=p);const f=v(e.cart_code,e.cartCode);f&&(i.cart_code=f),typeof e.in_stock=="boolean"&&(i.in_stock=e.in_stock),typeof e.inStock=="boolean"&&(i.in_stock=e.inStock);const h=v(e.discount_reason,e.discountReason);return h&&(i.discount_reason=h),V(i)}function Z(e,t){const n=C(e);if(!n)return null;const r=n.type;if(typeof r!="string"||r.length===0)return null;const o={title:t||r,type:r};return n.payload!==void 0&&(o.payload=n.payload),o}function C(e){return!e||typeof e!="object"||Array.isArray(e)?null:e}function v(...e){for(const t of e)if(typeof t=="string"){const n=t.trim();if(n.length>0)return n}}function Kr(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"&&t.length>0):[]}function pt(e){if(typeof e=="string"){const t=e.trim();return t?[t]:[]}return Array.isArray(e)?e.filter(t=>typeof t=="string").map(t=>t.trim()).filter(t=>t.length>0):[]}function te(e){if(typeof e=="number"&&Number.isFinite(e))return e;if(typeof e=="string"){let t;e.includes(".")&&e.includes(",")?t=e.replace(/\./g,"").replace(",","."):t=e.replace(",",".");const n=Number(t);if(Number.isFinite(n))return n}}function ne(e){return e!=null}var Yr=new Set(["sku","name","brand","images","price","price_discounted","price_discount_rate","price_currency","discount_reason","url","rating","review_count","cart_code","in_stock","description","description_html","features","specifications","short_name","category_ids","category_names","variants","facet_hits","promotions"]);function V(e){const t=e.price_discounted!=null&&e.price_discounted>0,n=t?e.price_discounted:e.price,r=t&&e.price!=null?e.price:void 0;let o;r!=null&&n!=null&&r>0?o=Math.round((r-n)/r*100):e.price_discount_rate!=null&&e.price_discount_rate>0&&(o=e.price_discount_rate);const i=v(e.brand),a=v(e.name)??e.sku,s=i&&!a.toLowerCase().startsWith(i.toLowerCase())?`${i} ${a}`:a,c={sku:e.sku,name:s,url:v(e.url)??""},u=e.images?.[0];u&&(c.imageUrl=u),e.images&&e.images.length>1&&(c.images=e.images),n!=null&&n>0&&(c.price=String(n)),r!=null&&r>0&&(c.originalPrice=String(r)),o!==void 0&&(c.discountPercent=o),i!==void 0&&(c.brand=i),e.rating!==void 0&&(c.rating=e.rating),e.review_count!==void 0&&(c.reviewCount=e.review_count),e.cart_code!==void 0&&(c.cartCode=e.cart_code),e.in_stock!==void 0&&(c.inStock=e.in_stock),e.variants&&e.variants.length>0&&(c.variants=e.variants),e.discount_reason!==void 0&&(c.discountReason=e.discount_reason),e.promotions&&e.promotions.length>0&&(c.promotions=e.promotions),e.description!==void 0&&(c.description=e.description),e.description_html!==void 0&&(c.descriptionHtml=e.description_html),e.features&&e.features.length>0&&(c.features=e.features),e.specifications!==void 0&&(c.specifications=e.specifications),e.facet_hits&&(c.facetHits=e.facet_hits),e.category_names&&e.category_names.length>0&&(c.categoryNames=e.category_names),e.short_name!==void 0&&(c.shortName=e.short_name);const d=e,g={};let p=!1;for(const f of Object.keys(d))Yr.has(f)||(g[f]=d[f],p=!0);return p&&(c.extras=g),c}function Xr(e){const t=e.payload.type,{type:n,...r}=e.payload;return{type:"ui_spec",widget:"chat",spec:{root:"root",elements:{root:{type:t,props:r}}}}}async function eo(e,t,n){const r=sr("launcher_action",t),o={uiSpecs:[],actions:[]},i={method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)};n!==void 0&&(i.signal=n);const a=await fetch(r,i);if(!a.ok)throw new Error(`HTTP ${a.status}: ${a.statusText}`);const s={onEvent:c=>{const u=pr(c);if(u&&(u.type==="ui_spec"&&o.uiSpecs.push(u.spec),u.type==="ui_spec"&&u.spec.elements)){for(const d of Object.values(u.spec.elements))if(d.type==="ActionButton"&&d.props?.action){const g=d.props.action;o.actions.push(g)}}}};return n!==void 0&&(s.signal=n),await or(a,s),o}function ft(e){const t=document.createElement("div");t.className="gengage-qna-buttons gds-toolbar",t.dataset.gengagePart="qna-button-row",t.setAttribute("role","group"),t.setAttribute("aria-label",e.quickQuestionsAriaLabel??"Quick questions"),e.orientation==="vertical"&&(t.style.flexDirection="column");for(const n of e.actions){const r=document.createElement("button");r.className="gengage-qna-button gds-chip",r.dataset.gengagePart="qna-quick-question",r.textContent=n.title,r.type="button",r.addEventListener("click",()=>{const o={title:n.title,type:n.type};n.payload!==void 0&&(o.payload=n.payload),e.onAction(o)}),t.appendChild(r)}if(e.ctaText||e.onOpenChat){const n=document.createElement("button");n.className="gengage-qna-cta gds-btn gds-btn-secondary",n.dataset.gengagePart="qna-cta",n.textContent=e.ctaText??e.defaultCtaText??"Ask something else",n.type="button",n.addEventListener("click",()=>{e.onOpenChat?.()}),t.appendChild(n)}return t}function to(e){const t=document.createElement("div");t.className="gengage-qna-input-wrapper",t.dataset.gengagePart="qna-input-wrapper";const n=document.createElement("div");n.className="gengage-qna-input-combo",n.dataset.gengagePart="qna-input-combo";const r=document.createElement("input");r.type="text",r.className="gengage-qna-input",r.dataset.gengagePart="qna-input",r.setAttribute("aria-label",e.askQuestionAriaLabel??"Ask a question");const o=Array.isArray(e.placeholders)?e.placeholders:e.placeholders?[e.placeholders]:[e.defaultInputPlaceholder??"Ask a question..."];let i=0,a=o[0]??"";r.placeholder=a;let s=null,c=null,u=!1;const d=()=>{s&&clearInterval(s),s=null,c&&clearTimeout(c),c=null,r.classList.remove("gengage-qna-input--fade")},g=()=>o.length>1&&!u&&r.value.trim().length===0,p=()=>{d(),g()&&(s=setInterval(()=>{g()&&(r.classList.add("gengage-qna-input--fade"),c=setTimeout(()=>{i=(i+1)%o.length,a=o[i]??"",r.placeholder=a,r.classList.remove("gengage-qna-input--fade")},180))},3e3))},f=document.createElement("div");f.className="gengage-qna-input-actions",f.dataset.gengagePart="qna-input-actions";const h=document.createElement("button");h.className="gengage-qna-icon-btn gengage-qna-clear gengage-qna-icon-btn--hidden",h.type="button",h.dataset.gengagePart="qna-clear",h.setAttribute("aria-label","Clear question"),h.innerHTML='<svg viewBox="0 0 24 24" aria-hidden="true" focusable="false"><path d="M18 6L6 18" /><path d="M6 6L18 18" /></svg>';const m=document.createElement("button");m.className="gengage-qna-icon-btn gengage-qna-send gengage-qna-icon-btn--hidden",m.type="button",m.dataset.gengagePart="qna-send",m.setAttribute("aria-label",e.sendQuestionAriaLabel??"Send question"),m.disabled=!0,m.innerHTML=`<svg viewBox="0 0 24 24" aria-hidden="true" focusable="false"><path d="M22 2L11 13" /><path d="M22 2L15 22L11 13L2 9L22 2Z" /></svg><span class="gengage-qna-sr-only">${e.ctaLabel??e.sendButtonText??"Ask"}</span>`;const y=()=>{const k=r.value.trim().length>0;h.classList.toggle("gengage-qna-icon-btn--hidden",!k),m.classList.toggle("gengage-qna-icon-btn--hidden",!k),m.classList.toggle("gengage-qna-send--active",k),m.disabled=!k},w=()=>{const k=r.value.trim();k&&(e.onSubmit({title:k,type:"user_message",payload:k}),r.value="",y(),p())};return h.addEventListener("click",()=>{r.value="",y(),r.focus({preventScroll:!0})}),m.addEventListener("click",w),r.addEventListener("focus",()=>{u=!0,d(),r.placeholder=""}),r.addEventListener("blur",()=>{u=!1,r.value.trim().length===0&&(r.placeholder=a),p()}),r.addEventListener("input",()=>{if(y(),r.value.trim().length>0){d();return}r.placeholder=u?"":a,p()}),r.addEventListener("keydown",k=>{k.key==="Enter"&&(k.preventDefault(),w()),k.key==="Escape"&&r.value.length>0&&(r.value="",y(),p())}),f.appendChild(h),f.appendChild(m),n.appendChild(r),n.appendChild(f),t.appendChild(n),y(),p(),t._cleanup=()=>{d()},t}function ue(e,t){if(!e||typeof e!="object")return null;const n=e,r=n.type;if(typeof r!="string"||r.length===0)return null;const o=n.title,i=n.payload,a=typeof o=="string"&&o.length>0?o:t;if(!a)return null;const s={title:a,type:r};return i!==void 0&&(s.payload=i),s}function gt(e){const t={title:e.title,type:e.type};return e.payload!==void 0&&(t.payload=e.payload),t}function ht(e,t){const n=[],r=e.props?.actions;if(Array.isArray(r))for(const a of r){const s=ue(a);s&&n.push(s)}const o=e.props?.buttons;if(Array.isArray(o))for(const a of o){if(!a||typeof a!="object")continue;const s=a,c=typeof s.label=="string"?s.label:void 0,u=ue(s.action,c);u&&n.push(u)}if(e.children)for(const a of e.children){const s=t.elements[a];if(!s||s.type!=="ActionButton")continue;const c=typeof s.props?.label=="string"?s.props.label:void 0,u=ue(s.props?.action,c);u&&n.push(u)}const i=new Set;return n.filter(a=>i.has(a.title)?!1:(i.add(a.title),!0))}var mt={ButtonRow:({element:e,spec:t,context:n})=>{const r=ht(e,t).map(gt),o=e.props?.orientation,i={actions:r,onAction:n.onAction,defaultCtaText:n.i18n.defaultCtaText,quickQuestionsAriaLabel:n.i18n.quickQuestionsAriaLabel};return n.onOpenChat!==void 0&&(i.onOpenChat=n.onOpenChat),n.ctaText!==void 0&&(i.ctaText=n.ctaText),(o==="horizontal"||o==="vertical")&&(i.orientation=o),ft(i)},ActionButtons:({element:e,spec:t,context:n})=>{const r={actions:ht(e,t).map(gt),onAction:n.onAction,defaultCtaText:n.i18n.defaultCtaText,quickQuestionsAriaLabel:n.i18n.quickQuestionsAriaLabel};return n.onOpenChat!==void 0&&(r.onOpenChat=n.onOpenChat),n.ctaText!==void 0&&(r.ctaText=n.ctaText),ft(r)},ActionButton:({element:e,context:t})=>{const n=document.createElement("button");n.className="gengage-qna-button gds-chip",n.type="button",n.dataset.gengagePart="qna-action-button";const r=e.props?.label;typeof r=="string"?n.textContent=r:n.textContent=t.i18n.defaultCtaText;const o=ue(e.props?.action,typeof r=="string"?r:void 0);return o&&n.addEventListener("click",()=>t.onAction(o)),n},TextInput:({element:e,context:t})=>{const n=e.props?.placeholder,r=typeof n=="string"||Array.isArray(n)?n:t.inputPlaceholder,o=typeof e.props?.ctaLabel=="string"?e.props.ctaLabel:void 0,i={onSubmit:t.onAction,askQuestionAriaLabel:t.i18n.askQuestionAriaLabel,defaultInputPlaceholder:t.i18n.defaultInputPlaceholder,sendButtonText:t.i18n.sendButton,sendQuestionAriaLabel:t.i18n.sendQuestionAriaLabel};return r!==void 0&&(i.placeholders=r),o!==void 0&&(i.ctaLabel=o),to(i)},QuestionHeading:({element:e,context:t})=>{const n=document.createElement("h3");n.className="gengage-qna-heading",n.dataset.gengagePart="qna-heading";const r=e.props?.text,o=t.headingTitleOverride;return n.textContent=typeof o=="string"&&o.trim().length>0?o:typeof r=="string"?r:"",n},ProductCard:()=>null},xe=({element:e,renderElement:t})=>{if(!e.children||e.children.length===0)return null;const n=document.createElement("div");for(const r of e.children){const o=t(r);o&&n.appendChild(o)}return n};function _t(){return{...mt}}function yt(e,t,n=mt,r=xe){return bn({spec:e,context:t,registry:n,containerClassName:"gengage-qna-uispec",unknownRenderer:r})}function no(e){if(!e)return;const t=e.extra;if(t&&typeof t=="object"&&!Array.isArray(t)){const r=t.visible_skus??t.visibleSkus;if(Array.isArray(r)){const o=r.filter(i=>typeof i=="string"&&i.trim().length>0).map(i=>i.trim()).slice(0,200);if(o.length>0)return o}}const n=typeof e.sku=="string"&&e.sku.trim()?e.sku.trim():void 0;return n?[n]:void 0}function vt(e,t){if(!e)return null;const n=e.action;if(!n||typeof n!="object")return null;const r=n,o=r.type;if(typeof o!="string"||o.length===0)return null;const i=r.title,a=typeof i=="string"&&i.length>0?i:typeof t=="string"&&t.length>0?t:"";if(!a)return null;const s=r.payload,c={title:a,type:o};return s!==void 0&&(c.payload=s),c}function ro(e,t){const n=e.elements[e.root];if(!n)return!1;const r=o=>{if(o.type!=="ActionButton")return!1;const i=o.props;if(!i||typeof i!="object")return!1;const a=typeof i.label=="string"?i.label:void 0;return a===t?!0:vt(i,a)?.title===t};if(n.type==="ActionButton")return r(n);if(n.children)for(const o of n.children){const i=e.elements[o];if(i&&r(i))return!0}if(n.type==="ActionButtons"&&Array.isArray(n.props?.buttons)){for(const o of n.props.buttons)if(o?.label===t||o?.action?.title===t)return!0}return!1}var bt=0;function wt(){return bt+=1,`gengage-merge-${bt}`}function oo(e,t){const n=e.elements[e.root];if(!n||n.type!=="ButtonRow")return;const r=wt();e.elements[r]={type:"ActionButton",props:{label:t.title,action:{title:t.title,type:t.type,...t.payload!==void 0?{payload:t.payload}:{}}}},n.children=n.children?[r,...n.children]:[r]}function io(e,t){const n=e.elements[e.root];if(!n||n.type!=="ActionButtons")return;const r=wt();e.elements[r]={type:"ActionButton",props:{label:t.title,action:{title:t.title,type:t.type,...t.payload!==void 0?{payload:t.payload}:{}}}},n.children=n.children?[r,...n.children]:[r];const o=n.props?.buttons??[],i={label:t.title,action:{title:t.title,type:t.type,...t.payload!==void 0?{payload:t.payload}:{}}};n.props={...n.props,buttons:[i,...o]}}function ao(e){const t={},n=[];for(let r=0;r<e.length;r++){const o=e[r],i=`action-${r}`;n.push(i),t[i]={type:"ActionButton",props:{label:o.title,action:{title:o.title,type:o.type,...o.payload!==void 0?{payload:o.payload}:{}}}}}return t.root={type:"ButtonRow",children:n},{root:"root",elements:t}}function so(e){return e.find(t=>{const n=t.elements[t.root];return n?.type==="ActionButtons"||n?.type==="ButtonRow"})}function kt(e,t){const n=e.productContextQuickPillLabel,r={text:n};return t&&t.length>0&&(r.sku_list=t),{title:n,type:"user_message",payload:r}}function co(e,t,n){const r=n?.skuList,o=[],i=[];for(const c of e){const u=c.elements[c.root];if(u?.type==="ActionButton"){const d=u.props;if(vt(d,typeof d?.label=="string"?d.label:void 0)?.type==="findSimilar"){o.push(kt(t,r));continue}}i.push(c)}if(o.length===0)return e;const a=kt(t,r),s=so(i);if(!s)return[...i,ao([a])];if(!ro(s,a.title)){const c=s.elements[s.root];c?.type==="ActionButtons"?io(s,a):c?.type==="ButtonRow"&&oo(s,a)}return i}var zt={quickQuestionsAriaLabel:"Hızlı sorular",askQuestionAriaLabel:"Soru sorun",defaultInputPlaceholder:"Bir soru sorun...",sendButton:"Sor",sendQuestionAriaLabel:"Soruyu gönder",defaultCtaText:"Başka bir şey sor",redirectingToChat:"Sohbete yönlendiriliyor...",productContextQuickPillLabel:"Bu ürün hakkında ne bilmeliyim?"},uo={quickQuestionsAriaLabel:"Quick questions",askQuestionAriaLabel:"Ask a question",defaultInputPlaceholder:"Ask a question...",sendButton:"Ask",sendQuestionAriaLabel:"Send question",defaultCtaText:"Ask something else",redirectingToChat:"Redirecting to chat...",productContextQuickPillLabel:"What should I know about this product?"};function lo(e){return e?e.toLowerCase().split("-")[0]??"tr":"tr"}function po(e){return lo(e)==="en"?uo:zt}var St=class extends Wn{constructor(...e){super(...e),this._abortController=null,this._debounceTimer=null,this._contentEl=null,this._i18n=zt,this._actionHandler=this._handleAction.bind(this),this._openChatHandler=this._handleOpenChat.bind(this)}async onInit(e){this._i18n=this._resolveI18n(e),this._contentEl=document.createElement("div"),this._contentEl.className="gengage-qna-container",this._contentEl.dataset.gengagePart="qna-container",this._contentEl.lang=Xe(e.locale);const t=this._createChrome(e);if(t){const r=document.createElement("div");r.className="gengage-qna-chrome-widget",r.dataset.gengagePart="qna-chrome-widget",r.appendChild(this._contentEl),t.appendChild(r),this.root.appendChild(t)}else this.root.appendChild(this._contentEl);const n=e.pageContext?.sku;n&&(this._lastSku=n,await this._fetchAndRender(n)),En("qna")}onUpdate(e){const t=e.sku;!t||t===this._lastSku||(this._debounceTimer&&clearTimeout(this._debounceTimer),this._debounceTimer=setTimeout(()=>{this._debounceTimer=null,this._lastSku=t,this._fetchAndRender(t)},50))}onShow(){this._contentEl&&(this._contentEl.style.opacity="0",this._contentEl.style.transition="opacity 0.2s ease-in",requestAnimationFrame(()=>{this._contentEl&&(this._contentEl.style.opacity="1")}))}onHide(){}onDestroy(){this._abort(),this._debounceTimer&&(clearTimeout(this._debounceTimer),this._debounceTimer=null),this._contentEl&&(this._cleanupTextInputTimers(),this._contentEl.remove(),this._contentEl=null)}_abort(){this._abortController?.abort(),this._abortController=null}_resolvedQnaHeaderTitle(){const e=this.config.headerTitle??this.config.headingTitle;if(typeof e!="string")return;const t=e.trim();return t.length>0?t:void 0}_cleanupTextInputTimers(){if(!this._contentEl)return;const e=this._contentEl.querySelectorAll(".gengage-qna-input-wrapper");for(const t of e)t._cleanup?.()}async _fetchAndRender(e){if(this._abort(),this._abortController=new AbortController,!this._contentEl)return;this._cleanupTextInputTimers(),this._contentEl.innerHTML="";const t=this._createLoadingIndicator();this._contentEl.appendChild(t);const n={middlewareUrl:this.config.middlewareUrl},r=nr({source:"qna",locale:this.config.locale});try{const o=this.config.session?.sessionId??"",i={account_id:this.config.accountId,session_id:o,correlation_id:o,sku:e,locale:Xe(this.config.locale)};this.config.session?.userId!==void 0&&(i.user_id=this.config.session.userId),this.config.session?.viewId!==void 0&&(i.view_id=this.config.session.viewId);const a=this.config.pageContext?.pageType;a!==void 0&&(i.page_type=a);const s=await eo(i,n,this._abortController.signal);if(!this._contentEl)return;this._contentEl.innerHTML="";const c=document.createElement("div");c.className="gengage-qna-panel gds-panel",c.dataset.gengagePart="qna-panel",this._contentEl.appendChild(c);const u=this._specIncludesType(s.uiSpecs,"QuestionHeading"),d=this._resolvedQnaHeaderTitle()??(this.config.showStaticQuestion&&this.config.staticQuestionText?this.config.staticQuestionText:void 0);if(!u&&d){const k=document.createElement("h3");k.className="gengage-qna-heading",k.textContent=d,c.appendChild(k)}const g=this.config.inputPlaceholder;let p;if(g!==!0)p=g??this._i18n.defaultInputPlaceholder;else if(s.actions.length>0){const k=s.actions.filter(I=>I.type==="user_message"||I.title.includes("?")).map(I=>I.title);p=k.length>0?k:this._i18n.defaultInputPlaceholder}else p=this._i18n.defaultInputPlaceholder;const f={onAction:this._actionHandler,i18n:this._i18n},h=this._resolvedQnaHeaderTitle();h!==void 0&&(f.headingTitleOverride=h),this.config.hideButtonRowCta||(f.onOpenChat=this._openChatHandler,this.config.ctaText!==void 0&&(f.ctaText=this.config.ctaText)),p!==void 0&&(f.inputPlaceholder=p);const m=this._buildFallbackActionsSpec(s.actions),y=no(this.config.pageContext),w=(s.uiSpecs.length>0?co(s.uiSpecs,this._i18n,{skuList:y}):[m]).filter(k=>Object.keys(k.elements).length>0);for(const k of w){const I=this._renderUISpec(k,f);c.appendChild(I)}w.length>0&&An("qna"),this._specIncludesType(w,"TextInput")||this._insertStandaloneInputBeforePills(c,f,p)}catch(o){if(o instanceof DOMException&&o.name==="AbortError")return;if(Se("gengage:global:error",{source:"qna",code:"FETCH_ERROR",message:Nn(this.config.locale,o)}),this._contentEl){this._cleanupTextInputTimers(),this._contentEl.innerHTML="";const i=document.createElement("div");i.className="gengage-qna-panel",this._contentEl.appendChild(i);const a=this.config.inputPlaceholder===!0?this._i18n.defaultInputPlaceholder:this.config.inputPlaceholder??this._i18n.defaultInputPlaceholder,s={onAction:this._actionHandler,i18n:this._i18n,onOpenChat:this._openChatHandler},c=this._resolvedQnaHeaderTitle();c!==void 0&&(s.headingTitleOverride=c),this.config.ctaText!==void 0&&(s.ctaText=this.config.ctaText),this._appendStandaloneInput(s,a,i)}}finally{r()}}_createLoadingIndicator(){const e=document.createElement("div");e.className="gengage-qna-loading";for(let t=0;t<3;t++){const n=document.createElement("div");n.className="gengage-qna-loading-dot",e.appendChild(n)}return e}_resolveI18n(e){return{...po(e.locale),...e.i18n}}_createChrome(e){const t=e.chrome;if(!t)return null;const n=typeof t.title=="string"?t.title.trim():"",r=typeof t.subtitle=="string"?t.subtitle.trim():"",o=typeof t.startButtonLabel=="string"?t.startButtonLabel.trim():"",i=typeof t.imageUrl=="string"?t.imageUrl.trim():"",a=typeof t.imagePadding=="string"?t.imagePadding.trim():"",s=document.createElement("section");s.className="gengage-qna-chrome",s.dataset.gengagePart="qna-chrome",t.layout==="side-image"&&(s.classList.add("gengage-qna-chrome--side-image"),s.dataset.gengageChromeLayout="side-image"),a&&s.style.setProperty("--gengage-qna-chrome-image-padding",a);const c=document.createElement("div");if(c.className="gengage-qna-chrome-copy",c.dataset.gengagePart="qna-chrome-copy",n){const u=document.createElement("h2");u.className="gengage-qna-chrome-title",u.dataset.gengagePart="qna-chrome-title",u.textContent=n,c.appendChild(u)}if(r){const u=document.createElement("p");u.className="gengage-qna-chrome-subtitle",u.dataset.gengagePart="qna-chrome-subtitle",u.textContent=r,c.appendChild(u)}if(c.children.length>0&&s.appendChild(c),i&&zn(i)){const u=document.createElement("img");u.className="gengage-qna-chrome-image",u.dataset.gengagePart="qna-chrome-image",u.src=i,u.alt=typeof t.imageAlt=="string"?t.imageAlt:"",u.loading="lazy",u.addEventListener("error",()=>{u.style.display="none"},{once:!0}),s.appendChild(u)}if(o){const u=document.createElement("button");u.className="gengage-qna-chrome-start",u.dataset.gengagePart="qna-chrome-start",u.type="button",u.textContent=o,u.addEventListener("click",()=>this._handleOpenChat()),s.appendChild(u)}return s.children.length===0?null:s}_resolveUISpecRegistry(){return wn(_t(),this.config.renderer?.registry)}_renderUISpec(e,t){const n=this._resolveUISpecRegistry(),r=this.config.renderer?.unknownRenderer??xe,o=(a,s)=>yt(a,s,n,r),i=this.config.renderer?.renderUISpec;return i?i(e,t,{registry:n,unknownRenderer:r,defaultRender:o}):o(e,t)}_specIncludesType(e,t){for(const n of e)for(const r of Object.values(n.elements))if(r.type===t)return!0;return!1}_buildFallbackActionsSpec(e){if(e.length===0)return{root:"root",elements:{}};const t={},n=[];for(let r=0;r<e.length;r++){const o=e[r],i=`action-${r}`;n.push(i),t[i]={type:"ActionButton",props:{label:o.title,action:{title:o.title,type:o.type,payload:o.payload}}}}return t.root={type:"ButtonRow",children:n},{root:"root",elements:t}}_insertStandaloneInputBeforePills(e,t,n){const r={root:"root",elements:{root:{type:"TextInput",props:{placeholder:n}}}},o=this._renderUISpec(r,t),i=o.querySelector(".gengage-qna-input-wrapper");if(!i)return;const a=e.querySelector(".gengage-qna-uispec"),s=e.querySelector(".gengage-qna-uispec > .gengage-qna-buttons"),c=this.config.inputAfterPills===!0;if(s)c?s.insertAdjacentElement("afterend",i):s.insertAdjacentElement("beforebegin",i);else if(a){const u=a.querySelector(":scope > .gengage-qna-heading");!c&&u?u.insertAdjacentElement("afterend",i):a.appendChild(i)}else{e.appendChild(o);return}o.remove()}_appendStandaloneInput(e,t,n){if(!this._contentEl)return;const r={root:"root",elements:{root:{type:"TextInput",props:{placeholder:t}}}},o=this._renderUISpec(r,e);(n??this._contentEl).appendChild(o)}_handleAction(e){this._showTransitionIndicator(),Tn(e.title,e.type),this.config.onActionSelected?.(e),setTimeout(()=>Se("gengage:qna:action",e),350)}_handleOpenChat(){this._showTransitionIndicator(),this.config.onOpenChat?.(),setTimeout(()=>Se("gengage:qna:open-chat",{}),350)}_showTransitionIndicator(){if(!this._contentEl)return;this._contentEl.querySelector(".gengage-qna-transition-indicator")?.remove(),this._contentEl.classList.add("gengage-qna--transitioning");const e=this._i18n.redirectingToChat??"Redirecting to chat...",t=document.createElement("div");t.className="gengage-qna-transition-indicator",t.textContent=e,(this._contentEl.querySelector(".gengage-qna-panel")??this._contentEl).appendChild(t),setTimeout(()=>{this._contentEl?.classList.remove("gengage-qna--transitioning"),t.remove()},600)}};function fo(){return new St}var Et;function l(e,t,n){function r(s,c){if(s._zod||Object.defineProperty(s,"_zod",{value:{def:c,constr:a,traits:new Set},enumerable:!1}),s._zod.traits.has(e))return;s._zod.traits.add(e),t(s,c);const u=a.prototype,d=Object.keys(u);for(let g=0;g<d.length;g++){const p=d[g];p in s||(s[p]=u[p].bind(s))}}const o=n?.Parent??Object;class i extends o{}Object.defineProperty(i,"name",{value:e});function a(s){var c;const u=n?.Parent?new i:this;r(u,s),(c=u._zod).deferred??(c.deferred=[]);for(const d of u._zod.deferred)d();return u}return Object.defineProperty(a,"init",{value:r}),Object.defineProperty(a,Symbol.hasInstance,{value:s=>n?.Parent&&s instanceof n.Parent?!0:s?._zod?.traits?.has(e)}),Object.defineProperty(a,"name",{value:e}),a}var G=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},At=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}};(Et=globalThis).__zod_globalConfig??(Et.__zod_globalConfig={});var le=globalThis.__zod_globalConfig;function F(e){return e&&Object.assign(le,e),le}function Tt(e){const t=Object.values(e).filter(n=>typeof n=="number");return Object.entries(e).filter(([n,r])=>t.indexOf(+n)===-1).map(([n,r])=>r)}function Re(e,t){return typeof t=="bigint"?t.toString():t}function Le(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}throw new Error("cached value already set")}}}function Ne(e){return e==null}function qe(e){const t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}var $t=Symbol("evaluating");function b(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==$t)return r===void 0&&(r=$t,r=n()),r},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function H(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function j(...e){const t={};for(const n of e)Object.assign(t,Object.getOwnPropertyDescriptors(n));return Object.defineProperties({},t)}function It(e){return JSON.stringify(e)}function go(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var Pt="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function de(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var ho=Le(()=>{if(le.jitless||typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch{return!1}});function re(e){if(de(e)===!1)return!1;const t=e.constructor;if(t===void 0||typeof t!="function")return!0;const n=t.prototype;return!(de(n)===!1||Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)}function Ct(e){return re(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}var mo=new Set(["string","number","symbol"]);function pe(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function D(e,t,n){const r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function _(e){const t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function _o(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var Mc={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function yo(e,t){const n=e._zod.def,r=n.checks;if(r&&r.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");return D(e,j(e._zod.def,{get shape(){const o={};for(const i in t){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&(o[i]=n.shape[i])}return H(this,"shape",o),o},checks:[]}))}function vo(e,t){const n=e._zod.def,r=n.checks;if(r&&r.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");return D(e,j(e._zod.def,{get shape(){const o={...e._zod.def.shape};for(const i in t){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&delete o[i]}return H(this,"shape",o),o},checks:[]}))}function bo(e,t){if(!re(t))throw new Error("Invalid input to extend: expected a plain object");const n=e._zod.def.checks;if(n&&n.length>0){const r=e._zod.def.shape;for(const o in t)if(Object.getOwnPropertyDescriptor(r,o)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return D(e,j(e._zod.def,{get shape(){const r={...e._zod.def.shape,...t};return H(this,"shape",r),r}}))}function wo(e,t){if(!re(t))throw new Error("Invalid input to safeExtend: expected a plain object");return D(e,j(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t};return H(this,"shape",n),n}}))}function ko(e,t){if(e._zod.def.checks?.length)throw new Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");return D(e,j(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t._zod.def.shape};return H(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]}))}function zo(e,t,n){const r=t._zod.def.checks;if(r&&r.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");return D(t,j(t._zod.def,{get shape(){const o=t._zod.def.shape,i={...o};if(n)for(const a in n){if(!(a in o))throw new Error(`Unrecognized key: "${a}"`);n[a]&&(i[a]=e?new e({type:"optional",innerType:o[a]}):o[a])}else for(const a in o)i[a]=e?new e({type:"optional",innerType:o[a]}):o[a];return H(this,"shape",i),i},checks:[]}))}function So(e,t,n){return D(t,j(t._zod.def,{get shape(){const r=t._zod.def.shape,o={...r};if(n)for(const i in n){if(!(i in o))throw new Error(`Unrecognized key: "${i}"`);n[i]&&(o[i]=new e({type:"nonoptional",innerType:r[i]}))}else for(const i in r)o[i]=new e({type:"nonoptional",innerType:r[i]});return H(this,"shape",o),o}}))}function K(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Eo(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function Ot(e,t){return t.map(n=>{var r;return(r=n).path??(r.path=[]),n.path.unshift(e),n})}function fe(e){return typeof e=="string"?e:e?.message}function J(e,t,n){const r=e.message?e.message:fe(e.inst?._zod.def?.error?.(e))??fe(t?.error?.(e))??fe(n.customError?.(e))??fe(n.localeError?.(e))??"Invalid input",{inst:o,continue:i,input:a,...s}=e;return s.path??(s.path=[]),s.message=r,t?.reportInput&&(s.input=a),s}function je(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function oe(...e){const[t,n,r]=e;return typeof t=="string"?{message:t,code:"custom",input:n,inst:r}:{...t}}var Zt=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,Re,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},xt=l("$ZodError",Zt),Rt=l("$ZodError",Zt,{Parent:Error});function Ao(e,t=n=>n.message){const n={},r=[];for(const o of e.issues)o.path.length>0?(n[o.path[0]]=n[o.path[0]]||[],n[o.path[0]].push(t(o))):r.push(t(o));return{formErrors:r,fieldErrors:n}}function To(e,t=n=>n.message){const n={_errors:[]},r=(o,i=[])=>{for(const a of o.issues)if(a.code==="invalid_union"&&a.errors.length)a.errors.map(s=>r({issues:s},[...i,...a.path]));else if(a.code==="invalid_key")r({issues:a.issues},[...i,...a.path]);else if(a.code==="invalid_element")r({issues:a.issues},[...i,...a.path]);else{const s=[...i,...a.path];if(s.length===0)n._errors.push(t(a));else{let c=n,u=0;for(;u<s.length;){const d=s[u];u!==s.length-1?c[d]=c[d]||{_errors:[]}:(c[d]=c[d]||{_errors:[]},c[d]._errors.push(t(a))),c=c[d],u++}}}};return r(e),n}var De=e=>(t,n,r,o)=>{const i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new G;if(a.issues.length){const s=new(o?.Err??e)(a.issues.map(c=>J(c,i,F())));throw Pt(s,o?.callee),s}return a.value},Ue=e=>async(t,n,r,o)=>{const i=r?{...r,async:!0}:{async:!0};let a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise&&(a=await a),a.issues.length){const s=new(o?.Err??e)(a.issues.map(c=>J(c,i,F())));throw Pt(s,o?.callee),s}return a.value},ge=e=>(t,n,r)=>{const o=r?{...r,async:!1}:{async:!1},i=t._zod.run({value:n,issues:[]},o);if(i instanceof Promise)throw new G;return i.issues.length?{success:!1,error:new(e??xt)(i.issues.map(a=>J(a,o,F())))}:{success:!0,data:i.value}},$o=ge(Rt),he=e=>async(t,n,r)=>{const o=r?{...r,async:!0}:{async:!0};let i=t._zod.run({value:n,issues:[]},o);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new e(i.issues.map(a=>J(a,o,F())))}:{success:!0,data:i.value}},Io=he(Rt),Po=e=>(t,n,r)=>{const o=r?{...r,direction:"backward"}:{direction:"backward"};return De(e)(t,n,o)},Co=e=>(t,n,r)=>De(e)(t,n,r),Oo=e=>async(t,n,r)=>{const o=r?{...r,direction:"backward"}:{direction:"backward"};return Ue(e)(t,n,o)},Zo=e=>async(t,n,r)=>Ue(e)(t,n,r),xo=e=>(t,n,r)=>{const o=r?{...r,direction:"backward"}:{direction:"backward"};return ge(e)(t,n,o)},Ro=e=>(t,n,r)=>ge(e)(t,n,r),Lo=e=>async(t,n,r)=>{const o=r?{...r,direction:"backward"}:{direction:"backward"};return he(e)(t,n,o)},No=e=>async(t,n,r)=>he(e)(t,n,r),qo=/^[cC][0-9a-z]{6,}$/,jo=/^[0-9a-z]+$/,Do=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Uo=/^[0-9a-vA-V]{20}$/,Bo=/^[A-Za-z0-9]{27}$/,Mo=/^[a-zA-Z0-9_-]{21}$/,Fo=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Ho=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Lt=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,Jo=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Qo="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Wo(){return new RegExp(Qo,"u")}var Vo=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Go=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,Ko=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Yo=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Xo=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Nt=/^[A-Za-z0-9_-]*$/,ei=/^https?$/,ti=/^\+[1-9]\d{6,14}$/,qt="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",ni=new RegExp(`^${qt}$`);function jt(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function ri(e){return new RegExp(`^${jt(e)}$`)}function oi(e){const t=jt({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const r=`${t}(?:${n.join("|")})`;return new RegExp(`^${qt}T(?:${r})$`)}var ii=e=>{const t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},ai=/^(?:true|false)$/i,si=/^[^A-Z]*$/,ci=/^[^a-z]*$/,L=l("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),ui=l("$ZodCheckMaxLength",(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=r=>{const o=r.value;return!Ne(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<o&&(r._zod.bag.maximum=t.maximum)}),e._zod.check=r=>{const o=r.value;if(o.length<=t.maximum)return;const i=je(o);r.issues.push({origin:i,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),li=l("$ZodCheckMinLength",(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=r=>{const o=r.value;return!Ne(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>o&&(r._zod.bag.minimum=t.minimum)}),e._zod.check=r=>{const o=r.value;if(o.length>=t.minimum)return;const i=je(o);r.issues.push({origin:i,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),di=l("$ZodCheckLengthEquals",(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=r=>{const o=r.value;return!Ne(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=r=>{const o=r.value,i=o.length;if(i===t.length)return;const a=je(o),s=i>t.length;r.issues.push({origin:a,...s?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),me=l("$ZodCheckStringFormat",(e,t)=>{var n,r;L.init(e,t),e._zod.onattach.push(o=>{const i=o._zod.bag;i.format=t.format,t.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=o=>{t.pattern.lastIndex=0,!t.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),pi=l("$ZodCheckRegex",(e,t)=>{me.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),fi=l("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=si),me.init(e,t)}),gi=l("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=ci),me.init(e,t)}),hi=l("$ZodCheckIncludes",(e,t)=>{L.init(e,t);const n=pe(t.includes),r=new RegExp(typeof t.position=="number"?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(o=>{const i=o._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),e._zod.check=o=>{o.value.includes(t.includes,t.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),mi=l("$ZodCheckStartsWith",(e,t)=>{L.init(e,t);const n=new RegExp(`^${pe(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push(r=>{const o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=r=>{r.value.startsWith(t.prefix)||r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:r.value,inst:e,continue:!t.abort})}}),_i=l("$ZodCheckEndsWith",(e,t)=>{L.init(e,t);const n=new RegExp(`.*${pe(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push(r=>{const o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=r=>{r.value.endsWith(t.suffix)||r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:r.value,inst:e,continue:!t.abort})}}),yi=l("$ZodCheckOverwrite",(e,t)=>{L.init(e,t),e._zod.check=n=>{n.value=t.tx(n.value)}}),vi=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}const t=e.split(`
49
49
  `).filter(o=>o),n=Math.min(...t.map(o=>o.length-o.trimStart().length)),r=t.map(o=>o.slice(n)).map(o=>" ".repeat(this.indent*2)+o);for(const o of r)this.content.push(o)}compile(){const e=Function,t=this?.args,n=[...(this?.content??[""]).map(r=>` ${r}`)];return new e(...t,n.join(`
50
- `))}},wi={major:4,minor:4,patch:3},A=l("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=wi;const r=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&r.unshift(e);for(const o of r)for(const i of o._zod.onattach)i(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{const o=(a,s,c)=>{let u=K(a),d;for(const g of s){if(g._zod.def.when){if(Ao(a)||!g._zod.def.when(a))continue}else if(u)continue;const f=a.issues.length,p=g._zod.check(a);if(p instanceof Promise&&c?.async===!1)throw new G;if(d||p instanceof Promise)d=(d??Promise.resolve()).then(async()=>{await p,a.issues.length!==f&&(u||(u=K(a,f)))});else{if(a.issues.length===f)continue;u||(u=K(a,f))}}return d?d.then(()=>a):a},i=(a,s,c)=>{if(K(a))return a.aborted=!0,a;const u=o(s,r,c);if(u instanceof Promise){if(c.async===!1)throw new G;return u.then(d=>e._zod.parse(d,c))}return e._zod.parse(u,c)};e._zod.run=(a,s)=>{if(s.skipChecks)return e._zod.parse(a,s);if(s.direction==="backward"){const u=e._zod.parse({value:a.value,issues:[]},{...s,skipChecks:!0});return u instanceof Promise?u.then(d=>i(d,a,s)):i(u,a,s)}const c=e._zod.parse(a,s);if(c instanceof Promise){if(s.async===!1)throw new G;return c.then(u=>o(u,r,s))}return o(c,r,s)}}b(e,"~standard",()=>({validate:o=>{try{const i=Io(e,o);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return Po(e,o).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}))}),Be=l("$ZodString",(e,t)=>{A.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??ai(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value=="string"||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),k=l("$ZodStringFormat",(e,t)=>{me.init(e,t),Be.init(e,t)}),ki=l("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=Jo),k.init(e,t)}),zi=l("$ZodUUID",(e,t)=>{if(t.version){const n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=Rt(n))}else t.pattern??(t.pattern=Rt());k.init(e,t)}),Si=l("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=Qo),k.init(e,t)}),Ei=l("$ZodURL",(e,t)=>{k.init(e,t),e._zod.check=n=>{try{const r=n.value.trim();if(!t.normalize&&t.protocol?.source===ti.source&&!/^https?:\/\//i.test(r)){n.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:n.value,inst:e,continue:!t.abort});return}const o=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(o.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=o.href:n.value=r;return}catch{n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),Ai=l("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=Vo()),k.init(e,t)}),Ti=l("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=Fo),k.init(e,t)}),$i=l("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=jo),k.init(e,t)}),Ii=l("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Do),k.init(e,t)}),Pi=l("$ZodULID",(e,t)=>{t.pattern??(t.pattern=Uo),k.init(e,t)}),Ci=l("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Bo),k.init(e,t)}),Oi=l("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=Mo),k.init(e,t)}),Zi=l("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=ii(t)),k.init(e,t)}),xi=l("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=ri),k.init(e,t)}),Ri=l("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=oi(t)),k.init(e,t)}),Li=l("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Ho),k.init(e,t)}),Ni=l("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Go),k.init(e,t),e._zod.bag.format="ipv4"}),qi=l("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Ko),k.init(e,t),e._zod.bag.format="ipv6",e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),ji=l("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Yo),k.init(e,t)}),Di=l("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Xo),k.init(e,t),e._zod.check=n=>{const r=n.value.split("/");try{if(r.length!==2)throw new Error;const[o,i]=r;if(!i)throw new Error;const a=Number(i);if(`${a}`!==i)throw new Error;if(a<0||a>128)throw new Error;new URL(`http://[${o}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});function jt(e){if(e==="")return!0;if(/\s/.test(e)||e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var Ui=l("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=ei),k.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=n=>{jt(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});function Bi(e){if(!Lt.test(e))return!1;const t=e.replace(/[-_]/g,n=>n==="-"?"+":"/");return jt(t.padEnd(Math.ceil(t.length/4)*4,"="))}var Mi=l("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Lt),k.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=n=>{Bi(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),Fi=l("$ZodE164",(e,t)=>{t.pattern??(t.pattern=ni),k.init(e,t)});function Hi(e,t=null){try{const n=e.split(".");if(n.length!==3)return!1;const[r]=n;if(!r)return!1;const o=JSON.parse(atob(r));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||t&&(!("alg"in o)||o.alg!==t))}catch{return!1}}var Ji=l("$ZodJWT",(e,t)=>{k.init(e,t),e._zod.check=n=>{Hi(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),Qi=l("$ZodBoolean",(e,t)=>{A.init(e,t),e._zod.pattern=si,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}const o=n.value;return typeof o=="boolean"||n.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),n}}),Wi=l("$ZodUnknown",(e,t)=>{A.init(e,t),e._zod.parse=n=>n}),Vi=l("$ZodNever",(e,t)=>{A.init(e,t),e._zod.parse=(n,r)=>(n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n)});function Dt(e,t,n){e.issues.length&&t.issues.push(...Ct(n,e.issues)),t.value[n]=e.value}var Gi=l("$ZodArray",(e,t)=>{A.init(e,t),e._zod.parse=(n,r)=>{const o=n.value;if(!Array.isArray(o))return n.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),n;n.value=Array(o.length);const i=[];for(let a=0;a<o.length;a++){const s=o[a],c=t.element._zod.run({value:s,issues:[]},r);c instanceof Promise?i.push(c.then(u=>Dt(u,n,a))):Dt(c,n,a)}return i.length?Promise.all(i).then(()=>n):n}});function _e(e,t,n,r,o,i){const a=n in r;if(e.issues.length){if(o&&i&&!a)return;t.issues.push(...Ct(n,e.issues))}if(!a&&!o){e.issues.length||t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[n]});return}e.value===void 0?a&&(t.value[n]=void 0):t.value[n]=e.value}function Ut(e){const t=Object.keys(e.shape);for(const r of t)if(!e.shape?.[r]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${r}": expected a Zod schema`);const n=yo(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function Bt(e,t,n,r,o,i){const a=[],s=o.keySet,c=o.catchall._zod,u=c.def.type,d=c.optin==="optional",g=c.optout==="optional";for(const f in t){if(f==="__proto__"||s.has(f))continue;if(u==="never"){a.push(f);continue}const p=c.run({value:t[f],issues:[]},r);p instanceof Promise?e.push(p.then(h=>_e(h,n,f,t,d,g))):_e(p,n,f,t,d,g)}return a.length&&n.issues.push({code:"unrecognized_keys",keys:a,input:t,inst:i}),e.length?Promise.all(e).then(()=>n):n}var Ki=l("$ZodObject",(e,t)=>{if(A.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){const a=t.shape;Object.defineProperty(t,"shape",{get:()=>{const s={...a};return Object.defineProperty(t,"shape",{value:s}),s}})}const n=Le(()=>Ut(t));b(e._zod,"propValues",()=>{const a=t.shape,s={};for(const c in a){const u=a[c]._zod;if(u.values){s[c]??(s[c]=new Set);for(const d of u.values)s[c].add(d)}}return s});const r=de,o=t.catchall;let i;e._zod.parse=(a,s)=>{i??(i=n.value);const c=a.value;if(!r(c))return a.issues.push({expected:"object",code:"invalid_type",input:c,inst:e}),a;a.value={};const u=[],d=i.shape;for(const g of i.keys){const f=d[g],p=f._zod.optin==="optional",h=f._zod.optout==="optional",m=f._zod.run({value:c[g],issues:[]},s);m instanceof Promise?u.push(m.then(v=>_e(v,a,g,c,p,h))):_e(m,a,g,c,p,h)}return o?Bt(u,c,a,s,n.value,e):u.length?Promise.all(u).then(()=>a):a}}),Yi=l("$ZodObjectJIT",(e,t)=>{Ki.init(e,t);const n=e._zod.parse,r=Le(()=>Ut(t)),o=f=>{const p=new bi(["shape","payload","ctx"]),h=r.value,m=I=>{const E=$t(I);return`shape[${E}]._zod.run({ value: input[${E}], issues: [] }, ctx)`};p.write("const input = payload.value;");const v=Object.create(null);let S=0;for(const I of h.keys)v[I]=`key_${S++}`;p.write("const newResult = {};");for(const I of h.keys){const E=v[I],P=$t(I),mn=f[I],_n=mn?._zod?.optin==="optional",Mc=mn?._zod?.optout==="optional";p.write(`const ${E} = ${m(I)};`),_n&&Mc?p.write(`
50
+ `))}},bi={major:4,minor:4,patch:3},A=l("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=bi;const r=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&r.unshift(e);for(const o of r)for(const i of o._zod.onattach)i(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{const o=(a,s,c)=>{let u=K(a),d;for(const g of s){if(g._zod.def.when){if(Eo(a)||!g._zod.def.when(a))continue}else if(u)continue;const p=a.issues.length,f=g._zod.check(a);if(f instanceof Promise&&c?.async===!1)throw new G;if(d||f instanceof Promise)d=(d??Promise.resolve()).then(async()=>{await f,a.issues.length!==p&&(u||(u=K(a,p)))});else{if(a.issues.length===p)continue;u||(u=K(a,p))}}return d?d.then(()=>a):a},i=(a,s,c)=>{if(K(a))return a.aborted=!0,a;const u=o(s,r,c);if(u instanceof Promise){if(c.async===!1)throw new G;return u.then(d=>e._zod.parse(d,c))}return e._zod.parse(u,c)};e._zod.run=(a,s)=>{if(s.skipChecks)return e._zod.parse(a,s);if(s.direction==="backward"){const u=e._zod.parse({value:a.value,issues:[]},{...s,skipChecks:!0});return u instanceof Promise?u.then(d=>i(d,a,s)):i(u,a,s)}const c=e._zod.parse(a,s);if(c instanceof Promise){if(s.async===!1)throw new G;return c.then(u=>o(u,r,s))}return o(c,r,s)}}b(e,"~standard",()=>({validate:o=>{try{const i=$o(e,o);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return Io(e,o).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}))}),Be=l("$ZodString",(e,t)=>{A.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??ii(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value=="string"||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),z=l("$ZodStringFormat",(e,t)=>{me.init(e,t),Be.init(e,t)}),wi=l("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=Ho),z.init(e,t)}),ki=l("$ZodUUID",(e,t)=>{if(t.version){const n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=Lt(n))}else t.pattern??(t.pattern=Lt());z.init(e,t)}),zi=l("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=Jo),z.init(e,t)}),Si=l("$ZodURL",(e,t)=>{z.init(e,t),e._zod.check=n=>{try{const r=n.value.trim();if(!t.normalize&&t.protocol?.source===ei.source&&!/^https?:\/\//i.test(r)){n.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:n.value,inst:e,continue:!t.abort});return}const o=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(o.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=o.href:n.value=r;return}catch{n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),Ei=l("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=Wo()),z.init(e,t)}),Ai=l("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=Mo),z.init(e,t)}),Ti=l("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=qo),z.init(e,t)}),$i=l("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=jo),z.init(e,t)}),Ii=l("$ZodULID",(e,t)=>{t.pattern??(t.pattern=Do),z.init(e,t)}),Pi=l("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Uo),z.init(e,t)}),Ci=l("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=Bo),z.init(e,t)}),Oi=l("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=oi(t)),z.init(e,t)}),Zi=l("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=ni),z.init(e,t)}),xi=l("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=ri(t)),z.init(e,t)}),Ri=l("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Fo),z.init(e,t)}),Li=l("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Vo),z.init(e,t),e._zod.bag.format="ipv4"}),Ni=l("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Go),z.init(e,t),e._zod.bag.format="ipv6",e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),qi=l("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Ko),z.init(e,t)}),ji=l("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Yo),z.init(e,t),e._zod.check=n=>{const r=n.value.split("/");try{if(r.length!==2)throw new Error;const[o,i]=r;if(!i)throw new Error;const a=Number(i);if(`${a}`!==i)throw new Error;if(a<0||a>128)throw new Error;new URL(`http://[${o}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});function Dt(e){if(e==="")return!0;if(/\s/.test(e)||e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var Di=l("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=Xo),z.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=n=>{Dt(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});function Ui(e){if(!Nt.test(e))return!1;const t=e.replace(/[-_]/g,n=>n==="-"?"+":"/");return Dt(t.padEnd(Math.ceil(t.length/4)*4,"="))}var Bi=l("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Nt),z.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=n=>{Ui(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),Mi=l("$ZodE164",(e,t)=>{t.pattern??(t.pattern=ti),z.init(e,t)});function Fi(e,t=null){try{const n=e.split(".");if(n.length!==3)return!1;const[r]=n;if(!r)return!1;const o=JSON.parse(atob(r));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||t&&(!("alg"in o)||o.alg!==t))}catch{return!1}}var Hi=l("$ZodJWT",(e,t)=>{z.init(e,t),e._zod.check=n=>{Fi(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),Ji=l("$ZodBoolean",(e,t)=>{A.init(e,t),e._zod.pattern=ai,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}const o=n.value;return typeof o=="boolean"||n.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),n}}),Qi=l("$ZodUnknown",(e,t)=>{A.init(e,t),e._zod.parse=n=>n}),Wi=l("$ZodNever",(e,t)=>{A.init(e,t),e._zod.parse=(n,r)=>(n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n)});function Ut(e,t,n){e.issues.length&&t.issues.push(...Ot(n,e.issues)),t.value[n]=e.value}var Vi=l("$ZodArray",(e,t)=>{A.init(e,t),e._zod.parse=(n,r)=>{const o=n.value;if(!Array.isArray(o))return n.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),n;n.value=Array(o.length);const i=[];for(let a=0;a<o.length;a++){const s=o[a],c=t.element._zod.run({value:s,issues:[]},r);c instanceof Promise?i.push(c.then(u=>Ut(u,n,a))):Ut(c,n,a)}return i.length?Promise.all(i).then(()=>n):n}});function _e(e,t,n,r,o,i){const a=n in r;if(e.issues.length){if(o&&i&&!a)return;t.issues.push(...Ot(n,e.issues))}if(!a&&!o){e.issues.length||t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[n]});return}e.value===void 0?a&&(t.value[n]=void 0):t.value[n]=e.value}function Bt(e){const t=Object.keys(e.shape);for(const r of t)if(!e.shape?.[r]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${r}": expected a Zod schema`);const n=_o(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function Mt(e,t,n,r,o,i){const a=[],s=o.keySet,c=o.catchall._zod,u=c.def.type,d=c.optin==="optional",g=c.optout==="optional";for(const p in t){if(p==="__proto__"||s.has(p))continue;if(u==="never"){a.push(p);continue}const f=c.run({value:t[p],issues:[]},r);f instanceof Promise?e.push(f.then(h=>_e(h,n,p,t,d,g))):_e(f,n,p,t,d,g)}return a.length&&n.issues.push({code:"unrecognized_keys",keys:a,input:t,inst:i}),e.length?Promise.all(e).then(()=>n):n}var Gi=l("$ZodObject",(e,t)=>{if(A.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){const a=t.shape;Object.defineProperty(t,"shape",{get:()=>{const s={...a};return Object.defineProperty(t,"shape",{value:s}),s}})}const n=Le(()=>Bt(t));b(e._zod,"propValues",()=>{const a=t.shape,s={};for(const c in a){const u=a[c]._zod;if(u.values){s[c]??(s[c]=new Set);for(const d of u.values)s[c].add(d)}}return s});const r=de,o=t.catchall;let i;e._zod.parse=(a,s)=>{i??(i=n.value);const c=a.value;if(!r(c))return a.issues.push({expected:"object",code:"invalid_type",input:c,inst:e}),a;a.value={};const u=[],d=i.shape;for(const g of i.keys){const p=d[g],f=p._zod.optin==="optional",h=p._zod.optout==="optional",m=p._zod.run({value:c[g],issues:[]},s);m instanceof Promise?u.push(m.then(y=>_e(y,a,g,c,f,h))):_e(m,a,g,c,f,h)}return o?Mt(u,c,a,s,n.value,e):u.length?Promise.all(u).then(()=>a):a}}),Ki=l("$ZodObjectJIT",(e,t)=>{Gi.init(e,t);const n=e._zod.parse,r=Le(()=>Bt(t)),o=p=>{const f=new vi(["shape","payload","ctx"]),h=r.value,m=I=>{const E=It(I);return`shape[${E}]._zod.run({ value: input[${E}], issues: [] }, ctx)`};f.write("const input = payload.value;");const y=Object.create(null);let w=0;for(const I of h.keys)y[I]=`key_${w++}`;f.write("const newResult = {};");for(const I of h.keys){const E=y[I],P=It(I),_n=p[I],yn=_n?._zod?.optin==="optional",Bc=_n?._zod?.optout==="optional";f.write(`const ${E} = ${m(I)};`),yn&&Bc?f.write(`
51
51
  if (${E}.issues.length) {
52
52
  if (${P} in input) {
53
53
  payload.issues = payload.issues.concat(${E}.issues.map(iss => ({
@@ -65,7 +65,7 @@
65
65
  newResult[${P}] = ${E}.value;
66
66
  }
67
67
 
68
- `):_n?p.write(`
68
+ `):yn?f.write(`
69
69
  if (${E}.issues.length) {
70
70
  payload.issues = payload.issues.concat(${E}.issues.map(iss => ({
71
71
  ...iss,
@@ -81,7 +81,7 @@
81
81
  newResult[${P}] = ${E}.value;
82
82
  }
83
83
 
84
- `):p.write(`
84
+ `):f.write(`
85
85
  const ${E}_present = ${P} in input;
86
86
  if (${E}.issues.length) {
87
87
  payload.issues = payload.issues.concat(${E}.issues.map(iss => ({
@@ -106,6 +106,6 @@
106
106
  }
107
107
  }
108
108
 
109
- `)}p.write("payload.value = newResult;"),p.write("return payload;");const w=p.compile();return(I,E)=>w(f,I,E)};let i;const a=de,s=!le.jitless,u=s&&mo.value,d=t.catchall;let g;e._zod.parse=(f,p)=>{g??(g=r.value);const h=f.value;return a(h)?s&&u&&p?.async===!1&&p.jitless!==!0?(i||(i=o(t.shape)),f=i(f,p),d?Bt([],h,f,p,g,e):f):n(f,p):(f.issues.push({expected:"object",code:"invalid_type",input:h,inst:e}),f)}});function Mt(e,t,n,r){for(const i of e)if(i.issues.length===0)return t.value=i.value,t;const o=e.filter(i=>!K(i));return o.length===1?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map(i=>i.issues.map(a=>J(a,r,F())))}),t)}var Xi=l("$ZodUnion",(e,t)=>{A.init(e,t),b(e._zod,"optin",()=>t.options.some(r=>r._zod.optin==="optional")?"optional":void 0),b(e._zod,"optout",()=>t.options.some(r=>r._zod.optout==="optional")?"optional":void 0),b(e._zod,"values",()=>{if(t.options.every(r=>r._zod.values))return new Set(t.options.flatMap(r=>Array.from(r._zod.values)))}),b(e._zod,"pattern",()=>{if(t.options.every(r=>r._zod.pattern)){const r=t.options.map(o=>o._zod.pattern);return new RegExp(`^(${r.map(o=>qe(o.source)).join("|")})$`)}});const n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,o)=>{if(n)return n(r,o);let i=!1;const a=[];for(const s of t.options){const c=s._zod.run({value:r.value,issues:[]},o);if(c instanceof Promise)a.push(c),i=!0;else{if(c.issues.length===0)return c;a.push(c)}}return i?Promise.all(a).then(s=>Mt(s,r,e,o)):Mt(a,r,e,o)}}),ea=l("$ZodIntersection",(e,t)=>{A.init(e,t),e._zod.parse=(n,r)=>{const o=n.value,i=t.left._zod.run({value:o,issues:[]},r),a=t.right._zod.run({value:o,issues:[]},r);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([s,c])=>Ft(n,s,c)):Ft(n,i,a)}});function Me(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(re(e)&&re(t)){const n=Object.keys(t),r=Object.keys(e).filter(i=>n.indexOf(i)!==-1),o={...e,...t};for(const i of r){const a=Me(e[i],t[i]);if(!a.valid)return{valid:!1,mergeErrorPath:[i,...a.mergeErrorPath]};o[i]=a.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const n=[];for(let r=0;r<e.length;r++){const o=e[r],i=t[r],a=Me(o,i);if(!a.valid)return{valid:!1,mergeErrorPath:[r,...a.mergeErrorPath]};n.push(a.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function Ft(e,t,n){const r=new Map;let o;for(const s of t.issues)if(s.code==="unrecognized_keys"){o??(o=s);for(const c of s.keys)r.has(c)||r.set(c,{}),r.get(c).l=!0}else e.issues.push(s);for(const s of n.issues)if(s.code==="unrecognized_keys")for(const c of s.keys)r.has(c)||r.set(c,{}),r.get(c).r=!0;else e.issues.push(s);const i=[...r].filter(([,s])=>s.l&&s.r).map(([s])=>s);if(i.length&&o&&e.issues.push({...o,keys:i}),K(e))return e;const a=Me(t.value,n.value);if(!a.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(a.mergeErrorPath)}`);return e.value=a.data,e}var ta=l("$ZodEnum",(e,t)=>{A.init(e,t);const n=At(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=new RegExp(`^(${n.filter(o=>_o.has(typeof o)).map(o=>typeof o=="string"?pe(o):o.toString()).join("|")})$`),e._zod.parse=(o,i)=>{const a=o.value;return r.has(a)||o.issues.push({code:"invalid_value",values:n,input:a,inst:e}),o}}),na=l("$ZodTransform",(e,t)=>{A.init(e,t),e._zod.optin="optional",e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new Et(e.constructor.name);const o=t.transform(n.value,n);if(r.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(n.value=i,n.fallback=!0,n));if(o instanceof Promise)throw new G;return n.value=o,n.fallback=!0,n}});function Ht(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}var Jt=l("$ZodOptional",(e,t)=>{A.init(e,t),e._zod.optin="optional",e._zod.optout="optional",b(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),b(e._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${qe(n.source)})?$`):void 0}),e._zod.parse=(n,r)=>{if(t.innerType._zod.optin==="optional"){const o=n.value,i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(a=>Ht(a,o)):Ht(i,o)}return n.value===void 0?n:t.innerType._zod.run(n,r)}}),ra=l("$ZodExactOptional",(e,t)=>{Jt.init(e,t),b(e._zod,"values",()=>t.innerType._zod.values),b(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(n,r)=>t.innerType._zod.run(n,r)}),oa=l("$ZodNullable",(e,t)=>{A.init(e,t),b(e._zod,"optin",()=>t.innerType._zod.optin),b(e._zod,"optout",()=>t.innerType._zod.optout),b(e._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${qe(n.source)}|null)$`):void 0}),b(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(n,r)=>n.value===null?n:t.innerType._zod.run(n,r)}),ia=l("$ZodDefault",(e,t)=>{A.init(e,t),e._zod.optin="optional",b(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);if(n.value===void 0)return n.value=t.defaultValue,n;const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(i=>Qt(i,t)):Qt(o,t)}});function Qt(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var aa=l("$ZodPrefault",(e,t)=>{A.init(e,t),e._zod.optin="optional",b(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>(r.direction==="backward"||n.value===void 0&&(n.value=t.defaultValue),t.innerType._zod.run(n,r))}),sa=l("$ZodNonOptional",(e,t)=>{A.init(e,t),b(e._zod,"values",()=>{const n=t.innerType._zod.values;return n?new Set([...n].filter(r=>r!==void 0)):void 0}),e._zod.parse=(n,r)=>{const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(i=>Wt(i,e)):Wt(o,e)}});function Wt(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}var ca=l("$ZodCatch",(e,t)=>{A.init(e,t),e._zod.optin="optional",b(e._zod,"optout",()=>t.innerType._zod.optout),b(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(i=>(n.value=i.value,i.issues.length&&(n.value=t.catchValue({...n,error:{issues:i.issues.map(a=>J(a,r,F()))},input:n.value}),n.issues=[],n.fallback=!0),n)):(n.value=o.value,o.issues.length&&(n.value=t.catchValue({...n,error:{issues:o.issues.map(i=>J(i,r,F()))},input:n.value}),n.issues=[],n.fallback=!0),n)}}),ua=l("$ZodPipe",(e,t)=>{A.init(e,t),b(e._zod,"values",()=>t.in._zod.values),b(e._zod,"optin",()=>t.in._zod.optin),b(e._zod,"optout",()=>t.out._zod.optout),b(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,r)=>{if(r.direction==="backward"){const i=t.out._zod.run(n,r);return i instanceof Promise?i.then(a=>ye(a,t.in,r)):ye(i,t.in,r)}const o=t.in._zod.run(n,r);return o instanceof Promise?o.then(i=>ye(i,t.out,r)):ye(o,t.out,r)}});function ye(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}var la=l("$ZodReadonly",(e,t)=>{A.init(e,t),b(e._zod,"propValues",()=>t.innerType._zod.propValues),b(e._zod,"values",()=>t.innerType._zod.values),b(e._zod,"optin",()=>t.innerType?._zod?.optin),b(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(Vt):Vt(o)}});function Vt(e){return e.value=Object.freeze(e.value),e}var da=l("$ZodCustom",(e,t)=>{L.init(e,t),A.init(e,t),e._zod.parse=(n,r)=>n,e._zod.check=n=>{const r=n.value,o=t.fn(r);if(o instanceof Promise)return o.then(i=>Gt(i,n,r,e));Gt(o,n,r,e)}});function Gt(e,t,n,r){if(!e){const o={code:"custom",input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(o.params=r._zod.def.params),t.issues.push(oe(o))}}var Kt,pa=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){const n=t[0];return this._map.set(e,n),n&&typeof n=="object"&&"id"in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){const t=this._map.get(e);return t&&typeof t=="object"&&"id"in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){const t=e._zod.parent;if(t){const n={...this.get(t)??{}};delete n.id;const r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function fa(){return new pa}(Kt=globalThis).__zod_globalRegistry??(Kt.__zod_globalRegistry=fa());var ie=globalThis.__zod_globalRegistry;function ga(e,t){return new e({type:"string",..._(t)})}function ha(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,..._(t)})}function Yt(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,..._(t)})}function ma(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,..._(t)})}function _a(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",..._(t)})}function ya(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",..._(t)})}function va(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",..._(t)})}function ba(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,..._(t)})}function wa(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,..._(t)})}function ka(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,..._(t)})}function za(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,..._(t)})}function Sa(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,..._(t)})}function Ea(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,..._(t)})}function Aa(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,..._(t)})}function Ta(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,..._(t)})}function $a(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,..._(t)})}function Ia(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,..._(t)})}function Pa(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,..._(t)})}function Ca(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,..._(t)})}function Oa(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,..._(t)})}function Za(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,..._(t)})}function xa(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,..._(t)})}function Ra(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,..._(t)})}function La(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,..._(t)})}function Na(e,t){return new e({type:"string",format:"date",check:"string_format",..._(t)})}function qa(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,..._(t)})}function ja(e,t){return new e({type:"string",format:"duration",check:"string_format",..._(t)})}function Da(e,t){return new e({type:"boolean",..._(t)})}function Ua(e){return new e({type:"unknown"})}function Ba(e,t){return new e({type:"never",..._(t)})}function Xt(e,t){return new li({check:"max_length",..._(t),maximum:e})}function ve(e,t){return new di({check:"min_length",..._(t),minimum:e})}function en(e,t){return new pi({check:"length_equals",..._(t),length:e})}function Ma(e,t){return new fi({check:"string_format",format:"regex",..._(t),pattern:e})}function Fa(e){return new gi({check:"string_format",format:"lowercase",..._(e)})}function Ha(e){return new hi({check:"string_format",format:"uppercase",..._(e)})}function Ja(e,t){return new mi({check:"string_format",format:"includes",..._(t),includes:e})}function Qa(e,t){return new _i({check:"string_format",format:"starts_with",..._(t),prefix:e})}function Wa(e,t){return new yi({check:"string_format",format:"ends_with",..._(t),suffix:e})}function Y(e){return new vi({check:"overwrite",tx:e})}function Va(e){return Y(t=>t.normalize(e))}function Ga(){return Y(e=>e.trim())}function Ka(){return Y(e=>e.toLowerCase())}function Ya(){return Y(e=>e.toUpperCase())}function Xa(){return Y(e=>ho(e))}function es(e,t,n){return new e({type:"array",element:t,..._(n)})}function ts(e,t,n){return new e({type:"custom",check:"custom",fn:t,..._(n)})}function ns(e,t){const n=rs(r=>(r.addIssue=o=>{if(typeof o=="string")r.issues.push(oe(o,r.value,n._zod.def));else{const i=o;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=n),i.continue??(i.continue=!n._zod.def.abort),r.issues.push(oe(i))}},e(r.value,r)),t);return n}function rs(e,t){const n=new L({check:"custom",..._(t)});return n._zod.check=e,n}function tn(e){let t=e?.target??"draft-2020-12";return t==="draft-4"&&(t="draft-04"),t==="draft-7"&&(t="draft-07"),{processors:e.processors??{},metadataRegistry:e?.metadata??ie,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,cycles:e?.cycles??"ref",reused:e?.reused??"inline",external:e?.external??void 0}}function $(e,t,n={path:[],schemaPath:[]}){var r;const o=e._zod.def,i=t.seen.get(e);if(i)return i.count++,n.schemaPath.includes(e)&&(i.cycle=n.path),i.schema;const a={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,a);const s=e._zod.toJSONSchema?.();if(s)a.schema=s;else{const u={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,a.schema,u);else{const g=a.schema,f=t.processors[o.type];if(!f)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);f(e,t,g,u)}const d=e._zod.parent;d&&(a.ref||(a.ref=d),$(d,t,u),t.seen.get(d).isParent=!0)}const c=t.metadataRegistry.get(e);return c&&Object.assign(a.schema,c),t.io==="input"&&O(e)&&(delete a.schema.examples,delete a.schema.default),t.io==="input"&&"_prefault"in a.schema&&((r=a.schema).default??(r.default=a.schema._prefault)),delete a.schema._prefault,t.seen.get(e).schema}function nn(e,t){const n=e.seen.get(t);if(!n)throw new Error("Unprocessed schema. This is a bug in Zod.");const r=new Map;for(const a of e.seen.entries()){const s=e.metadataRegistry.get(a[0])?.id;if(s){const c=r.get(s);if(c&&c!==a[0])throw new Error(`Duplicate schema id "${s}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(s,a[0])}}const o=a=>{const s=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){const d=e.external.registry.get(a[0])?.id,g=e.external.uri??(p=>p);if(d)return{ref:g(d)};const f=a[1].defId??a[1].schema.id??`schema${e.counter++}`;return a[1].defId=f,{defId:f,ref:`${g("__shared")}#/${s}/${f}`}}if(a[1]===n)return{ref:"#"};const c=`#/${s}/`,u=a[1].schema.id??`__schema${e.counter++}`;return{defId:u,ref:c+u}},i=a=>{if(a[1].schema.$ref)return;const s=a[1],{ref:c,defId:u}=o(a);s.def={...s.schema},u&&(s.defId=u);const d=s.schema;for(const g in d)delete d[g];d.$ref=c};if(e.cycles==="throw")for(const a of e.seen.entries()){const s=a[1];if(s.cycle)throw new Error(`Cycle detected: #/${s.cycle?.join("/")}/<root>
109
+ `)}f.write("payload.value = newResult;"),f.write("return payload;");const k=f.compile();return(I,E)=>k(p,I,E)};let i;const a=de,s=!le.jitless,u=s&&ho.value,d=t.catchall;let g;e._zod.parse=(p,f)=>{g??(g=r.value);const h=p.value;return a(h)?s&&u&&f?.async===!1&&f.jitless!==!0?(i||(i=o(t.shape)),p=i(p,f),d?Mt([],h,p,f,g,e):p):n(p,f):(p.issues.push({expected:"object",code:"invalid_type",input:h,inst:e}),p)}});function Ft(e,t,n,r){for(const i of e)if(i.issues.length===0)return t.value=i.value,t;const o=e.filter(i=>!K(i));return o.length===1?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map(i=>i.issues.map(a=>J(a,r,F())))}),t)}var Yi=l("$ZodUnion",(e,t)=>{A.init(e,t),b(e._zod,"optin",()=>t.options.some(r=>r._zod.optin==="optional")?"optional":void 0),b(e._zod,"optout",()=>t.options.some(r=>r._zod.optout==="optional")?"optional":void 0),b(e._zod,"values",()=>{if(t.options.every(r=>r._zod.values))return new Set(t.options.flatMap(r=>Array.from(r._zod.values)))}),b(e._zod,"pattern",()=>{if(t.options.every(r=>r._zod.pattern)){const r=t.options.map(o=>o._zod.pattern);return new RegExp(`^(${r.map(o=>qe(o.source)).join("|")})$`)}});const n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,o)=>{if(n)return n(r,o);let i=!1;const a=[];for(const s of t.options){const c=s._zod.run({value:r.value,issues:[]},o);if(c instanceof Promise)a.push(c),i=!0;else{if(c.issues.length===0)return c;a.push(c)}}return i?Promise.all(a).then(s=>Ft(s,r,e,o)):Ft(a,r,e,o)}}),Xi=l("$ZodIntersection",(e,t)=>{A.init(e,t),e._zod.parse=(n,r)=>{const o=n.value,i=t.left._zod.run({value:o,issues:[]},r),a=t.right._zod.run({value:o,issues:[]},r);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([s,c])=>Ht(n,s,c)):Ht(n,i,a)}});function Me(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(re(e)&&re(t)){const n=Object.keys(t),r=Object.keys(e).filter(i=>n.indexOf(i)!==-1),o={...e,...t};for(const i of r){const a=Me(e[i],t[i]);if(!a.valid)return{valid:!1,mergeErrorPath:[i,...a.mergeErrorPath]};o[i]=a.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const n=[];for(let r=0;r<e.length;r++){const o=e[r],i=t[r],a=Me(o,i);if(!a.valid)return{valid:!1,mergeErrorPath:[r,...a.mergeErrorPath]};n.push(a.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function Ht(e,t,n){const r=new Map;let o;for(const s of t.issues)if(s.code==="unrecognized_keys"){o??(o=s);for(const c of s.keys)r.has(c)||r.set(c,{}),r.get(c).l=!0}else e.issues.push(s);for(const s of n.issues)if(s.code==="unrecognized_keys")for(const c of s.keys)r.has(c)||r.set(c,{}),r.get(c).r=!0;else e.issues.push(s);const i=[...r].filter(([,s])=>s.l&&s.r).map(([s])=>s);if(i.length&&o&&e.issues.push({...o,keys:i}),K(e))return e;const a=Me(t.value,n.value);if(!a.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(a.mergeErrorPath)}`);return e.value=a.data,e}var ea=l("$ZodEnum",(e,t)=>{A.init(e,t);const n=Tt(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=new RegExp(`^(${n.filter(o=>mo.has(typeof o)).map(o=>typeof o=="string"?pe(o):o.toString()).join("|")})$`),e._zod.parse=(o,i)=>{const a=o.value;return r.has(a)||o.issues.push({code:"invalid_value",values:n,input:a,inst:e}),o}}),ta=l("$ZodTransform",(e,t)=>{A.init(e,t),e._zod.optin="optional",e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new At(e.constructor.name);const o=t.transform(n.value,n);if(r.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(n.value=i,n.fallback=!0,n));if(o instanceof Promise)throw new G;return n.value=o,n.fallback=!0,n}});function Jt(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}var Qt=l("$ZodOptional",(e,t)=>{A.init(e,t),e._zod.optin="optional",e._zod.optout="optional",b(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),b(e._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${qe(n.source)})?$`):void 0}),e._zod.parse=(n,r)=>{if(t.innerType._zod.optin==="optional"){const o=n.value,i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(a=>Jt(a,o)):Jt(i,o)}return n.value===void 0?n:t.innerType._zod.run(n,r)}}),na=l("$ZodExactOptional",(e,t)=>{Qt.init(e,t),b(e._zod,"values",()=>t.innerType._zod.values),b(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(n,r)=>t.innerType._zod.run(n,r)}),ra=l("$ZodNullable",(e,t)=>{A.init(e,t),b(e._zod,"optin",()=>t.innerType._zod.optin),b(e._zod,"optout",()=>t.innerType._zod.optout),b(e._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${qe(n.source)}|null)$`):void 0}),b(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(n,r)=>n.value===null?n:t.innerType._zod.run(n,r)}),oa=l("$ZodDefault",(e,t)=>{A.init(e,t),e._zod.optin="optional",b(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);if(n.value===void 0)return n.value=t.defaultValue,n;const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(i=>Wt(i,t)):Wt(o,t)}});function Wt(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var ia=l("$ZodPrefault",(e,t)=>{A.init(e,t),e._zod.optin="optional",b(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>(r.direction==="backward"||n.value===void 0&&(n.value=t.defaultValue),t.innerType._zod.run(n,r))}),aa=l("$ZodNonOptional",(e,t)=>{A.init(e,t),b(e._zod,"values",()=>{const n=t.innerType._zod.values;return n?new Set([...n].filter(r=>r!==void 0)):void 0}),e._zod.parse=(n,r)=>{const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(i=>Vt(i,e)):Vt(o,e)}});function Vt(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}var sa=l("$ZodCatch",(e,t)=>{A.init(e,t),e._zod.optin="optional",b(e._zod,"optout",()=>t.innerType._zod.optout),b(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(i=>(n.value=i.value,i.issues.length&&(n.value=t.catchValue({...n,error:{issues:i.issues.map(a=>J(a,r,F()))},input:n.value}),n.issues=[],n.fallback=!0),n)):(n.value=o.value,o.issues.length&&(n.value=t.catchValue({...n,error:{issues:o.issues.map(i=>J(i,r,F()))},input:n.value}),n.issues=[],n.fallback=!0),n)}}),ca=l("$ZodPipe",(e,t)=>{A.init(e,t),b(e._zod,"values",()=>t.in._zod.values),b(e._zod,"optin",()=>t.in._zod.optin),b(e._zod,"optout",()=>t.out._zod.optout),b(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,r)=>{if(r.direction==="backward"){const i=t.out._zod.run(n,r);return i instanceof Promise?i.then(a=>ye(a,t.in,r)):ye(i,t.in,r)}const o=t.in._zod.run(n,r);return o instanceof Promise?o.then(i=>ye(i,t.out,r)):ye(o,t.out,r)}});function ye(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}var ua=l("$ZodReadonly",(e,t)=>{A.init(e,t),b(e._zod,"propValues",()=>t.innerType._zod.propValues),b(e._zod,"values",()=>t.innerType._zod.values),b(e._zod,"optin",()=>t.innerType?._zod?.optin),b(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(Gt):Gt(o)}});function Gt(e){return e.value=Object.freeze(e.value),e}var la=l("$ZodCustom",(e,t)=>{L.init(e,t),A.init(e,t),e._zod.parse=(n,r)=>n,e._zod.check=n=>{const r=n.value,o=t.fn(r);if(o instanceof Promise)return o.then(i=>Kt(i,n,r,e));Kt(o,n,r,e)}});function Kt(e,t,n,r){if(!e){const o={code:"custom",input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(o.params=r._zod.def.params),t.issues.push(oe(o))}}var Yt,da=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){const n=t[0];return this._map.set(e,n),n&&typeof n=="object"&&"id"in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){const t=this._map.get(e);return t&&typeof t=="object"&&"id"in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){const t=e._zod.parent;if(t){const n={...this.get(t)??{}};delete n.id;const r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function pa(){return new da}(Yt=globalThis).__zod_globalRegistry??(Yt.__zod_globalRegistry=pa());var ie=globalThis.__zod_globalRegistry;function fa(e,t){return new e({type:"string",..._(t)})}function ga(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,..._(t)})}function Xt(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,..._(t)})}function ha(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,..._(t)})}function ma(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",..._(t)})}function _a(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",..._(t)})}function ya(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",..._(t)})}function va(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,..._(t)})}function ba(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,..._(t)})}function wa(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,..._(t)})}function ka(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,..._(t)})}function za(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,..._(t)})}function Sa(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,..._(t)})}function Ea(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,..._(t)})}function Aa(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,..._(t)})}function Ta(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,..._(t)})}function $a(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,..._(t)})}function Ia(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,..._(t)})}function Pa(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,..._(t)})}function Ca(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,..._(t)})}function Oa(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,..._(t)})}function Za(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,..._(t)})}function xa(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,..._(t)})}function Ra(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,..._(t)})}function La(e,t){return new e({type:"string",format:"date",check:"string_format",..._(t)})}function Na(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,..._(t)})}function qa(e,t){return new e({type:"string",format:"duration",check:"string_format",..._(t)})}function ja(e,t){return new e({type:"boolean",..._(t)})}function Da(e){return new e({type:"unknown"})}function Ua(e,t){return new e({type:"never",..._(t)})}function en(e,t){return new ui({check:"max_length",..._(t),maximum:e})}function ve(e,t){return new li({check:"min_length",..._(t),minimum:e})}function tn(e,t){return new di({check:"length_equals",..._(t),length:e})}function Ba(e,t){return new pi({check:"string_format",format:"regex",..._(t),pattern:e})}function Ma(e){return new fi({check:"string_format",format:"lowercase",..._(e)})}function Fa(e){return new gi({check:"string_format",format:"uppercase",..._(e)})}function Ha(e,t){return new hi({check:"string_format",format:"includes",..._(t),includes:e})}function Ja(e,t){return new mi({check:"string_format",format:"starts_with",..._(t),prefix:e})}function Qa(e,t){return new _i({check:"string_format",format:"ends_with",..._(t),suffix:e})}function Y(e){return new yi({check:"overwrite",tx:e})}function Wa(e){return Y(t=>t.normalize(e))}function Va(){return Y(e=>e.trim())}function Ga(){return Y(e=>e.toLowerCase())}function Ka(){return Y(e=>e.toUpperCase())}function Ya(){return Y(e=>go(e))}function Xa(e,t,n){return new e({type:"array",element:t,..._(n)})}function es(e,t,n){return new e({type:"custom",check:"custom",fn:t,..._(n)})}function ts(e,t){const n=ns(r=>(r.addIssue=o=>{if(typeof o=="string")r.issues.push(oe(o,r.value,n._zod.def));else{const i=o;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=n),i.continue??(i.continue=!n._zod.def.abort),r.issues.push(oe(i))}},e(r.value,r)),t);return n}function ns(e,t){const n=new L({check:"custom",..._(t)});return n._zod.check=e,n}function nn(e){let t=e?.target??"draft-2020-12";return t==="draft-4"&&(t="draft-04"),t==="draft-7"&&(t="draft-07"),{processors:e.processors??{},metadataRegistry:e?.metadata??ie,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,cycles:e?.cycles??"ref",reused:e?.reused??"inline",external:e?.external??void 0}}function $(e,t,n={path:[],schemaPath:[]}){var r;const o=e._zod.def,i=t.seen.get(e);if(i)return i.count++,n.schemaPath.includes(e)&&(i.cycle=n.path),i.schema;const a={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,a);const s=e._zod.toJSONSchema?.();if(s)a.schema=s;else{const u={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,a.schema,u);else{const g=a.schema,p=t.processors[o.type];if(!p)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);p(e,t,g,u)}const d=e._zod.parent;d&&(a.ref||(a.ref=d),$(d,t,u),t.seen.get(d).isParent=!0)}const c=t.metadataRegistry.get(e);return c&&Object.assign(a.schema,c),t.io==="input"&&O(e)&&(delete a.schema.examples,delete a.schema.default),t.io==="input"&&"_prefault"in a.schema&&((r=a.schema).default??(r.default=a.schema._prefault)),delete a.schema._prefault,t.seen.get(e).schema}function rn(e,t){const n=e.seen.get(t);if(!n)throw new Error("Unprocessed schema. This is a bug in Zod.");const r=new Map;for(const a of e.seen.entries()){const s=e.metadataRegistry.get(a[0])?.id;if(s){const c=r.get(s);if(c&&c!==a[0])throw new Error(`Duplicate schema id "${s}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(s,a[0])}}const o=a=>{const s=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){const d=e.external.registry.get(a[0])?.id,g=e.external.uri??(f=>f);if(d)return{ref:g(d)};const p=a[1].defId??a[1].schema.id??`schema${e.counter++}`;return a[1].defId=p,{defId:p,ref:`${g("__shared")}#/${s}/${p}`}}if(a[1]===n)return{ref:"#"};const c=`#/${s}/`,u=a[1].schema.id??`__schema${e.counter++}`;return{defId:u,ref:c+u}},i=a=>{if(a[1].schema.$ref)return;const s=a[1],{ref:c,defId:u}=o(a);s.def={...s.schema},u&&(s.defId=u);const d=s.schema;for(const g in d)delete d[g];d.$ref=c};if(e.cycles==="throw")for(const a of e.seen.entries()){const s=a[1];if(s.cycle)throw new Error(`Cycle detected: #/${s.cycle?.join("/")}/<root>
110
110
 
111
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const a of e.seen.entries()){const s=a[1];if(t===a[0]){i(a);continue}if(e.external){const c=e.external.registry.get(a[0])?.id;if(t!==a[0]&&c){i(a);continue}}if(e.metadataRegistry.get(a[0])?.id){i(a);continue}if(s.cycle){i(a);continue}if(s.count>1&&e.reused==="ref"){i(a);continue}}}function rn(e,t){const n=e.seen.get(t);if(!n)throw new Error("Unprocessed schema. This is a bug in Zod.");const r=s=>{const c=e.seen.get(s);if(c.ref===null)return;const u=c.def??c.schema,d={...u},g=c.ref;if(c.ref=null,g){r(g);const p=e.seen.get(g),h=p.schema;if(h.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(u.allOf=u.allOf??[],u.allOf.push(h)):Object.assign(u,h),Object.assign(u,d),s._zod.parent===g)for(const m in u)m==="$ref"||m==="allOf"||m in d||delete u[m];if(h.$ref&&p.def)for(const m in u)m==="$ref"||m==="allOf"||m in p.def&&JSON.stringify(u[m])===JSON.stringify(p.def[m])&&delete u[m]}const f=s._zod.parent;if(f&&f!==g){r(f);const p=e.seen.get(f);if(p?.schema.$ref&&(u.$ref=p.schema.$ref,p.def))for(const h in u)h==="$ref"||h==="allOf"||h in p.def&&JSON.stringify(u[h])===JSON.stringify(p.def[h])&&delete u[h]}e.override({zodSchema:s,jsonSchema:u,path:c.path??[]})};for(const s of[...e.seen.entries()].reverse())r(s[0]);const o={};if(e.target==="draft-2020-12"?o.$schema="https://json-schema.org/draft/2020-12/schema":e.target==="draft-07"?o.$schema="http://json-schema.org/draft-07/schema#":e.target==="draft-04"?o.$schema="http://json-schema.org/draft-04/schema#":e.target,e.external?.uri){const s=e.external.registry.get(t)?.id;if(!s)throw new Error("Schema is missing an `id` property");o.$id=e.external.uri(s)}Object.assign(o,n.def??n.schema);const i=e.metadataRegistry.get(t)?.id;i!==void 0&&o.id===i&&delete o.id;const a=e.external?.defs??{};for(const s of e.seen.entries()){const c=s[1];c.def&&c.defId&&(c.def.id===c.defId&&delete c.def.id,a[c.defId]=c.def)}e.external||Object.keys(a).length>0&&(e.target==="draft-2020-12"?o.$defs=a:o.definitions=a);try{const s=JSON.parse(JSON.stringify(o));return Object.defineProperty(s,"~standard",{value:{...t["~standard"],jsonSchema:{input:be(t,"input",e.processors),output:be(t,"output",e.processors)}},enumerable:!1,writable:!1}),s}catch{throw new Error("Error converting schema to JSON.")}}function O(e,t){const n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);const r=e._zod.def;if(r.type==="transform")return!0;if(r.type==="array")return O(r.element,n);if(r.type==="set")return O(r.valueType,n);if(r.type==="lazy")return O(r.getter(),n);if(r.type==="promise"||r.type==="optional"||r.type==="nonoptional"||r.type==="nullable"||r.type==="readonly"||r.type==="default"||r.type==="prefault")return O(r.innerType,n);if(r.type==="intersection")return O(r.left,n)||O(r.right,n);if(r.type==="record"||r.type==="map")return O(r.keyType,n)||O(r.valueType,n);if(r.type==="pipe")return e._zod.traits.has("$ZodCodec")?!0:O(r.in,n)||O(r.out,n);if(r.type==="object"){for(const o in r.shape)if(O(r.shape[o],n))return!0;return!1}if(r.type==="union"){for(const o of r.options)if(O(o,n))return!0;return!1}if(r.type==="tuple"){for(const o of r.items)if(O(o,n))return!0;return!!(r.rest&&O(r.rest,n))}return!1}var os=(e,t={})=>n=>{const r=tn({...n,processors:t});return $(e,r),nn(r,e),rn(r,e)},be=(e,t,n={})=>r=>{const{libraryOptions:o,target:i}=r??{},a=tn({...o??{},target:i,io:t,processors:n});return $(e,a),nn(a,e),rn(a,e)},is={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},as=(e,t,n,r)=>{const o=n;o.type="string";const{minimum:i,maximum:a,format:s,patterns:c,contentEncoding:u}=e._zod.bag;if(typeof i=="number"&&(o.minLength=i),typeof a=="number"&&(o.maxLength=a),s&&(o.format=is[s]??s,o.format===""&&delete o.format,s==="time"&&delete o.format),u&&(o.contentEncoding=u),c&&c.size>0){const d=[...c];d.length===1?o.pattern=d[0].source:d.length>1&&(o.allOf=[...d.map(g=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:g.source}))])}},ss=(e,t,n,r)=>{n.type="boolean"},cs=(e,t,n,r)=>{n.not={}},us=(e,t,n,r)=>{},ls=(e,t,n,r)=>{const o=e._zod.def,i=At(o.entries);i.every(a=>typeof a=="number")&&(n.type="number"),i.every(a=>typeof a=="string")&&(n.type="string"),n.enum=i},ds=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},ps=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},fs=(e,t,n,r)=>{const o=n,i=e._zod.def,{minimum:a,maximum:s}=e._zod.bag;typeof a=="number"&&(o.minItems=a),typeof s=="number"&&(o.maxItems=s),o.type="array",o.items=$(i.element,t,{...r,path:[...r.path,"items"]})},gs=(e,t,n,r)=>{const o=n,i=e._zod.def;o.type="object",o.properties={};const a=i.shape;for(const u in a)o.properties[u]=$(a[u],t,{...r,path:[...r.path,"properties",u]});const s=new Set(Object.keys(a)),c=new Set([...s].filter(u=>{const d=i.shape[u]._zod;return t.io==="input"?d.optin===void 0:d.optout===void 0}));c.size>0&&(o.required=Array.from(c)),i.catchall?._zod.def.type==="never"?o.additionalProperties=!1:i.catchall?i.catchall&&(o.additionalProperties=$(i.catchall,t,{...r,path:[...r.path,"additionalProperties"]})):t.io==="output"&&(o.additionalProperties=!1)},hs=(e,t,n,r)=>{const o=e._zod.def,i=o.inclusive===!1,a=o.options.map((s,c)=>$(s,t,{...r,path:[...r.path,i?"oneOf":"anyOf",c]}));i?n.oneOf=a:n.anyOf=a},ms=(e,t,n,r)=>{const o=e._zod.def,i=$(o.left,t,{...r,path:[...r.path,"allOf",0]}),a=$(o.right,t,{...r,path:[...r.path,"allOf",1]}),s=c=>"allOf"in c&&Object.keys(c).length===1;n.allOf=[...s(i)?i.allOf:[i],...s(a)?a.allOf:[a]]},_s=(e,t,n,r)=>{const o=e._zod.def,i=$(o.innerType,t,r),a=t.seen.get(e);t.target==="openapi-3.0"?(a.ref=o.innerType,n.nullable=!0):n.anyOf=[i,{type:"null"}]},ys=(e,t,n,r)=>{const o=e._zod.def;$(o.innerType,t,r);const i=t.seen.get(e);i.ref=o.innerType},vs=(e,t,n,r)=>{const o=e._zod.def;$(o.innerType,t,r);const i=t.seen.get(e);i.ref=o.innerType,n.default=JSON.parse(JSON.stringify(o.defaultValue))},bs=(e,t,n,r)=>{const o=e._zod.def;$(o.innerType,t,r);const i=t.seen.get(e);i.ref=o.innerType,t.io==="input"&&(n._prefault=JSON.parse(JSON.stringify(o.defaultValue)))},ws=(e,t,n,r)=>{const o=e._zod.def;$(o.innerType,t,r);const i=t.seen.get(e);i.ref=o.innerType;let a;try{a=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}n.default=a},ks=(e,t,n,r)=>{const o=e._zod.def,i=o.in._zod.traits.has("$ZodTransform"),a=t.io==="input"?i?o.out:o.in:o.out;$(a,t,r);const s=t.seen.get(e);s.ref=a},zs=(e,t,n,r)=>{const o=e._zod.def;$(o.innerType,t,r);const i=t.seen.get(e);i.ref=o.innerType,n.readOnly=!0},on=(e,t,n,r)=>{const o=e._zod.def;$(o.innerType,t,r);const i=t.seen.get(e);i.ref=o.innerType},Ss=l("ZodISODateTime",(e,t)=>{Zi.init(e,t),z.init(e,t)});function Es(e){return La(Ss,e)}var As=l("ZodISODate",(e,t)=>{xi.init(e,t),z.init(e,t)});function Ts(e){return Na(As,e)}var $s=l("ZodISOTime",(e,t)=>{Ri.init(e,t),z.init(e,t)});function Is(e){return qa($s,e)}var Ps=l("ZodISODuration",(e,t)=>{Li.init(e,t),z.init(e,t)});function Cs(e){return ja(Ps,e)}var Os=(e,t)=>{Zt.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:n=>$o(e,n)},flatten:{value:n=>To(e,n)},addIssue:{value:n=>{e.issues.push(n),e.message=JSON.stringify(e.issues,Re,2)}},addIssues:{value:n=>{e.issues.push(...n),e.message=JSON.stringify(e.issues,Re,2)}},isEmpty:{get(){return e.issues.length===0}}})},x=l("ZodError",Os,{Parent:Error}),Zs=De(x),xs=Ue(x),Rs=ge(x),Ls=he(x),Ns=Co(x),qs=Oo(x),js=Zo(x),Ds=xo(x),Us=Ro(x),Bs=Lo(x),Ms=No(x),Fs=qo(x),an=new WeakMap;function we(e,t,n){const r=Object.getPrototypeOf(e);let o=an.get(r);if(o||(o=new Set,an.set(r,o)),!o.has(t)){o.add(t);for(const i in n){const a=n[i];Object.defineProperty(r,i,{configurable:!0,enumerable:!1,get(){const s=a.bind(this);return Object.defineProperty(this,i,{configurable:!0,writable:!0,enumerable:!0,value:s}),s},set(s){Object.defineProperty(this,i,{configurable:!0,writable:!0,enumerable:!0,value:s})}})}}}var T=l("ZodType",(e,t)=>(A.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:be(e,"input"),output:be(e,"output")}}),e.toJSONSchema=os(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(n,r)=>Zs(e,n,r,{callee:e.parse}),e.safeParse=(n,r)=>Rs(e,n,r),e.parseAsync=async(n,r)=>xs(e,n,r,{callee:e.parseAsync}),e.safeParseAsync=async(n,r)=>Ls(e,n,r),e.spa=e.safeParseAsync,e.encode=(n,r)=>Ns(e,n,r),e.decode=(n,r)=>qs(e,n,r),e.encodeAsync=async(n,r)=>js(e,n,r),e.decodeAsync=async(n,r)=>Ds(e,n,r),e.safeEncode=(n,r)=>Us(e,n,r),e.safeDecode=(n,r)=>Bs(e,n,r),e.safeEncodeAsync=async(n,r)=>Ms(e,n,r),e.safeDecodeAsync=async(n,r)=>Fs(e,n,r),we(e,"ZodType",{check(...n){const r=this.def;return this.clone(j(r,{checks:[...r.checks??[],...n.map(o=>typeof o=="function"?{_zod:{check:o,def:{check:"custom"},onattach:[]}}:o)]}),{parent:!0})},with(...n){return this.check(...n)},clone(n,r){return D(this,n,r)},brand(){return this},register(n,r){return n.add(this,r),this},refine(n,r){return this.check(Rc(n,r))},superRefine(n,r){return this.check(Lc(n,r))},overwrite(n){return this.check(Y(n))},optional(){return pn(this)},exactOptional(){return kc(this)},nullable(){return fn(this)},nullish(){return pn(fn(this))},nonoptional(n){return $c(this,n)},array(){return un(this)},or(n){return ln([this,n])},and(n){return yc(this,n)},transform(n){return hn(this,bc(n))},default(n){return Ec(this,n)},prefault(n){return Tc(this,n)},catch(n){return Pc(this,n)},pipe(n){return hn(this,n)},readonly(){return Zc(this)},describe(n){const r=this.clone();return ie.add(r,{description:n}),r},meta(...n){if(n.length===0)return ie.get(this);const r=this.clone();return ie.add(r,n[0]),r},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(n){return n(this)}}),Object.defineProperty(e,"description",{get(){return ie.get(e)?.description},configurable:!0}),e)),sn=l("_ZodString",(e,t)=>{Be.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,o,i)=>as(e,r,o,i);const n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,we(e,"_ZodString",{regex(...r){return this.check(Ma(...r))},includes(...r){return this.check(Ja(...r))},startsWith(...r){return this.check(Qa(...r))},endsWith(...r){return this.check(Wa(...r))},min(...r){return this.check(ve(...r))},max(...r){return this.check(Xt(...r))},length(...r){return this.check(en(...r))},nonempty(...r){return this.check(ve(1,...r))},lowercase(r){return this.check(Fa(r))},uppercase(r){return this.check(Ha(r))},trim(){return this.check(Ga())},normalize(...r){return this.check(Va(...r))},toLowerCase(){return this.check(Ka())},toUpperCase(){return this.check(Ya())},slugify(){return this.check(Xa())}})}),Hs=l("ZodString",(e,t)=>{Be.init(e,t),sn.init(e,t),e.email=n=>e.check(ha(Js,n)),e.url=n=>e.check(ba(Qs,n)),e.jwt=n=>e.check(Ra(cc,n)),e.emoji=n=>e.check(wa(Ws,n)),e.guid=n=>e.check(Yt(cn,n)),e.uuid=n=>e.check(ma(ke,n)),e.uuidv4=n=>e.check(_a(ke,n)),e.uuidv6=n=>e.check(ya(ke,n)),e.uuidv7=n=>e.check(va(ke,n)),e.nanoid=n=>e.check(ka(Vs,n)),e.guid=n=>e.check(Yt(cn,n)),e.cuid=n=>e.check(za(Gs,n)),e.cuid2=n=>e.check(Sa(Ks,n)),e.ulid=n=>e.check(Ea(Ys,n)),e.base64=n=>e.check(Oa(ic,n)),e.base64url=n=>e.check(Za(ac,n)),e.xid=n=>e.check(Aa(Xs,n)),e.ksuid=n=>e.check(Ta(ec,n)),e.ipv4=n=>e.check($a(tc,n)),e.ipv6=n=>e.check(Ia(nc,n)),e.cidrv4=n=>e.check(Pa(rc,n)),e.cidrv6=n=>e.check(Ca(oc,n)),e.e164=n=>e.check(xa(sc,n)),e.datetime=n=>e.check(Es(n)),e.date=n=>e.check(Ts(n)),e.time=n=>e.check(Is(n)),e.duration=n=>e.check(Cs(n))});function Q(e){return ga(Hs,e)}var z=l("ZodStringFormat",(e,t)=>{k.init(e,t),sn.init(e,t)}),Js=l("ZodEmail",(e,t)=>{Si.init(e,t),z.init(e,t)}),cn=l("ZodGUID",(e,t)=>{ki.init(e,t),z.init(e,t)}),ke=l("ZodUUID",(e,t)=>{zi.init(e,t),z.init(e,t)}),Qs=l("ZodURL",(e,t)=>{Ei.init(e,t),z.init(e,t)}),Ws=l("ZodEmoji",(e,t)=>{Ai.init(e,t),z.init(e,t)}),Vs=l("ZodNanoID",(e,t)=>{Ti.init(e,t),z.init(e,t)}),Gs=l("ZodCUID",(e,t)=>{$i.init(e,t),z.init(e,t)}),Ks=l("ZodCUID2",(e,t)=>{Ii.init(e,t),z.init(e,t)}),Ys=l("ZodULID",(e,t)=>{Pi.init(e,t),z.init(e,t)}),Xs=l("ZodXID",(e,t)=>{Ci.init(e,t),z.init(e,t)}),ec=l("ZodKSUID",(e,t)=>{Oi.init(e,t),z.init(e,t)}),tc=l("ZodIPv4",(e,t)=>{Ni.init(e,t),z.init(e,t)}),nc=l("ZodIPv6",(e,t)=>{qi.init(e,t),z.init(e,t)}),rc=l("ZodCIDRv4",(e,t)=>{ji.init(e,t),z.init(e,t)}),oc=l("ZodCIDRv6",(e,t)=>{Di.init(e,t),z.init(e,t)}),ic=l("ZodBase64",(e,t)=>{Ui.init(e,t),z.init(e,t)}),ac=l("ZodBase64URL",(e,t)=>{Mi.init(e,t),z.init(e,t)}),sc=l("ZodE164",(e,t)=>{Fi.init(e,t),z.init(e,t)}),cc=l("ZodJWT",(e,t)=>{Ji.init(e,t),z.init(e,t)}),uc=l("ZodBoolean",(e,t)=>{Qi.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ss(e,n,r,o)});function lc(e){return Da(uc,e)}var dc=l("ZodUnknown",(e,t)=>{Wi.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>us(e,n,r,o)});function Fe(){return Ua(dc)}var pc=l("ZodNever",(e,t)=>{Vi.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>cs(e,n,r,o)});function fc(e){return Ba(pc,e)}var gc=l("ZodArray",(e,t)=>{Gi.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>fs(e,n,r,o),e.element=t.element,we(e,"ZodArray",{min(n,r){return this.check(ve(n,r))},nonempty(n){return this.check(ve(1,n))},max(n,r){return this.check(Xt(n,r))},length(n,r){return this.check(en(n,r))},unwrap(){return this.element}})});function un(e,t){return es(gc,e,t)}var hc=l("ZodObject",(e,t)=>{Yi.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>gs(e,n,r,o),b(e,"shape",()=>t.shape),we(e,"ZodObject",{keyof(){return Je(Object.keys(this._zod.def.shape))},catchall(n){return this.clone({...this._zod.def,catchall:n})},passthrough(){return this.clone({...this._zod.def,catchall:Fe()})},loose(){return this.clone({...this._zod.def,catchall:Fe()})},strict(){return this.clone({...this._zod.def,catchall:fc()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(n){return wo(this,n)},safeExtend(n){return ko(this,n)},merge(n){return zo(this,n)},pick(n){return vo(this,n)},omit(n){return bo(this,n)},partial(...n){return So(dn,this,n[0])},required(...n){return Eo(gn,this,n[0])}})});function ae(e,t){return new hc({type:"object",shape:e??{},..._(t)})}var mc=l("ZodUnion",(e,t)=>{Xi.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>hs(e,n,r,o),e.options=t.options});function ln(e,t){return new mc({type:"union",options:e,..._(t)})}var _c=l("ZodIntersection",(e,t)=>{ea.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ms(e,n,r,o)});function yc(e,t){return new _c({type:"intersection",left:e,right:t})}var He=l("ZodEnum",(e,t)=>{ta.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,o,i)=>ls(e,r,o,i),e.enum=t.entries,e.options=Object.values(t.entries);const n=new Set(Object.keys(t.entries));e.extract=(r,o)=>{const i={};for(const a of r)if(n.has(a))i[a]=t.entries[a];else throw new Error(`Key ${a} not found in enum`);return new He({...t,checks:[],..._(o),entries:i})},e.exclude=(r,o)=>{const i={...t.entries};for(const a of r)if(n.has(a))delete i[a];else throw new Error(`Key ${a} not found in enum`);return new He({...t,checks:[],..._(o),entries:i})}});function Je(e,t){return new He({type:"enum",entries:Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e,..._(t)})}var vc=l("ZodTransform",(e,t)=>{na.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ps(e,n,r,o),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new Et(e.constructor.name);n.addIssue=i=>{if(typeof i=="string")n.issues.push(oe(i,n.value,t));else{const a=i;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=n.value),a.inst??(a.inst=e),n.issues.push(oe(a))}};const o=t.transform(n.value,n);return o instanceof Promise?o.then(i=>(n.value=i,n.fallback=!0,n)):(n.value=o,n.fallback=!0,n)}});function bc(e){return new vc({type:"transform",transform:e})}var dn=l("ZodOptional",(e,t)=>{Jt.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>on(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function pn(e){return new dn({type:"optional",innerType:e})}var wc=l("ZodExactOptional",(e,t)=>{ra.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>on(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function kc(e){return new wc({type:"optional",innerType:e})}var zc=l("ZodNullable",(e,t)=>{oa.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>_s(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function fn(e){return new zc({type:"nullable",innerType:e})}var Sc=l("ZodDefault",(e,t)=>{ia.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>vs(e,n,r,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Ec(e,t){return new Sc({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():Pt(t)}})}var Ac=l("ZodPrefault",(e,t)=>{aa.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>bs(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function Tc(e,t){return new Ac({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():Pt(t)}})}var gn=l("ZodNonOptional",(e,t)=>{sa.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ys(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function $c(e,t){return new gn({type:"nonoptional",innerType:e,..._(t)})}var Ic=l("ZodCatch",(e,t)=>{ca.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ws(e,n,r,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Pc(e,t){return new Ic({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}var Cc=l("ZodPipe",(e,t)=>{ua.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ks(e,n,r,o),e.in=t.in,e.out=t.out});function hn(e,t){return new Cc({type:"pipe",in:e,out:t})}var Oc=l("ZodReadonly",(e,t)=>{la.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>zs(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function Zc(e){return new Oc({type:"readonly",innerType:e})}var xc=l("ZodCustom",(e,t)=>{da.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ds(e,n,r,o)});function Rc(e,t={}){return ts(xc,e,t)}function Lc(e,t){return ns(e,t)}var Nc=ae({title:Q(),type:Q(),payload:Fe().optional()}),qc=ae({label:Q(),action:Nc,variant:Je(["primary","outline","ghost"]).optional()}),jc=ae({orientation:Je(["horizontal","vertical"]).optional(),wrap:lc().optional()}),Dc=ae({placeholder:ln([Q(),un(Q())]).optional(),ctaLabel:Q().optional()}),Uc=ae({text:Q()}),Bc={components:{ActionButton:{schema:qc,description:"A single clickable QNA action button."},ButtonRow:{schema:jc,description:"Container for a group of QNA action buttons."},TextInput:{schema:Dc,description:"Free-text input with rotating placeholder and CTA button."},QuestionHeading:{schema:Uc,description:"A heading displayed above the QNA button group."}}};U.GengageQNA=zt,U.createDefaultQnaUISpecRegistry=mt,U.createQNAWidget=go,U.defaultQnaUnknownUISpecRenderer=xe,U.qnaCatalog=Bc,U.renderQnaUISpec=_t})(this.Gengage=this.Gengage||{});
111
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const a of e.seen.entries()){const s=a[1];if(t===a[0]){i(a);continue}if(e.external){const c=e.external.registry.get(a[0])?.id;if(t!==a[0]&&c){i(a);continue}}if(e.metadataRegistry.get(a[0])?.id){i(a);continue}if(s.cycle){i(a);continue}if(s.count>1&&e.reused==="ref"){i(a);continue}}}function on(e,t){const n=e.seen.get(t);if(!n)throw new Error("Unprocessed schema. This is a bug in Zod.");const r=s=>{const c=e.seen.get(s);if(c.ref===null)return;const u=c.def??c.schema,d={...u},g=c.ref;if(c.ref=null,g){r(g);const f=e.seen.get(g),h=f.schema;if(h.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(u.allOf=u.allOf??[],u.allOf.push(h)):Object.assign(u,h),Object.assign(u,d),s._zod.parent===g)for(const m in u)m==="$ref"||m==="allOf"||m in d||delete u[m];if(h.$ref&&f.def)for(const m in u)m==="$ref"||m==="allOf"||m in f.def&&JSON.stringify(u[m])===JSON.stringify(f.def[m])&&delete u[m]}const p=s._zod.parent;if(p&&p!==g){r(p);const f=e.seen.get(p);if(f?.schema.$ref&&(u.$ref=f.schema.$ref,f.def))for(const h in u)h==="$ref"||h==="allOf"||h in f.def&&JSON.stringify(u[h])===JSON.stringify(f.def[h])&&delete u[h]}e.override({zodSchema:s,jsonSchema:u,path:c.path??[]})};for(const s of[...e.seen.entries()].reverse())r(s[0]);const o={};if(e.target==="draft-2020-12"?o.$schema="https://json-schema.org/draft/2020-12/schema":e.target==="draft-07"?o.$schema="http://json-schema.org/draft-07/schema#":e.target==="draft-04"?o.$schema="http://json-schema.org/draft-04/schema#":e.target,e.external?.uri){const s=e.external.registry.get(t)?.id;if(!s)throw new Error("Schema is missing an `id` property");o.$id=e.external.uri(s)}Object.assign(o,n.def??n.schema);const i=e.metadataRegistry.get(t)?.id;i!==void 0&&o.id===i&&delete o.id;const a=e.external?.defs??{};for(const s of e.seen.entries()){const c=s[1];c.def&&c.defId&&(c.def.id===c.defId&&delete c.def.id,a[c.defId]=c.def)}e.external||Object.keys(a).length>0&&(e.target==="draft-2020-12"?o.$defs=a:o.definitions=a);try{const s=JSON.parse(JSON.stringify(o));return Object.defineProperty(s,"~standard",{value:{...t["~standard"],jsonSchema:{input:be(t,"input",e.processors),output:be(t,"output",e.processors)}},enumerable:!1,writable:!1}),s}catch{throw new Error("Error converting schema to JSON.")}}function O(e,t){const n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);const r=e._zod.def;if(r.type==="transform")return!0;if(r.type==="array")return O(r.element,n);if(r.type==="set")return O(r.valueType,n);if(r.type==="lazy")return O(r.getter(),n);if(r.type==="promise"||r.type==="optional"||r.type==="nonoptional"||r.type==="nullable"||r.type==="readonly"||r.type==="default"||r.type==="prefault")return O(r.innerType,n);if(r.type==="intersection")return O(r.left,n)||O(r.right,n);if(r.type==="record"||r.type==="map")return O(r.keyType,n)||O(r.valueType,n);if(r.type==="pipe")return e._zod.traits.has("$ZodCodec")?!0:O(r.in,n)||O(r.out,n);if(r.type==="object"){for(const o in r.shape)if(O(r.shape[o],n))return!0;return!1}if(r.type==="union"){for(const o of r.options)if(O(o,n))return!0;return!1}if(r.type==="tuple"){for(const o of r.items)if(O(o,n))return!0;return!!(r.rest&&O(r.rest,n))}return!1}var rs=(e,t={})=>n=>{const r=nn({...n,processors:t});return $(e,r),rn(r,e),on(r,e)},be=(e,t,n={})=>r=>{const{libraryOptions:o,target:i}=r??{},a=nn({...o??{},target:i,io:t,processors:n});return $(e,a),rn(a,e),on(a,e)},os={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},is=(e,t,n,r)=>{const o=n;o.type="string";const{minimum:i,maximum:a,format:s,patterns:c,contentEncoding:u}=e._zod.bag;if(typeof i=="number"&&(o.minLength=i),typeof a=="number"&&(o.maxLength=a),s&&(o.format=os[s]??s,o.format===""&&delete o.format,s==="time"&&delete o.format),u&&(o.contentEncoding=u),c&&c.size>0){const d=[...c];d.length===1?o.pattern=d[0].source:d.length>1&&(o.allOf=[...d.map(g=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:g.source}))])}},as=(e,t,n,r)=>{n.type="boolean"},ss=(e,t,n,r)=>{n.not={}},cs=(e,t,n,r)=>{},us=(e,t,n,r)=>{const o=e._zod.def,i=Tt(o.entries);i.every(a=>typeof a=="number")&&(n.type="number"),i.every(a=>typeof a=="string")&&(n.type="string"),n.enum=i},ls=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},ds=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},ps=(e,t,n,r)=>{const o=n,i=e._zod.def,{minimum:a,maximum:s}=e._zod.bag;typeof a=="number"&&(o.minItems=a),typeof s=="number"&&(o.maxItems=s),o.type="array",o.items=$(i.element,t,{...r,path:[...r.path,"items"]})},fs=(e,t,n,r)=>{const o=n,i=e._zod.def;o.type="object",o.properties={};const a=i.shape;for(const u in a)o.properties[u]=$(a[u],t,{...r,path:[...r.path,"properties",u]});const s=new Set(Object.keys(a)),c=new Set([...s].filter(u=>{const d=i.shape[u]._zod;return t.io==="input"?d.optin===void 0:d.optout===void 0}));c.size>0&&(o.required=Array.from(c)),i.catchall?._zod.def.type==="never"?o.additionalProperties=!1:i.catchall?i.catchall&&(o.additionalProperties=$(i.catchall,t,{...r,path:[...r.path,"additionalProperties"]})):t.io==="output"&&(o.additionalProperties=!1)},gs=(e,t,n,r)=>{const o=e._zod.def,i=o.inclusive===!1,a=o.options.map((s,c)=>$(s,t,{...r,path:[...r.path,i?"oneOf":"anyOf",c]}));i?n.oneOf=a:n.anyOf=a},hs=(e,t,n,r)=>{const o=e._zod.def,i=$(o.left,t,{...r,path:[...r.path,"allOf",0]}),a=$(o.right,t,{...r,path:[...r.path,"allOf",1]}),s=c=>"allOf"in c&&Object.keys(c).length===1;n.allOf=[...s(i)?i.allOf:[i],...s(a)?a.allOf:[a]]},ms=(e,t,n,r)=>{const o=e._zod.def,i=$(o.innerType,t,r),a=t.seen.get(e);t.target==="openapi-3.0"?(a.ref=o.innerType,n.nullable=!0):n.anyOf=[i,{type:"null"}]},_s=(e,t,n,r)=>{const o=e._zod.def;$(o.innerType,t,r);const i=t.seen.get(e);i.ref=o.innerType},ys=(e,t,n,r)=>{const o=e._zod.def;$(o.innerType,t,r);const i=t.seen.get(e);i.ref=o.innerType,n.default=JSON.parse(JSON.stringify(o.defaultValue))},vs=(e,t,n,r)=>{const o=e._zod.def;$(o.innerType,t,r);const i=t.seen.get(e);i.ref=o.innerType,t.io==="input"&&(n._prefault=JSON.parse(JSON.stringify(o.defaultValue)))},bs=(e,t,n,r)=>{const o=e._zod.def;$(o.innerType,t,r);const i=t.seen.get(e);i.ref=o.innerType;let a;try{a=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}n.default=a},ws=(e,t,n,r)=>{const o=e._zod.def,i=o.in._zod.traits.has("$ZodTransform"),a=t.io==="input"?i?o.out:o.in:o.out;$(a,t,r);const s=t.seen.get(e);s.ref=a},ks=(e,t,n,r)=>{const o=e._zod.def;$(o.innerType,t,r);const i=t.seen.get(e);i.ref=o.innerType,n.readOnly=!0},an=(e,t,n,r)=>{const o=e._zod.def;$(o.innerType,t,r);const i=t.seen.get(e);i.ref=o.innerType},zs=l("ZodISODateTime",(e,t)=>{Oi.init(e,t),S.init(e,t)});function Ss(e){return Ra(zs,e)}var Es=l("ZodISODate",(e,t)=>{Zi.init(e,t),S.init(e,t)});function As(e){return La(Es,e)}var Ts=l("ZodISOTime",(e,t)=>{xi.init(e,t),S.init(e,t)});function $s(e){return Na(Ts,e)}var Is=l("ZodISODuration",(e,t)=>{Ri.init(e,t),S.init(e,t)});function Ps(e){return qa(Is,e)}var Cs=(e,t)=>{xt.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:n=>To(e,n)},flatten:{value:n=>Ao(e,n)},addIssue:{value:n=>{e.issues.push(n),e.message=JSON.stringify(e.issues,Re,2)}},addIssues:{value:n=>{e.issues.push(...n),e.message=JSON.stringify(e.issues,Re,2)}},isEmpty:{get(){return e.issues.length===0}}})},x=l("ZodError",Cs,{Parent:Error}),Os=De(x),Zs=Ue(x),xs=ge(x),Rs=he(x),Ls=Po(x),Ns=Co(x),qs=Oo(x),js=Zo(x),Ds=xo(x),Us=Ro(x),Bs=Lo(x),Ms=No(x),sn=new WeakMap;function we(e,t,n){const r=Object.getPrototypeOf(e);let o=sn.get(r);if(o||(o=new Set,sn.set(r,o)),!o.has(t)){o.add(t);for(const i in n){const a=n[i];Object.defineProperty(r,i,{configurable:!0,enumerable:!1,get(){const s=a.bind(this);return Object.defineProperty(this,i,{configurable:!0,writable:!0,enumerable:!0,value:s}),s},set(s){Object.defineProperty(this,i,{configurable:!0,writable:!0,enumerable:!0,value:s})}})}}}var T=l("ZodType",(e,t)=>(A.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:be(e,"input"),output:be(e,"output")}}),e.toJSONSchema=rs(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(n,r)=>Os(e,n,r,{callee:e.parse}),e.safeParse=(n,r)=>xs(e,n,r),e.parseAsync=async(n,r)=>Zs(e,n,r,{callee:e.parseAsync}),e.safeParseAsync=async(n,r)=>Rs(e,n,r),e.spa=e.safeParseAsync,e.encode=(n,r)=>Ls(e,n,r),e.decode=(n,r)=>Ns(e,n,r),e.encodeAsync=async(n,r)=>qs(e,n,r),e.decodeAsync=async(n,r)=>js(e,n,r),e.safeEncode=(n,r)=>Ds(e,n,r),e.safeDecode=(n,r)=>Us(e,n,r),e.safeEncodeAsync=async(n,r)=>Bs(e,n,r),e.safeDecodeAsync=async(n,r)=>Ms(e,n,r),we(e,"ZodType",{check(...n){const r=this.def;return this.clone(j(r,{checks:[...r.checks??[],...n.map(o=>typeof o=="function"?{_zod:{check:o,def:{check:"custom"},onattach:[]}}:o)]}),{parent:!0})},with(...n){return this.check(...n)},clone(n,r){return D(this,n,r)},brand(){return this},register(n,r){return n.add(this,r),this},refine(n,r){return this.check(xc(n,r))},superRefine(n,r){return this.check(Rc(n,r))},overwrite(n){return this.check(Y(n))},optional(){return fn(this)},exactOptional(){return wc(this)},nullable(){return gn(this)},nullish(){return fn(gn(this))},nonoptional(n){return Tc(this,n)},array(){return ln(this)},or(n){return dn([this,n])},and(n){return _c(this,n)},transform(n){return mn(this,vc(n))},default(n){return Sc(this,n)},prefault(n){return Ac(this,n)},catch(n){return Ic(this,n)},pipe(n){return mn(this,n)},readonly(){return Oc(this)},describe(n){const r=this.clone();return ie.add(r,{description:n}),r},meta(...n){if(n.length===0)return ie.get(this);const r=this.clone();return ie.add(r,n[0]),r},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(n){return n(this)}}),Object.defineProperty(e,"description",{get(){return ie.get(e)?.description},configurable:!0}),e)),cn=l("_ZodString",(e,t)=>{Be.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,o,i)=>is(e,r,o,i);const n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,we(e,"_ZodString",{regex(...r){return this.check(Ba(...r))},includes(...r){return this.check(Ha(...r))},startsWith(...r){return this.check(Ja(...r))},endsWith(...r){return this.check(Qa(...r))},min(...r){return this.check(ve(...r))},max(...r){return this.check(en(...r))},length(...r){return this.check(tn(...r))},nonempty(...r){return this.check(ve(1,...r))},lowercase(r){return this.check(Ma(r))},uppercase(r){return this.check(Fa(r))},trim(){return this.check(Va())},normalize(...r){return this.check(Wa(...r))},toLowerCase(){return this.check(Ga())},toUpperCase(){return this.check(Ka())},slugify(){return this.check(Ya())}})}),Fs=l("ZodString",(e,t)=>{Be.init(e,t),cn.init(e,t),e.email=n=>e.check(ga(Hs,n)),e.url=n=>e.check(va(Js,n)),e.jwt=n=>e.check(xa(sc,n)),e.emoji=n=>e.check(ba(Qs,n)),e.guid=n=>e.check(Xt(un,n)),e.uuid=n=>e.check(ha(ke,n)),e.uuidv4=n=>e.check(ma(ke,n)),e.uuidv6=n=>e.check(_a(ke,n)),e.uuidv7=n=>e.check(ya(ke,n)),e.nanoid=n=>e.check(wa(Ws,n)),e.guid=n=>e.check(Xt(un,n)),e.cuid=n=>e.check(ka(Vs,n)),e.cuid2=n=>e.check(za(Gs,n)),e.ulid=n=>e.check(Sa(Ks,n)),e.base64=n=>e.check(Ca(oc,n)),e.base64url=n=>e.check(Oa(ic,n)),e.xid=n=>e.check(Ea(Ys,n)),e.ksuid=n=>e.check(Aa(Xs,n)),e.ipv4=n=>e.check(Ta(ec,n)),e.ipv6=n=>e.check($a(tc,n)),e.cidrv4=n=>e.check(Ia(nc,n)),e.cidrv6=n=>e.check(Pa(rc,n)),e.e164=n=>e.check(Za(ac,n)),e.datetime=n=>e.check(Ss(n)),e.date=n=>e.check(As(n)),e.time=n=>e.check($s(n)),e.duration=n=>e.check(Ps(n))});function Q(e){return fa(Fs,e)}var S=l("ZodStringFormat",(e,t)=>{z.init(e,t),cn.init(e,t)}),Hs=l("ZodEmail",(e,t)=>{zi.init(e,t),S.init(e,t)}),un=l("ZodGUID",(e,t)=>{wi.init(e,t),S.init(e,t)}),ke=l("ZodUUID",(e,t)=>{ki.init(e,t),S.init(e,t)}),Js=l("ZodURL",(e,t)=>{Si.init(e,t),S.init(e,t)}),Qs=l("ZodEmoji",(e,t)=>{Ei.init(e,t),S.init(e,t)}),Ws=l("ZodNanoID",(e,t)=>{Ai.init(e,t),S.init(e,t)}),Vs=l("ZodCUID",(e,t)=>{Ti.init(e,t),S.init(e,t)}),Gs=l("ZodCUID2",(e,t)=>{$i.init(e,t),S.init(e,t)}),Ks=l("ZodULID",(e,t)=>{Ii.init(e,t),S.init(e,t)}),Ys=l("ZodXID",(e,t)=>{Pi.init(e,t),S.init(e,t)}),Xs=l("ZodKSUID",(e,t)=>{Ci.init(e,t),S.init(e,t)}),ec=l("ZodIPv4",(e,t)=>{Li.init(e,t),S.init(e,t)}),tc=l("ZodIPv6",(e,t)=>{Ni.init(e,t),S.init(e,t)}),nc=l("ZodCIDRv4",(e,t)=>{qi.init(e,t),S.init(e,t)}),rc=l("ZodCIDRv6",(e,t)=>{ji.init(e,t),S.init(e,t)}),oc=l("ZodBase64",(e,t)=>{Di.init(e,t),S.init(e,t)}),ic=l("ZodBase64URL",(e,t)=>{Bi.init(e,t),S.init(e,t)}),ac=l("ZodE164",(e,t)=>{Mi.init(e,t),S.init(e,t)}),sc=l("ZodJWT",(e,t)=>{Hi.init(e,t),S.init(e,t)}),cc=l("ZodBoolean",(e,t)=>{Ji.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>as(e,n,r,o)});function uc(e){return ja(cc,e)}var lc=l("ZodUnknown",(e,t)=>{Qi.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>cs(e,n,r,o)});function Fe(){return Da(lc)}var dc=l("ZodNever",(e,t)=>{Wi.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ss(e,n,r,o)});function pc(e){return Ua(dc,e)}var fc=l("ZodArray",(e,t)=>{Vi.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ps(e,n,r,o),e.element=t.element,we(e,"ZodArray",{min(n,r){return this.check(ve(n,r))},nonempty(n){return this.check(ve(1,n))},max(n,r){return this.check(en(n,r))},length(n,r){return this.check(tn(n,r))},unwrap(){return this.element}})});function ln(e,t){return Xa(fc,e,t)}var gc=l("ZodObject",(e,t)=>{Ki.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>fs(e,n,r,o),b(e,"shape",()=>t.shape),we(e,"ZodObject",{keyof(){return Je(Object.keys(this._zod.def.shape))},catchall(n){return this.clone({...this._zod.def,catchall:n})},passthrough(){return this.clone({...this._zod.def,catchall:Fe()})},loose(){return this.clone({...this._zod.def,catchall:Fe()})},strict(){return this.clone({...this._zod.def,catchall:pc()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(n){return bo(this,n)},safeExtend(n){return wo(this,n)},merge(n){return ko(this,n)},pick(n){return yo(this,n)},omit(n){return vo(this,n)},partial(...n){return zo(pn,this,n[0])},required(...n){return So(hn,this,n[0])}})});function ae(e,t){return new gc({type:"object",shape:e??{},..._(t)})}var hc=l("ZodUnion",(e,t)=>{Yi.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>gs(e,n,r,o),e.options=t.options});function dn(e,t){return new hc({type:"union",options:e,..._(t)})}var mc=l("ZodIntersection",(e,t)=>{Xi.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>hs(e,n,r,o)});function _c(e,t){return new mc({type:"intersection",left:e,right:t})}var He=l("ZodEnum",(e,t)=>{ea.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,o,i)=>us(e,r,o,i),e.enum=t.entries,e.options=Object.values(t.entries);const n=new Set(Object.keys(t.entries));e.extract=(r,o)=>{const i={};for(const a of r)if(n.has(a))i[a]=t.entries[a];else throw new Error(`Key ${a} not found in enum`);return new He({...t,checks:[],..._(o),entries:i})},e.exclude=(r,o)=>{const i={...t.entries};for(const a of r)if(n.has(a))delete i[a];else throw new Error(`Key ${a} not found in enum`);return new He({...t,checks:[],..._(o),entries:i})}});function Je(e,t){return new He({type:"enum",entries:Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e,..._(t)})}var yc=l("ZodTransform",(e,t)=>{ta.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ds(e,n,r,o),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new At(e.constructor.name);n.addIssue=i=>{if(typeof i=="string")n.issues.push(oe(i,n.value,t));else{const a=i;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=n.value),a.inst??(a.inst=e),n.issues.push(oe(a))}};const o=t.transform(n.value,n);return o instanceof Promise?o.then(i=>(n.value=i,n.fallback=!0,n)):(n.value=o,n.fallback=!0,n)}});function vc(e){return new yc({type:"transform",transform:e})}var pn=l("ZodOptional",(e,t)=>{Qt.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>an(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function fn(e){return new pn({type:"optional",innerType:e})}var bc=l("ZodExactOptional",(e,t)=>{na.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>an(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function wc(e){return new bc({type:"optional",innerType:e})}var kc=l("ZodNullable",(e,t)=>{ra.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ms(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function gn(e){return new kc({type:"nullable",innerType:e})}var zc=l("ZodDefault",(e,t)=>{oa.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ys(e,n,r,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Sc(e,t){return new zc({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():Ct(t)}})}var Ec=l("ZodPrefault",(e,t)=>{ia.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>vs(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function Ac(e,t){return new Ec({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():Ct(t)}})}var hn=l("ZodNonOptional",(e,t)=>{aa.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>_s(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function Tc(e,t){return new hn({type:"nonoptional",innerType:e,..._(t)})}var $c=l("ZodCatch",(e,t)=>{sa.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>bs(e,n,r,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Ic(e,t){return new $c({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}var Pc=l("ZodPipe",(e,t)=>{ca.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ws(e,n,r,o),e.in=t.in,e.out=t.out});function mn(e,t){return new Pc({type:"pipe",in:e,out:t})}var Cc=l("ZodReadonly",(e,t)=>{ua.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ks(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function Oc(e){return new Cc({type:"readonly",innerType:e})}var Zc=l("ZodCustom",(e,t)=>{la.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ls(e,n,r,o)});function xc(e,t={}){return es(Zc,e,t)}function Rc(e,t){return ts(e,t)}var Lc=ae({title:Q(),type:Q(),payload:Fe().optional()}),Nc=ae({label:Q(),action:Lc,variant:Je(["primary","outline","ghost"]).optional()}),qc=ae({orientation:Je(["horizontal","vertical"]).optional(),wrap:uc().optional()}),jc=ae({placeholder:dn([Q(),ln(Q())]).optional(),ctaLabel:Q().optional()}),Dc=ae({text:Q()}),Uc={components:{ActionButton:{schema:Nc,description:"A single clickable QNA action button."},ButtonRow:{schema:qc,description:"Container for a group of QNA action buttons."},TextInput:{schema:jc,description:"Free-text input with rotating placeholder and CTA button."},QuestionHeading:{schema:Dc,description:"A heading displayed above the QNA button group."}}};U.GengageQNA=St,U.createDefaultQnaUISpecRegistry=_t,U.createQNAWidget=fo,U.defaultQnaUnknownUISpecRenderer=xe,U.qnaCatalog=Uc,U.renderQnaUISpec=yt})(this.Gengage=this.Gengage||{});