@chaibuilder/sdk 4.0.0-beta.6 → 4.0.0-beta.8
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/README.md +73 -50
- package/dist/{2SSKDMRQ-BIryEtW-.cjs → 2SSKDMRQ-DHv4u_0i.cjs} +1 -1
- package/dist/{2SSKDMRQ-trME0kvt.js → 2SSKDMRQ-DewwiCoQ.js} +2 -2
- package/dist/{AP7HFJJL-CAGB9iMp.js → AP7HFJJL-ComnZw7J.js} +1 -1
- package/dist/{AP7HFJJL-5ZR38Hyh.cjs → AP7HFJJL-cz754qhG.cjs} +1 -1
- package/dist/{IconPicker-Mu75ni5T.js → IconPicker-2H9IGKMS.js} +2 -2
- package/dist/{IconPicker-CQ-BgNNU.cjs → IconPicker-U0Z2dWeR.cjs} +1 -1
- package/dist/{WDYDFRGG-n8sBZVFG.cjs → WDYDFRGG-BfRX3M58.cjs} +1 -1
- package/dist/{WDYDFRGG-Cd4hRWj-.js → WDYDFRGG-vy7nMYD4.js} +2 -2
- package/dist/{actions-registery-JdxhXhT6.cjs → actions-registery-CtQSSexG.cjs} +31 -31
- package/dist/{actions-registery-y_ENc8zj.js → actions-registery-DqrFhSMp.js} +2414 -2418
- package/dist/actions.cjs +1 -1
- package/dist/actions.d.ts +0 -34
- package/dist/actions.js +3 -3
- package/dist/{active-in-another-tab-Cb6tnX9u.js → active-in-another-tab-5hn17Jeq.js} +3 -3
- package/dist/{active-in-another-tab-CZLV-uAW.cjs → active-in-another-tab-ijahI5qu.cjs} +1 -1
- package/dist/{add-new-language-page-BKcBaqZu.js → add-new-language-page-DmOyPy0u.js} +4 -4
- package/dist/{add-new-language-page-C3UzNV7W.cjs → add-new-language-page-vmNKNx-e.cjs} +1 -1
- package/dist/{add-new-page-pH3PwqJe.js → add-new-page-NHScAQn8.js} +2 -2
- package/dist/{add-new-page-mULv9r3z.cjs → add-new-page-XDuCkOyb.cjs} +1 -1
- package/dist/{ai-panel-content-BPgRdgye.cjs → ai-panel-content-BDqW16AW.cjs} +1 -1
- package/dist/{ai-panel-content-CNxN84pv.js → ai-panel-content-CHJ0JcQI.js} +4 -4
- package/dist/{ai-panel-default-lang-CYcHjk8U.js → ai-panel-default-lang-BIomgsN0.js} +4 -4
- package/dist/{ai-panel-default-lang-DhTPtPgD.cjs → ai-panel-default-lang-HeYWpbMu.cjs} +2 -2
- package/dist/{ai-panel-other-lang-CGNU3-FI.cjs → ai-panel-other-lang-BMelEs3p.cjs} +1 -1
- package/dist/{ai-panel-other-lang-D8Ofvj8F.js → ai-panel-other-lang-CbAgG-qX.js} +3 -3
- package/dist/{ai-prompt-input-Ceuy5bs3.js → ai-prompt-input-BH8LOVT4.js} +2 -2
- package/dist/{ai-prompt-input-CUutJjlf.cjs → ai-prompt-input-C_GG6nwq.cjs} +1 -1
- package/dist/{ai-translation-prompt-CoCPLEed.cjs → ai-translation-prompt-CkHaFv5I.cjs} +1 -1
- package/dist/{ai-translation-prompt-BiepZRcN.js → ai-translation-prompt-DxsNw8YR.js} +2 -2
- package/dist/{code-display-DloSPyPr.cjs → code-display-9Onx6RCq.cjs} +1 -1
- package/dist/{code-display-Ck81Id9K.js → code-display-oa1j0ri7.js} +1 -1
- package/dist/{code-editor-Z14ByBIv.js → code-editor-CGBAc-A6.js} +1 -1
- package/dist/{code-editor-C1ewJzDJ.cjs → code-editor-GV8ibQ4h.cjs} +1 -1
- package/dist/{continue-editing-in-this-client-k9Ab5E63.cjs → continue-editing-in-this-client-DKHP0pq8.cjs} +1 -1
- package/dist/{continue-editing-in-this-client-Byi6ER3L.js → continue-editing-in-this-client-Da8ab_9d.js} +3 -3
- package/dist/core.cjs +1 -1
- package/dist/core.d.ts +1 -90
- package/dist/core.js +22 -34
- package/dist/css-import-modal-B4j26_cO.cjs +13 -0
- package/dist/{css-import-modal-De7Kvg5C.js → css-import-modal-CcZVLsF9.js} +5 -4
- package/dist/{delete-design-token-C6s-ESB_.cjs → delete-design-token-3-WwqXMO.cjs} +1 -1
- package/dist/{delete-design-token-B97CnFDU.js → delete-design-token-DzINIVtO.js} +1 -1
- package/dist/{delete-page-Djn97HiP.cjs → delete-page-B7ODELqM.cjs} +1 -1
- package/dist/{delete-page-Dnf97ZHP.js → delete-page-DwZDMwfI.js} +3 -3
- package/dist/{design-token-usage-B-SykAjD.js → design-token-usage-DQf180Lg.js} +2 -2
- package/dist/{design-token-usage-OTd93kS8.cjs → design-token-usage-Dy08kcIc.cjs} +1 -1
- package/dist/{digital-asset-manager-DHYRXaaq.cjs → digital-asset-manager-C7subULa.cjs} +1 -1
- package/dist/{digital-asset-manager-b8gDuLnI.js → digital-asset-manager-CDy9kHZO.js} +4 -4
- package/dist/{duplicate-page-C4Ovp8Ff.cjs → duplicate-page-CWQ9aMd9.cjs} +1 -1
- package/dist/{duplicate-page-Bdtpl7_R.js → duplicate-page-DTnSztlr.js} +4 -4
- package/dist/{dynamic-page-selector-B8DdnfrF.cjs → dynamic-page-selector-DJuxLcsM.cjs} +1 -1
- package/dist/{dynamic-page-selector-BVnIM1Rq.js → dynamic-page-selector-DYW3ov_u.js} +3 -3
- package/dist/{image-editor-C2zOHeKv.cjs → image-editor-C4H3AkZK.cjs} +1 -1
- package/dist/{image-editor-cckqPmk5.js → image-editor-DLeSST0K.js} +1 -1
- package/dist/{index-CAhEmHYP.js → index-BK0xWO1z.js} +5212 -5680
- package/dist/index-BRJCj7c_.cjs +5 -0
- package/dist/index-Bm8iS2OH.cjs +160 -0
- package/dist/{index-Bn0fFN58.js → index-D5d4QDq7.js} +520 -511
- package/dist/{json-diff-viewer-DNizzMnu.js → json-diff-viewer-BYHieVod.js} +3 -3
- package/dist/{json-diff-viewer-D9DVIBz4.cjs → json-diff-viewer-g6SY62bl.cjs} +1 -1
- package/dist/{lang-panel-DL_BtSRD.js → lang-panel-BG1GMn-1.js} +4 -4
- package/dist/{lang-panel-C1dbn163.cjs → lang-panel-Dm1eOO2J.cjs} +1 -1
- package/dist/{manage-design-tokens-xxMO_RYg.js → manage-design-tokens-BdWQUHhw.js} +3 -3
- package/dist/{manage-design-tokens-CXjYkarE.cjs → manage-design-tokens-XWs_B6jo.cjs} +1 -1
- package/dist/{mark-as-template-Ba2bmVd9.js → mark-as-template-D2XxagVO.js} +3 -3
- package/dist/{mark-as-template-DF1KIMr0.cjs → mark-as-template-DUFnfVM3.cjs} +1 -1
- package/dist/{nested-path-selector-content-Cuk7NB-u.cjs → nested-path-selector-content-CQOx2L9C.cjs} +1 -1
- package/dist/{nested-path-selector-content-Br1IWhK5.js → nested-path-selector-content-Wd6-Eql0.js} +2 -2
- package/dist/{no-language-page-content-9B2Fm-on.js → no-language-page-content-BOv6TZIk.js} +3 -3
- package/dist/{no-language-page-content-CxTp-LIM.cjs → no-language-page-content-C11uF6hs.cjs} +1 -1
- package/dist/{no-language-page-dialog-DynACvgV.cjs → no-language-page-dialog-CY5XhXsC.cjs} +1 -1
- package/dist/{no-language-page-dialog-CPlKMyb8.js → no-language-page-dialog-DIXyKRJq.js} +2 -2
- package/dist/{page-creator-BtyJz2sx.js → page-creator-WX9lMrJY.js} +4 -4
- package/dist/{page-creator-Cbfv9N0P.cjs → page-creator-zSUFF4eT.cjs} +1 -1
- package/dist/{page-lock-CzsxrmN5.js → page-lock-D9miLZjm.js} +2 -2
- package/dist/{page-lock-fRos9wRU.cjs → page-lock-DGhR_url.cjs} +1 -1
- package/dist/{page-locked-dialog-D2q9qkPk.js → page-locked-dialog-CNCUCcvH.js} +3 -3
- package/dist/{page-locked-dialog-D57d2gvn.cjs → page-locked-dialog-DTLnbfuP.cjs} +1 -1
- package/dist/{page-manager-new-D6DVIx2S.js → page-manager-new-BFFOLh-l.js} +4 -4
- package/dist/{page-manager-new-aE198gKS.cjs → page-manager-new-Dd2c-Q_O.cjs} +1 -1
- package/dist/{page-manager-search-and-filter-DGQEgKzy.cjs → page-manager-search-and-filter-BKdQUJ2W.cjs} +1 -1
- package/dist/{page-manager-search-and-filter-CuZkQaZg.js → page-manager-search-and-filter-C1IWF_4d.js} +3 -3
- package/dist/page-revisions-content-D0cflnj1.cjs +1 -0
- package/dist/{page-revisions-content-5rbicFbD.js → page-revisions-content-DHapiLck.js} +75 -67
- package/dist/pages.cjs +1 -1
- package/dist/pages.d.ts +2 -1
- package/dist/pages.js +1 -1
- package/dist/{publish-pages-content-WeGk-YLC.js → publish-pages-content-Bd2zJHtK.js} +4 -4
- package/dist/{publish-pages-content-DBb8M3TG.cjs → publish-pages-content-BqLcnKry.cjs} +1 -1
- package/dist/{register-chai-top-bar-ESJHs5s-.js → register-chai-top-bar-CX_JkRJn.js} +78 -78
- package/dist/register-chai-top-bar-DWTuRU53.cjs +1 -0
- package/dist/render.d.ts +2 -1
- package/dist/{rte-widget-modal-DBoPRXq-.cjs → rte-widget-modal-DiB5BjH1.cjs} +1 -1
- package/dist/{rte-widget-modal-J-_AytmK.js → rte-widget-modal-RS8PMKOn.js} +7 -7
- package/dist/runtime-client.cjs +1 -0
- package/dist/runtime-client.d.ts +158 -0
- package/dist/runtime-client.js +32 -0
- package/dist/runtime.cjs +1 -1
- package/dist/runtime.d.ts +1 -163
- package/dist/runtime.js +71 -72
- package/dist/{save-to-lib-CQQxoovF.js → save-to-lib--6ZXHEbC.js} +3 -3
- package/dist/{save-to-lib-0ysmXVbI.cjs → save-to-lib-BXJvaC1N.cjs} +1 -1
- package/dist/{selected-block-display-BWupQFoQ.cjs → selected-block-display-BfpJda4h.cjs} +1 -1
- package/dist/{selected-block-display-CgoXS8Hr.js → selected-block-display-CUnCqXQw.js} +3 -3
- package/dist/{seo-panel-B798Myp_.js → seo-panel-Bs-FcY1A.js} +3 -3
- package/dist/{seo-panel-BkFbXIL0.cjs → seo-panel-CQITMfZ6.cjs} +1 -1
- package/dist/{shared-json-ld-Clg_UEhd.js → shared-json-ld-7EujD341.js} +3 -3
- package/dist/{shared-json-ld-Cn3MCW6I.cjs → shared-json-ld-DDXXi-Mj.cjs} +1 -1
- package/dist/{slug-input-BHyD8cxk.cjs → slug-input-CsVJAr7r.cjs} +1 -1
- package/dist/{slug-input-hX5VaZpj.js → slug-input-DoEIq5rs.js} +2 -2
- package/dist/supabase-actions.cjs +1 -1
- package/dist/supabase-actions.d.ts +5 -0
- package/dist/supabase-actions.js +1 -1
- package/dist/{take-over-request-s1L5Yofb.js → take-over-request-C14kJ356.js} +3 -3
- package/dist/{take-over-request-Dzczo20q.cjs → take-over-request-D5Oo3MPo.cjs} +1 -1
- package/dist/{theme-panel-footer-sK6bYhEb.js → theme-panel-footer-Dvknelm8.js} +3 -3
- package/dist/{theme-panel-footer-NTNCL0SW.cjs → theme-panel-footer-Eeibz2JA.cjs} +1 -1
- package/dist/{translation-warning-modal-BfM4HGck.cjs → translation-warning-modal-CPzdHzqq.cjs} +1 -1
- package/dist/{translation-warning-modal-Jadkcver.js → translation-warning-modal-YlzP2XoO.js} +2 -2
- package/dist/{unmark-as-template-CqkHI3gR.cjs → unmark-as-template-BGDwuCnv.cjs} +1 -1
- package/dist/{unmark-as-template-D5b775eR.js → unmark-as-template-CPJvQk7L.js} +3 -3
- package/dist/{unpublish-page-BT5bCfs6.cjs → unpublish-page-BMowW5wT.cjs} +1 -1
- package/dist/{unpublish-page-DLLLgY43.js → unpublish-page-DlFHLlmI.js} +3 -3
- package/dist/web-blocks.cjs +1 -1
- package/dist/web-blocks.js +43 -43
- package/dist/{web-preview-C_yFwxEe.js → web-preview-BUnv3jIc.js} +2 -2
- package/dist/{web-preview-DU1MgppY.cjs → web-preview-D8GQHCjs.cjs} +1 -1
- package/package.json +29 -30
- package/dist/css-import-modal--bSJR-_y.cjs +0 -13
- package/dist/index-B-rSiAp_.cjs +0 -1
- package/dist/index-B0e71wJ1.cjs +0 -160
- package/dist/index-DKuwxj1x.cjs +0 -5
- package/dist/index-Dxfyt4d4.js +0 -39
- package/dist/page-revisions-content-CefqOvKX.cjs +0 -1
- package/dist/register-chai-top-bar-BqwKw4uy.cjs +0 -1
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
"use strict";var
|
|
2
|
-
Error message: ${Wt(t)}`,cause:t}),this[
|
|
3
|
-
Error message: ${Wt(r)}`,cause:r}),this[Pa]=!0,this.value=t}static isInstance(t){return H.hasMarker(t,_s)}static wrap({value:t,cause:r}){return zn.isInstance(r)&&r.value===t?r:new zn({value:t,cause:r})}};function T(e,t,r){function n(i,l){if(i._zod||Object.defineProperty(i,"_zod",{value:{def:l,constr:s,traits:new Set},enumerable:!1}),i._zod.traits.has(e))return;i._zod.traits.add(e),t(i,l);const u=s.prototype,c=Object.keys(u);for(let p=0;p<c.length;p++){const d=c[p];d in i||(i[d]=u[d].bind(i))}}const a=(r==null?void 0:r.Parent)??Object;class o extends a{}Object.defineProperty(o,"name",{value:e});function s(i){var l;const u=r!=null&&r.Parent?new o:this;n(u,i),(l=u._zod).deferred??(l.deferred=[]);for(const c of u._zod.deferred)c();return u}return Object.defineProperty(s,"init",{value:n}),Object.defineProperty(s,Symbol.hasInstance,{value:i=>{var l,u;return r!=null&&r.Parent&&i instanceof r.Parent?!0:(u=(l=i==null?void 0:i._zod)==null?void 0:l.traits)==null?void 0:u.has(e)}}),Object.defineProperty(s,"name",{value:e}),s}class Bt extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class ws extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}}const Ts={};function vt(e){return Ts}function bs(e){const t=Object.values(e).filter(n=>typeof n=="number");return Object.entries(e).filter(([n,a])=>t.indexOf(+n)===-1).map(([n,a])=>a)}function $n(e,t){return typeof t=="bigint"?t.toString():t}function sn(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function Jn(e){return e==null}function Yn(e){const t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Iu(e,t){const r=(e.toString().split(".")[1]||"").length,n=t.toString();let a=(n.split(".")[1]||"").length;if(a===0&&/\d?e-\d?/.test(n)){const l=n.match(/\d?e-(\d?)/);l!=null&&l[1]&&(a=Number.parseInt(l[1]))}const o=r>a?r:a,s=Number.parseInt(e.toFixed(o).replace(".","")),i=Number.parseInt(t.toFixed(o).replace(".",""));return s%i/10**o}const Da=Symbol("evaluating");function Y(e,t,r){let n;Object.defineProperty(e,t,{get(){if(n!==Da)return n===void 0&&(n=Da,n=r()),n},set(a){Object.defineProperty(e,t,{value:a})},configurable:!0})}function Pt(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function bt(...e){const t={};for(const r of e){const n=Object.getOwnPropertyDescriptors(r);Object.assign(t,n)}return Object.defineProperties({},t)}function za(e){return JSON.stringify(e)}function Su(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const Es="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function fr(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const Nu=sn(()=>{var e;if(typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)!=null&&e.includes("Cloudflare")))return!1;try{const t=Function;return new t(""),!0}catch{return!1}});function Vt(e){if(fr(e)===!1)return!1;const t=e.constructor;if(t===void 0||typeof t!="function")return!0;const r=t.prototype;return!(fr(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function Is(e){return Vt(e)?{...e}:Array.isArray(e)?[...e]:e}const Au=new Set(["string","number","symbol"]);function Ht(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Et(e,t,r){const n=new e._zod.constr(t??e._zod.def);return(!t||r!=null&&r.parent)&&(n._zod.parent=e),n}function k(e){const t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if((t==null?void 0:t.message)!==void 0){if((t==null?void 0: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 Ou(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}const xu={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 Ru(e,t){const r=e._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");const o=bt(e._zod.def,{get shape(){const s={};for(const i in t){if(!(i in r.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&(s[i]=r.shape[i])}return Pt(this,"shape",s),s},checks:[]});return Et(e,o)}function ku(e,t){const r=e._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");const o=bt(e._zod.def,{get shape(){const s={...e._zod.def.shape};for(const i in t){if(!(i in r.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&delete s[i]}return Pt(this,"shape",s),s},checks:[]});return Et(e,o)}function Pu(e,t){if(!Vt(t))throw new Error("Invalid input to extend: expected a plain object");const r=e._zod.def.checks;if(r&&r.length>0){const o=e._zod.def.shape;for(const s in t)if(Object.getOwnPropertyDescriptor(o,s)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}const a=bt(e._zod.def,{get shape(){const o={...e._zod.def.shape,...t};return Pt(this,"shape",o),o}});return Et(e,a)}function Cu(e,t){if(!Vt(t))throw new Error("Invalid input to safeExtend: expected a plain object");const r=bt(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t};return Pt(this,"shape",n),n}});return Et(e,r)}function Du(e,t){const r=bt(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t._zod.def.shape};return Pt(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:[]});return Et(e,r)}function zu(e,t,r){const a=t._zod.def.checks;if(a&&a.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");const s=bt(t._zod.def,{get shape(){const i=t._zod.def.shape,l={...i};if(r)for(const u in r){if(!(u in i))throw new Error(`Unrecognized key: "${u}"`);r[u]&&(l[u]=e?new e({type:"optional",innerType:i[u]}):i[u])}else for(const u in i)l[u]=e?new e({type:"optional",innerType:i[u]}):i[u];return Pt(this,"shape",l),l},checks:[]});return Et(t,s)}function $u(e,t,r){const n=bt(t._zod.def,{get shape(){const a=t._zod.def.shape,o={...a};if(r)for(const s in r){if(!(s in o))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=new e({type:"nonoptional",innerType:a[s]}))}else for(const s in a)o[s]=new e({type:"nonoptional",innerType:a[s]});return Pt(this,"shape",o),o}});return Et(t,n)}function Zt(e,t=0){var r;if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(((r=e.issues[n])==null?void 0:r.continue)!==!0)return!0;return!1}function Gt(e,t){return t.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function $r(e){return typeof e=="string"?e:e==null?void 0:e.message}function _t(e,t,r){var a,o,s,i,l,u;const n={...e,path:e.path??[]};if(!e.message){const c=$r((s=(o=(a=e.inst)==null?void 0:a._zod.def)==null?void 0:o.error)==null?void 0:s.call(o,e))??$r((i=t==null?void 0:t.error)==null?void 0:i.call(t,e))??$r((l=r.customError)==null?void 0:l.call(r,e))??$r((u=r.localeError)==null?void 0:u.call(r,e))??"Invalid input";n.message=c}return delete n.inst,delete n.continue,t!=null&&t.reportInput||delete n.input,n}function Wn(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function gr(...e){const[t,r,n]=e;return typeof t=="string"?{message:t,code:"custom",input:r,inst:n}:{...t}}const Ss=(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,$n,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Ns=T("$ZodError",Ss),As=T("$ZodError",Ss,{Parent:Error});function Mu(e,t=r=>r.message){const r={},n=[];for(const a of e.issues)a.path.length>0?(r[a.path[0]]=r[a.path[0]]||[],r[a.path[0]].push(t(a))):n.push(t(a));return{formErrors:n,fieldErrors:r}}function Fu(e,t=r=>r.message){const r={_errors:[]},n=a=>{for(const o of a.issues)if(o.code==="invalid_union"&&o.errors.length)o.errors.map(s=>n({issues:s}));else if(o.code==="invalid_key")n({issues:o.issues});else if(o.code==="invalid_element")n({issues:o.issues});else if(o.path.length===0)r._errors.push(t(o));else{let s=r,i=0;for(;i<o.path.length;){const l=o.path[i];i===o.path.length-1?(s[l]=s[l]||{_errors:[]},s[l]._errors.push(t(o))):s[l]=s[l]||{_errors:[]},s=s[l],i++}}};return n(e),r}const Kn=e=>(t,r,n,a)=>{const o=n?Object.assign(n,{async:!1}):{async:!1},s=t._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new Bt;if(s.issues.length){const i=new((a==null?void 0:a.Err)??e)(s.issues.map(l=>_t(l,o,vt())));throw Es(i,a==null?void 0:a.callee),i}return s.value},Xn=e=>async(t,r,n,a)=>{const o=n?Object.assign(n,{async:!0}):{async:!0};let s=t._zod.run({value:r,issues:[]},o);if(s instanceof Promise&&(s=await s),s.issues.length){const i=new((a==null?void 0:a.Err)??e)(s.issues.map(l=>_t(l,o,vt())));throw Es(i,a==null?void 0:a.callee),i}return s.value},ln=e=>(t,r,n)=>{const a=n?{...n,async:!1}:{async:!1},o=t._zod.run({value:r,issues:[]},a);if(o instanceof Promise)throw new Bt;return o.issues.length?{success:!1,error:new(e??Ns)(o.issues.map(s=>_t(s,a,vt())))}:{success:!0,data:o.value}},Lu=ln(As),un=e=>async(t,r,n)=>{const a=n?Object.assign(n,{async:!0}):{async:!0};let o=t._zod.run({value:r,issues:[]},a);return o instanceof Promise&&(o=await o),o.issues.length?{success:!1,error:new e(o.issues.map(s=>_t(s,a,vt())))}:{success:!0,data:o.value}},Uu=un(As),ju=e=>(t,r,n)=>{const a=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Kn(e)(t,r,a)},qu=e=>(t,r,n)=>Kn(e)(t,r,n),Zu=e=>async(t,r,n)=>{const a=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Xn(e)(t,r,a)},Gu=e=>async(t,r,n)=>Xn(e)(t,r,n),Bu=e=>(t,r,n)=>{const a=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return ln(e)(t,r,a)},Vu=e=>(t,r,n)=>ln(e)(t,r,n),Hu=e=>async(t,r,n)=>{const a=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return un(e)(t,r,a)},Ju=e=>async(t,r,n)=>un(e)(t,r,n),Yu=/^[cC][^\s-]{8,}$/,Wu=/^[0-9a-z]+$/,Ku=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Xu=/^[0-9a-vA-V]{20}$/,Qu=/^[A-Za-z0-9]{27}$/,ec=/^[a-zA-Z0-9_-]{21}$/,tc=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,rc=/^([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})$/,$a=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)$/,nc=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,ac="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function oc(){return new RegExp(ac,"u")}const sc=/^(?:(?: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])$/,ic=/^(([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}|:))$/,lc=/^((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])$/,uc=/^(([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])$/,cc=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Os=/^[A-Za-z0-9_-]*$/,dc=/^\+[1-9]\d{6,14}$/,xs="(?:(?:\\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])))",pc=new RegExp(`^${xs}$`);function Rs(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 fc(e){return new RegExp(`^${Rs(e)}$`)}function gc(e){const t=Rs({precision:e.precision}),r=["Z"];e.local&&r.push(""),e.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const n=`${t}(?:${r.join("|")})`;return new RegExp(`^${xs}T(?:${n})$`)}const mc=e=>{const t=e?`[\\s\\S]{${(e==null?void 0:e.minimum)??0},${(e==null?void 0:e.maximum)??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},hc=/^-?\d+$/,ks=/^-?\d+(?:\.\d+)?$/,yc=/^(?:true|false)$/i,vc=/^null$/i,_c=/^[^A-Z]*$/,wc=/^[^a-z]*$/,Me=T("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),Ps={number:"number",bigint:"bigint",object:"date"},Cs=T("$ZodCheckLessThan",(e,t)=>{Me.init(e,t);const r=Ps[typeof t.value];e._zod.onattach.push(n=>{const a=n._zod.bag,o=(t.inclusive?a.maximum:a.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<o&&(t.inclusive?a.maximum=t.value:a.exclusiveMaximum=t.value)}),e._zod.check=n=>{(t.inclusive?n.value<=t.value:n.value<t.value)||n.issues.push({origin:r,code:"too_big",maximum:typeof t.value=="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Ds=T("$ZodCheckGreaterThan",(e,t)=>{Me.init(e,t);const r=Ps[typeof t.value];e._zod.onattach.push(n=>{const a=n._zod.bag,o=(t.inclusive?a.minimum:a.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>o&&(t.inclusive?a.minimum=t.value:a.exclusiveMinimum=t.value)}),e._zod.check=n=>{(t.inclusive?n.value>=t.value:n.value>t.value)||n.issues.push({origin:r,code:"too_small",minimum:typeof t.value=="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Tc=T("$ZodCheckMultipleOf",(e,t)=>{Me.init(e,t),e._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=r=>{if(typeof r.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%t.value===BigInt(0):Iu(r.value,t.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:t.value,input:r.value,inst:e,continue:!t.abort})}}),bc=T("$ZodCheckNumberFormat",(e,t)=>{var s;Me.init(e,t),t.format=t.format||"float64";const r=(s=t.format)==null?void 0:s.includes("int"),n=r?"int":"number",[a,o]=xu[t.format];e._zod.onattach.push(i=>{const l=i._zod.bag;l.format=t.format,l.minimum=a,l.maximum=o,r&&(l.pattern=hc)}),e._zod.check=i=>{const l=i.value;if(r){if(!Number.isInteger(l)){i.issues.push({expected:n,format:t.format,code:"invalid_type",continue:!1,input:l,inst:e});return}if(!Number.isSafeInteger(l)){l>0?i.issues.push({input:l,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort}):i.issues.push({input:l,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort});return}}l<a&&i.issues.push({origin:"number",input:l,code:"too_small",minimum:a,inclusive:!0,inst:e,continue:!t.abort}),l>o&&i.issues.push({origin:"number",input:l,code:"too_big",maximum:o,inclusive:!0,inst:e,continue:!t.abort})}}),Ec=T("$ZodCheckMaxLength",(e,t)=>{var r;Me.init(e,t),(r=e._zod.def).when??(r.when=n=>{const a=n.value;return!Jn(a)&&a.length!==void 0}),e._zod.onattach.push(n=>{const a=n._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<a&&(n._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{const a=n.value;if(a.length<=t.maximum)return;const s=Wn(a);n.issues.push({origin:s,code:"too_big",maximum:t.maximum,inclusive:!0,input:a,inst:e,continue:!t.abort})}}),Ic=T("$ZodCheckMinLength",(e,t)=>{var r;Me.init(e,t),(r=e._zod.def).when??(r.when=n=>{const a=n.value;return!Jn(a)&&a.length!==void 0}),e._zod.onattach.push(n=>{const a=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>a&&(n._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{const a=n.value;if(a.length>=t.minimum)return;const s=Wn(a);n.issues.push({origin:s,code:"too_small",minimum:t.minimum,inclusive:!0,input:a,inst:e,continue:!t.abort})}}),Sc=T("$ZodCheckLengthEquals",(e,t)=>{var r;Me.init(e,t),(r=e._zod.def).when??(r.when=n=>{const a=n.value;return!Jn(a)&&a.length!==void 0}),e._zod.onattach.push(n=>{const a=n._zod.bag;a.minimum=t.length,a.maximum=t.length,a.length=t.length}),e._zod.check=n=>{const a=n.value,o=a.length;if(o===t.length)return;const s=Wn(a),i=o>t.length;n.issues.push({origin:s,...i?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),cn=T("$ZodCheckStringFormat",(e,t)=>{var r,n;Me.init(e,t),e._zod.onattach.push(a=>{const o=a._zod.bag;o.format=t.format,t.pattern&&(o.patterns??(o.patterns=new Set),o.patterns.add(t.pattern))}),t.pattern?(r=e._zod).check??(r.check=a=>{t.pattern.lastIndex=0,!t.pattern.test(a.value)&&a.issues.push({origin:"string",code:"invalid_format",format:t.format,input:a.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(n=e._zod).check??(n.check=()=>{})}),Nc=T("$ZodCheckRegex",(e,t)=>{cn.init(e,t),e._zod.check=r=>{t.pattern.lastIndex=0,!t.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Ac=T("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=_c),cn.init(e,t)}),Oc=T("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=wc),cn.init(e,t)}),xc=T("$ZodCheckIncludes",(e,t)=>{Me.init(e,t);const r=Ht(t.includes),n=new RegExp(typeof t.position=="number"?`^.{${t.position}}${r}`:r);t.pattern=n,e._zod.onattach.push(a=>{const o=a._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=a=>{a.value.includes(t.includes,t.position)||a.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:a.value,inst:e,continue:!t.abort})}}),Rc=T("$ZodCheckStartsWith",(e,t)=>{Me.init(e,t);const r=new RegExp(`^${Ht(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{const a=n._zod.bag;a.patterns??(a.patterns=new Set),a.patterns.add(r)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),kc=T("$ZodCheckEndsWith",(e,t)=>{Me.init(e,t);const r=new RegExp(`.*${Ht(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{const a=n._zod.bag;a.patterns??(a.patterns=new Set),a.patterns.add(r)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),Pc=T("$ZodCheckOverwrite",(e,t)=>{Me.init(e,t),e._zod.check=r=>{r.value=t.tx(r.value)}});class Cc{constructor(t=[]){this.content=[],this.indent=0,this&&(this.args=t)}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}const n=t.split(`
|
|
1
|
+
"use strict";var ou=Object.defineProperty;var su=(e,t,r)=>t in e?ou(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var Ee=(e,t,r)=>su(e,typeof t!="symbol"?t+"":t,r);const ut=require("./register-partial-type-ig9fUWIJ.cjs"),j=require("lodash-es"),iu=require("./_commonjsHelpers-DwGv2jUC.cjs"),lu=require("fs"),uu=require("path"),cu=require("os"),ss=require("crypto"),du=require("drizzle-orm/postgres-js"),pu=require("postgres"),f=require("drizzle-orm/pg-core"),m=require("drizzle-orm"),fu=require("./models-5gOsRC56.cjs"),_=require("zod"),gu=require("./core-Y0lXLwkq.cjs"),mu=require("node:crypto");var is="vercel.ai.error",hu=Symbol.for(is),Ta,ba,H=class ls extends(ba=Error,Ta=hu,ba){constructor({name:t,message:r,cause:n}){super(r),this[Ta]=!0,this.name=t,this.cause=n}static isInstance(t){return ls.hasMarker(t,is)}static hasMarker(t,r){const n=Symbol.for(r);return t!=null&&typeof t=="object"&&n in t&&typeof t[n]=="boolean"&&t[n]===!0}},us="AI_APICallError",cs=`vercel.ai.error.${us}`,yu=Symbol.for(cs),Ea,Ia,$e=class extends(Ia=H,Ea=yu,Ia){constructor({message:e,url:t,requestBodyValues:r,statusCode:n,responseHeaders:a,responseBody:o,cause:s,isRetryable:i=n!=null&&(n===408||n===409||n===429||n>=500),data:l}){super({name:us,message:e,cause:s}),this[Ea]=!0,this.url=t,this.requestBodyValues=r,this.statusCode=n,this.responseHeaders=a,this.responseBody=o,this.isRetryable=i,this.data=l}static isInstance(e){return H.hasMarker(e,cs)}},ds="AI_EmptyResponseBodyError",ps=`vercel.ai.error.${ds}`,vu=Symbol.for(ps),Sa,Aa,_u=class extends(Aa=H,Sa=vu,Aa){constructor({message:e="Empty response body"}={}){super({name:ds,message:e}),this[Sa]=!0}static isInstance(e){return H.hasMarker(e,ps)}};function Wt(e){return e==null?"unknown error":typeof e=="string"?e:e instanceof Error?e.message:JSON.stringify(e)}var fs="AI_InvalidArgumentError",gs=`vercel.ai.error.${fs}`,wu=Symbol.for(gs),Na,Oa,Tu=class extends(Oa=H,Na=wu,Oa){constructor({message:t,cause:r,argument:n}){super({name:fs,message:t,cause:r}),this[Na]=!0,this.argument=n}static isInstance(t){return H.hasMarker(t,gs)}},ms="AI_InvalidPromptError",hs=`vercel.ai.error.${ms}`,bu=Symbol.for(hs),Ra,xa,qt=class extends(xa=H,Ra=bu,xa){constructor({prompt:e,message:t,cause:r}){super({name:ms,message:`Invalid prompt: ${t}`,cause:r}),this[Ra]=!0,this.prompt=e}static isInstance(e){return H.hasMarker(e,hs)}},ys="AI_JSONParseError",vs=`vercel.ai.error.${ys}`,Eu=Symbol.for(vs),ka,Pa,Zr=class extends(Pa=H,ka=Eu,Pa){constructor({text:e,cause:t}){super({name:ys,message:`JSON parsing failed: Text: ${e}.
|
|
2
|
+
Error message: ${Wt(t)}`,cause:t}),this[ka]=!0,this.text=e}static isInstance(e){return H.hasMarker(e,vs)}},_s="AI_TypeValidationError",ws=`vercel.ai.error.${_s}`,Iu=Symbol.for(ws),Ca,za,Rt=class $n extends(za=H,Ca=Iu,za){constructor({value:t,cause:r}){super({name:_s,message:`Type validation failed: Value: ${JSON.stringify(t)}.
|
|
3
|
+
Error message: ${Wt(r)}`,cause:r}),this[Ca]=!0,this.value=t}static isInstance(t){return H.hasMarker(t,ws)}static wrap({value:t,cause:r}){return $n.isInstance(r)&&r.value===t?r:new $n({value:t,cause:r})}};function T(e,t,r){function n(i,l){if(i._zod||Object.defineProperty(i,"_zod",{value:{def:l,constr:s,traits:new Set},enumerable:!1}),i._zod.traits.has(e))return;i._zod.traits.add(e),t(i,l);const u=s.prototype,c=Object.keys(u);for(let p=0;p<c.length;p++){const d=c[p];d in i||(i[d]=u[d].bind(i))}}const a=(r==null?void 0:r.Parent)??Object;class o extends a{}Object.defineProperty(o,"name",{value:e});function s(i){var l;const u=r!=null&&r.Parent?new o:this;n(u,i),(l=u._zod).deferred??(l.deferred=[]);for(const c of u._zod.deferred)c();return u}return Object.defineProperty(s,"init",{value:n}),Object.defineProperty(s,Symbol.hasInstance,{value:i=>{var l,u;return r!=null&&r.Parent&&i instanceof r.Parent?!0:(u=(l=i==null?void 0:i._zod)==null?void 0:l.traits)==null?void 0:u.has(e)}}),Object.defineProperty(s,"name",{value:e}),s}class Bt extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Ts extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}}const bs={};function vt(e){return bs}function Es(e){const t=Object.values(e).filter(n=>typeof n=="number");return Object.entries(e).filter(([n,a])=>t.indexOf(+n)===-1).map(([n,a])=>a)}function Mn(e,t){return typeof t=="bigint"?t.toString():t}function ln(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function Yn(e){return e==null}function Wn(e){const t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Su(e,t){const r=(e.toString().split(".")[1]||"").length,n=t.toString();let a=(n.split(".")[1]||"").length;if(a===0&&/\d?e-\d?/.test(n)){const l=n.match(/\d?e-(\d?)/);l!=null&&l[1]&&(a=Number.parseInt(l[1]))}const o=r>a?r:a,s=Number.parseInt(e.toFixed(o).replace(".","")),i=Number.parseInt(t.toFixed(o).replace(".",""));return s%i/10**o}const Da=Symbol("evaluating");function Y(e,t,r){let n;Object.defineProperty(e,t,{get(){if(n!==Da)return n===void 0&&(n=Da,n=r()),n},set(a){Object.defineProperty(e,t,{value:a})},configurable:!0})}function Pt(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function bt(...e){const t={};for(const r of e){const n=Object.getOwnPropertyDescriptors(r);Object.assign(t,n)}return Object.defineProperties({},t)}function $a(e){return JSON.stringify(e)}function Au(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const Is="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function gr(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const Nu=ln(()=>{var e;if(typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)!=null&&e.includes("Cloudflare")))return!1;try{const t=Function;return new t(""),!0}catch{return!1}});function Vt(e){if(gr(e)===!1)return!1;const t=e.constructor;if(t===void 0||typeof t!="function")return!0;const r=t.prototype;return!(gr(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function Ss(e){return Vt(e)?{...e}:Array.isArray(e)?[...e]:e}const Ou=new Set(["string","number","symbol"]);function Ht(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Et(e,t,r){const n=new e._zod.constr(t??e._zod.def);return(!t||r!=null&&r.parent)&&(n._zod.parent=e),n}function k(e){const t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if((t==null?void 0:t.message)!==void 0){if((t==null?void 0: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 Ru(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}const xu={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 ku(e,t){const r=e._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");const o=bt(e._zod.def,{get shape(){const s={};for(const i in t){if(!(i in r.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&(s[i]=r.shape[i])}return Pt(this,"shape",s),s},checks:[]});return Et(e,o)}function Pu(e,t){const r=e._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");const o=bt(e._zod.def,{get shape(){const s={...e._zod.def.shape};for(const i in t){if(!(i in r.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&delete s[i]}return Pt(this,"shape",s),s},checks:[]});return Et(e,o)}function Cu(e,t){if(!Vt(t))throw new Error("Invalid input to extend: expected a plain object");const r=e._zod.def.checks;if(r&&r.length>0){const o=e._zod.def.shape;for(const s in t)if(Object.getOwnPropertyDescriptor(o,s)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}const a=bt(e._zod.def,{get shape(){const o={...e._zod.def.shape,...t};return Pt(this,"shape",o),o}});return Et(e,a)}function zu(e,t){if(!Vt(t))throw new Error("Invalid input to safeExtend: expected a plain object");const r=bt(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t};return Pt(this,"shape",n),n}});return Et(e,r)}function Du(e,t){const r=bt(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t._zod.def.shape};return Pt(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:[]});return Et(e,r)}function $u(e,t,r){const a=t._zod.def.checks;if(a&&a.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");const s=bt(t._zod.def,{get shape(){const i=t._zod.def.shape,l={...i};if(r)for(const u in r){if(!(u in i))throw new Error(`Unrecognized key: "${u}"`);r[u]&&(l[u]=e?new e({type:"optional",innerType:i[u]}):i[u])}else for(const u in i)l[u]=e?new e({type:"optional",innerType:i[u]}):i[u];return Pt(this,"shape",l),l},checks:[]});return Et(t,s)}function Mu(e,t,r){const n=bt(t._zod.def,{get shape(){const a=t._zod.def.shape,o={...a};if(r)for(const s in r){if(!(s in o))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=new e({type:"nonoptional",innerType:a[s]}))}else for(const s in a)o[s]=new e({type:"nonoptional",innerType:a[s]});return Pt(this,"shape",o),o}});return Et(t,n)}function Zt(e,t=0){var r;if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(((r=e.issues[n])==null?void 0:r.continue)!==!0)return!0;return!1}function Gt(e,t){return t.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function Mr(e){return typeof e=="string"?e:e==null?void 0:e.message}function _t(e,t,r){var a,o,s,i,l,u;const n={...e,path:e.path??[]};if(!e.message){const c=Mr((s=(o=(a=e.inst)==null?void 0:a._zod.def)==null?void 0:o.error)==null?void 0:s.call(o,e))??Mr((i=t==null?void 0:t.error)==null?void 0:i.call(t,e))??Mr((l=r.customError)==null?void 0:l.call(r,e))??Mr((u=r.localeError)==null?void 0:u.call(r,e))??"Invalid input";n.message=c}return delete n.inst,delete n.continue,t!=null&&t.reportInput||delete n.input,n}function Kn(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function mr(...e){const[t,r,n]=e;return typeof t=="string"?{message:t,code:"custom",input:r,inst:n}:{...t}}const As=(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,Mn,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Ns=T("$ZodError",As),Os=T("$ZodError",As,{Parent:Error});function Fu(e,t=r=>r.message){const r={},n=[];for(const a of e.issues)a.path.length>0?(r[a.path[0]]=r[a.path[0]]||[],r[a.path[0]].push(t(a))):n.push(t(a));return{formErrors:n,fieldErrors:r}}function Lu(e,t=r=>r.message){const r={_errors:[]},n=a=>{for(const o of a.issues)if(o.code==="invalid_union"&&o.errors.length)o.errors.map(s=>n({issues:s}));else if(o.code==="invalid_key")n({issues:o.issues});else if(o.code==="invalid_element")n({issues:o.issues});else if(o.path.length===0)r._errors.push(t(o));else{let s=r,i=0;for(;i<o.path.length;){const l=o.path[i];i===o.path.length-1?(s[l]=s[l]||{_errors:[]},s[l]._errors.push(t(o))):s[l]=s[l]||{_errors:[]},s=s[l],i++}}};return n(e),r}const Xn=e=>(t,r,n,a)=>{const o=n?Object.assign(n,{async:!1}):{async:!1},s=t._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new Bt;if(s.issues.length){const i=new((a==null?void 0:a.Err)??e)(s.issues.map(l=>_t(l,o,vt())));throw Is(i,a==null?void 0:a.callee),i}return s.value},Qn=e=>async(t,r,n,a)=>{const o=n?Object.assign(n,{async:!0}):{async:!0};let s=t._zod.run({value:r,issues:[]},o);if(s instanceof Promise&&(s=await s),s.issues.length){const i=new((a==null?void 0:a.Err)??e)(s.issues.map(l=>_t(l,o,vt())));throw Is(i,a==null?void 0:a.callee),i}return s.value},un=e=>(t,r,n)=>{const a=n?{...n,async:!1}:{async:!1},o=t._zod.run({value:r,issues:[]},a);if(o instanceof Promise)throw new Bt;return o.issues.length?{success:!1,error:new(e??Ns)(o.issues.map(s=>_t(s,a,vt())))}:{success:!0,data:o.value}},Uu=un(Os),cn=e=>async(t,r,n)=>{const a=n?Object.assign(n,{async:!0}):{async:!0};let o=t._zod.run({value:r,issues:[]},a);return o instanceof Promise&&(o=await o),o.issues.length?{success:!1,error:new e(o.issues.map(s=>_t(s,a,vt())))}:{success:!0,data:o.value}},ju=cn(Os),qu=e=>(t,r,n)=>{const a=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Xn(e)(t,r,a)},Zu=e=>(t,r,n)=>Xn(e)(t,r,n),Gu=e=>async(t,r,n)=>{const a=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Qn(e)(t,r,a)},Bu=e=>async(t,r,n)=>Qn(e)(t,r,n),Vu=e=>(t,r,n)=>{const a=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return un(e)(t,r,a)},Hu=e=>(t,r,n)=>un(e)(t,r,n),Ju=e=>async(t,r,n)=>{const a=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return cn(e)(t,r,a)},Yu=e=>async(t,r,n)=>cn(e)(t,r,n),Wu=/^[cC][^\s-]{8,}$/,Ku=/^[0-9a-z]+$/,Xu=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Qu=/^[0-9a-vA-V]{20}$/,ec=/^[A-Za-z0-9]{27}$/,tc=/^[a-zA-Z0-9_-]{21}$/,rc=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,nc=/^([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})$/,Ma=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)$/,ac=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,oc="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function sc(){return new RegExp(oc,"u")}const ic=/^(?:(?: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])$/,lc=/^(([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}|:))$/,uc=/^((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])$/,cc=/^(([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])$/,dc=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Rs=/^[A-Za-z0-9_-]*$/,pc=/^\+[1-9]\d{6,14}$/,xs="(?:(?:\\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])))",fc=new RegExp(`^${xs}$`);function ks(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 gc(e){return new RegExp(`^${ks(e)}$`)}function mc(e){const t=ks({precision:e.precision}),r=["Z"];e.local&&r.push(""),e.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const n=`${t}(?:${r.join("|")})`;return new RegExp(`^${xs}T(?:${n})$`)}const hc=e=>{const t=e?`[\\s\\S]{${(e==null?void 0:e.minimum)??0},${(e==null?void 0:e.maximum)??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},yc=/^-?\d+$/,Ps=/^-?\d+(?:\.\d+)?$/,vc=/^(?:true|false)$/i,_c=/^null$/i,wc=/^[^A-Z]*$/,Tc=/^[^a-z]*$/,Me=T("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),Cs={number:"number",bigint:"bigint",object:"date"},zs=T("$ZodCheckLessThan",(e,t)=>{Me.init(e,t);const r=Cs[typeof t.value];e._zod.onattach.push(n=>{const a=n._zod.bag,o=(t.inclusive?a.maximum:a.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<o&&(t.inclusive?a.maximum=t.value:a.exclusiveMaximum=t.value)}),e._zod.check=n=>{(t.inclusive?n.value<=t.value:n.value<t.value)||n.issues.push({origin:r,code:"too_big",maximum:typeof t.value=="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Ds=T("$ZodCheckGreaterThan",(e,t)=>{Me.init(e,t);const r=Cs[typeof t.value];e._zod.onattach.push(n=>{const a=n._zod.bag,o=(t.inclusive?a.minimum:a.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>o&&(t.inclusive?a.minimum=t.value:a.exclusiveMinimum=t.value)}),e._zod.check=n=>{(t.inclusive?n.value>=t.value:n.value>t.value)||n.issues.push({origin:r,code:"too_small",minimum:typeof t.value=="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),bc=T("$ZodCheckMultipleOf",(e,t)=>{Me.init(e,t),e._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=r=>{if(typeof r.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%t.value===BigInt(0):Su(r.value,t.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:t.value,input:r.value,inst:e,continue:!t.abort})}}),Ec=T("$ZodCheckNumberFormat",(e,t)=>{var s;Me.init(e,t),t.format=t.format||"float64";const r=(s=t.format)==null?void 0:s.includes("int"),n=r?"int":"number",[a,o]=xu[t.format];e._zod.onattach.push(i=>{const l=i._zod.bag;l.format=t.format,l.minimum=a,l.maximum=o,r&&(l.pattern=yc)}),e._zod.check=i=>{const l=i.value;if(r){if(!Number.isInteger(l)){i.issues.push({expected:n,format:t.format,code:"invalid_type",continue:!1,input:l,inst:e});return}if(!Number.isSafeInteger(l)){l>0?i.issues.push({input:l,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort}):i.issues.push({input:l,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort});return}}l<a&&i.issues.push({origin:"number",input:l,code:"too_small",minimum:a,inclusive:!0,inst:e,continue:!t.abort}),l>o&&i.issues.push({origin:"number",input:l,code:"too_big",maximum:o,inclusive:!0,inst:e,continue:!t.abort})}}),Ic=T("$ZodCheckMaxLength",(e,t)=>{var r;Me.init(e,t),(r=e._zod.def).when??(r.when=n=>{const a=n.value;return!Yn(a)&&a.length!==void 0}),e._zod.onattach.push(n=>{const a=n._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<a&&(n._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{const a=n.value;if(a.length<=t.maximum)return;const s=Kn(a);n.issues.push({origin:s,code:"too_big",maximum:t.maximum,inclusive:!0,input:a,inst:e,continue:!t.abort})}}),Sc=T("$ZodCheckMinLength",(e,t)=>{var r;Me.init(e,t),(r=e._zod.def).when??(r.when=n=>{const a=n.value;return!Yn(a)&&a.length!==void 0}),e._zod.onattach.push(n=>{const a=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>a&&(n._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{const a=n.value;if(a.length>=t.minimum)return;const s=Kn(a);n.issues.push({origin:s,code:"too_small",minimum:t.minimum,inclusive:!0,input:a,inst:e,continue:!t.abort})}}),Ac=T("$ZodCheckLengthEquals",(e,t)=>{var r;Me.init(e,t),(r=e._zod.def).when??(r.when=n=>{const a=n.value;return!Yn(a)&&a.length!==void 0}),e._zod.onattach.push(n=>{const a=n._zod.bag;a.minimum=t.length,a.maximum=t.length,a.length=t.length}),e._zod.check=n=>{const a=n.value,o=a.length;if(o===t.length)return;const s=Kn(a),i=o>t.length;n.issues.push({origin:s,...i?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),dn=T("$ZodCheckStringFormat",(e,t)=>{var r,n;Me.init(e,t),e._zod.onattach.push(a=>{const o=a._zod.bag;o.format=t.format,t.pattern&&(o.patterns??(o.patterns=new Set),o.patterns.add(t.pattern))}),t.pattern?(r=e._zod).check??(r.check=a=>{t.pattern.lastIndex=0,!t.pattern.test(a.value)&&a.issues.push({origin:"string",code:"invalid_format",format:t.format,input:a.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(n=e._zod).check??(n.check=()=>{})}),Nc=T("$ZodCheckRegex",(e,t)=>{dn.init(e,t),e._zod.check=r=>{t.pattern.lastIndex=0,!t.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Oc=T("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=wc),dn.init(e,t)}),Rc=T("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Tc),dn.init(e,t)}),xc=T("$ZodCheckIncludes",(e,t)=>{Me.init(e,t);const r=Ht(t.includes),n=new RegExp(typeof t.position=="number"?`^.{${t.position}}${r}`:r);t.pattern=n,e._zod.onattach.push(a=>{const o=a._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=a=>{a.value.includes(t.includes,t.position)||a.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:a.value,inst:e,continue:!t.abort})}}),kc=T("$ZodCheckStartsWith",(e,t)=>{Me.init(e,t);const r=new RegExp(`^${Ht(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{const a=n._zod.bag;a.patterns??(a.patterns=new Set),a.patterns.add(r)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),Pc=T("$ZodCheckEndsWith",(e,t)=>{Me.init(e,t);const r=new RegExp(`.*${Ht(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{const a=n._zod.bag;a.patterns??(a.patterns=new Set),a.patterns.add(r)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),Cc=T("$ZodCheckOverwrite",(e,t)=>{Me.init(e,t),e._zod.check=r=>{r.value=t.tx(r.value)}});class zc{constructor(t=[]){this.content=[],this.indent=0,this&&(this.args=t)}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}const n=t.split(`
|
|
4
4
|
`).filter(s=>s),a=Math.min(...n.map(s=>s.length-s.trimStart().length)),o=n.map(s=>s.slice(a)).map(s=>" ".repeat(this.indent*2)+s);for(const s of o)this.content.push(s)}compile(){const t=Function,r=this==null?void 0:this.args,a=[...((this==null?void 0:this.content)??[""]).map(o=>` ${o}`)];return new t(...r,a.join(`
|
|
5
|
-
`))}}const Dc={major:4,minor:3,patch:5},ce=T("$ZodType",(e,t)=>{var a;var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Dc;const n=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&n.unshift(e);for(const o of n)for(const s of o._zod.onattach)s(e);if(n.length===0)(r=e._zod).deferred??(r.deferred=[]),(a=e._zod.deferred)==null||a.push(()=>{e._zod.run=e._zod.parse});else{const o=(i,l,u)=>{let c=Zt(i),p;for(const d of l){if(d._zod.def.when){if(!d._zod.def.when(i))continue}else if(c)continue;const v=i.issues.length,E=d._zod.check(i);if(E instanceof Promise&&(u==null?void 0:u.async)===!1)throw new Bt;if(p||E instanceof Promise)p=(p??Promise.resolve()).then(async()=>{await E,i.issues.length!==v&&(c||(c=Zt(i,v)))});else{if(i.issues.length===v)continue;c||(c=Zt(i,v))}}return p?p.then(()=>i):i},s=(i,l,u)=>{if(Zt(i))return i.aborted=!0,i;const c=o(l,n,u);if(c instanceof Promise){if(u.async===!1)throw new Bt;return c.then(p=>e._zod.parse(p,u))}return e._zod.parse(c,u)};e._zod.run=(i,l)=>{if(l.skipChecks)return e._zod.parse(i,l);if(l.direction==="backward"){const c=e._zod.parse({value:i.value,issues:[]},{...l,skipChecks:!0});return c instanceof Promise?c.then(p=>s(p,i,l)):s(c,i,l)}const u=e._zod.parse(i,l);if(u instanceof Promise){if(l.async===!1)throw new Bt;return u.then(c=>o(c,n,l))}return o(u,n,l)}}Y(e,"~standard",()=>({validate:o=>{var s;try{const i=
|
|
6
|
-
if (${
|
|
5
|
+
`))}}const Dc={major:4,minor:3,patch:5},ce=T("$ZodType",(e,t)=>{var a;var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Dc;const n=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&n.unshift(e);for(const o of n)for(const s of o._zod.onattach)s(e);if(n.length===0)(r=e._zod).deferred??(r.deferred=[]),(a=e._zod.deferred)==null||a.push(()=>{e._zod.run=e._zod.parse});else{const o=(i,l,u)=>{let c=Zt(i),p;for(const d of l){if(d._zod.def.when){if(!d._zod.def.when(i))continue}else if(c)continue;const v=i.issues.length,E=d._zod.check(i);if(E instanceof Promise&&(u==null?void 0:u.async)===!1)throw new Bt;if(p||E instanceof Promise)p=(p??Promise.resolve()).then(async()=>{await E,i.issues.length!==v&&(c||(c=Zt(i,v)))});else{if(i.issues.length===v)continue;c||(c=Zt(i,v))}}return p?p.then(()=>i):i},s=(i,l,u)=>{if(Zt(i))return i.aborted=!0,i;const c=o(l,n,u);if(c instanceof Promise){if(u.async===!1)throw new Bt;return c.then(p=>e._zod.parse(p,u))}return e._zod.parse(c,u)};e._zod.run=(i,l)=>{if(l.skipChecks)return e._zod.parse(i,l);if(l.direction==="backward"){const c=e._zod.parse({value:i.value,issues:[]},{...l,skipChecks:!0});return c instanceof Promise?c.then(p=>s(p,i,l)):s(c,i,l)}const u=e._zod.parse(i,l);if(u instanceof Promise){if(l.async===!1)throw new Bt;return u.then(c=>o(c,n,l))}return o(u,n,l)}}Y(e,"~standard",()=>({validate:o=>{var s;try{const i=Uu(e,o);return i.success?{value:i.data}:{issues:(s=i.error)==null?void 0:s.issues}}catch{return ju(e,o).then(l=>{var u;return l.success?{value:l.data}:{issues:(u=l.error)==null?void 0:u.issues}})}},vendor:"zod",version:1}))}),ea=T("$ZodString",(e,t)=>{var r;ce.init(e,t),e._zod.pattern=[...((r=e==null?void 0:e._zod.bag)==null?void 0:r.patterns)??[]].pop()??hc(e._zod.bag),e._zod.parse=(n,a)=>{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}}),me=T("$ZodStringFormat",(e,t)=>{dn.init(e,t),ea.init(e,t)}),$c=T("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=nc),me.init(e,t)}),Mc=T("$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=Ma(n))}else t.pattern??(t.pattern=Ma());me.init(e,t)}),Fc=T("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=ac),me.init(e,t)}),Lc=T("$ZodURL",(e,t)=>{me.init(e,t),e._zod.check=r=>{try{const n=r.value.trim(),a=new URL(n);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(a.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:r.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(a.protocol.endsWith(":")?a.protocol.slice(0,-1):a.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:r.value,inst:e,continue:!t.abort})),t.normalize?r.value=a.href:r.value=n;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),Uc=T("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=sc()),me.init(e,t)}),jc=T("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=tc),me.init(e,t)}),qc=T("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Wu),me.init(e,t)}),Zc=T("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Ku),me.init(e,t)}),Gc=T("$ZodULID",(e,t)=>{t.pattern??(t.pattern=Xu),me.init(e,t)}),Bc=T("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Qu),me.init(e,t)}),Vc=T("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=ec),me.init(e,t)}),Hc=T("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=mc(t)),me.init(e,t)}),Jc=T("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=fc),me.init(e,t)}),Yc=T("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=gc(t)),me.init(e,t)}),Wc=T("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=rc),me.init(e,t)}),Kc=T("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=ic),me.init(e,t),e._zod.bag.format="ipv4"}),Xc=T("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=lc),me.init(e,t),e._zod.bag.format="ipv6",e._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}}}),Qc=T("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=uc),me.init(e,t)}),ed=T("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=cc),me.init(e,t),e._zod.check=r=>{const n=r.value.split("/");try{if(n.length!==2)throw new Error;const[a,o]=n;if(!o)throw new Error;const s=Number(o);if(`${s}`!==o)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${a}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}}});function $s(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}const td=T("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=dc),me.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=r=>{$s(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}});function rd(e){if(!Rs.test(e))return!1;const t=e.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return $s(r)}const nd=T("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Rs),me.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=r=>{rd(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),ad=T("$ZodE164",(e,t)=>{t.pattern??(t.pattern=pc),me.init(e,t)});function od(e,t=null){try{const r=e.split(".");if(r.length!==3)return!1;const[n]=r;if(!n)return!1;const a=JSON.parse(atob(n));return!("typ"in a&&(a==null?void 0:a.typ)!=="JWT"||!a.alg||t&&(!("alg"in a)||a.alg!==t))}catch{return!1}}const sd=T("$ZodJWT",(e,t)=>{me.init(e,t),e._zod.check=r=>{od(r.value,t.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}}),Ms=T("$ZodNumber",(e,t)=>{ce.init(e,t),e._zod.pattern=e._zod.bag.pattern??Ps,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=Number(r.value)}catch{}const a=r.value;if(typeof a=="number"&&!Number.isNaN(a)&&Number.isFinite(a))return r;const o=typeof a=="number"?Number.isNaN(a)?"NaN":Number.isFinite(a)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:a,inst:e,...o?{received:o}:{}}),r}}),id=T("$ZodNumberFormat",(e,t)=>{Ec.init(e,t),Ms.init(e,t)}),ld=T("$ZodBoolean",(e,t)=>{ce.init(e,t),e._zod.pattern=vc,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=!!r.value}catch{}const a=r.value;return typeof a=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:a,inst:e}),r}}),ud=T("$ZodNull",(e,t)=>{ce.init(e,t),e._zod.pattern=_c,e._zod.values=new Set([null]),e._zod.parse=(r,n)=>{const a=r.value;return a===null||r.issues.push({expected:"null",code:"invalid_type",input:a,inst:e}),r}}),cd=T("$ZodAny",(e,t)=>{ce.init(e,t),e._zod.parse=r=>r}),dd=T("$ZodUnknown",(e,t)=>{ce.init(e,t),e._zod.parse=r=>r}),pd=T("$ZodNever",(e,t)=>{ce.init(e,t),e._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function Fa(e,t,r){e.issues.length&&t.issues.push(...Gt(r,e.issues)),t.value[r]=e.value}const fd=T("$ZodArray",(e,t)=>{ce.init(e,t),e._zod.parse=(r,n)=>{const a=r.value;if(!Array.isArray(a))return r.issues.push({expected:"array",code:"invalid_type",input:a,inst:e}),r;r.value=Array(a.length);const o=[];for(let s=0;s<a.length;s++){const i=a[s],l=t.element._zod.run({value:i,issues:[]},n);l instanceof Promise?o.push(l.then(u=>Fa(u,r,s))):Fa(l,r,s)}return o.length?Promise.all(o).then(()=>r):r}});function Gr(e,t,r,n,a){if(e.issues.length){if(a&&!(r in n))return;t.issues.push(...Gt(r,e.issues))}e.value===void 0?r in n&&(t.value[r]=void 0):t.value[r]=e.value}function Fs(e){var n,a,o,s;const t=Object.keys(e.shape);for(const i of t)if(!((s=(o=(a=(n=e.shape)==null?void 0:n[i])==null?void 0:a._zod)==null?void 0:o.traits)!=null&&s.has("$ZodType")))throw new Error(`Invalid element at key "${i}": expected a Zod schema`);const r=Ru(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(r)}}function Ls(e,t,r,n,a,o){const s=[],i=a.keySet,l=a.catchall._zod,u=l.def.type,c=l.optout==="optional";for(const p in t){if(i.has(p))continue;if(u==="never"){s.push(p);continue}const d=l.run({value:t[p],issues:[]},n);d instanceof Promise?e.push(d.then(v=>Gr(v,r,p,t,c))):Gr(d,r,p,t,c)}return s.length&&r.issues.push({code:"unrecognized_keys",keys:s,input:t,inst:o}),e.length?Promise.all(e).then(()=>r):r}const gd=T("$ZodObject",(e,t)=>{ce.init(e,t);const r=Object.getOwnPropertyDescriptor(t,"shape");if(!(r!=null&&r.get)){const i=t.shape;Object.defineProperty(t,"shape",{get:()=>{const l={...i};return Object.defineProperty(t,"shape",{value:l}),l}})}const n=ln(()=>Fs(t));Y(e._zod,"propValues",()=>{const i=t.shape,l={};for(const u in i){const c=i[u]._zod;if(c.values){l[u]??(l[u]=new Set);for(const p of c.values)l[u].add(p)}}return l});const a=gr,o=t.catchall;let s;e._zod.parse=(i,l)=>{s??(s=n.value);const u=i.value;if(!a(u))return i.issues.push({expected:"object",code:"invalid_type",input:u,inst:e}),i;i.value={};const c=[],p=s.shape;for(const d of s.keys){const v=p[d],E=v._zod.optout==="optional",w=v._zod.run({value:u[d],issues:[]},l);w instanceof Promise?c.push(w.then(I=>Gr(I,i,d,u,E))):Gr(w,i,d,u,E)}return o?Ls(c,u,i,l,n.value,e):c.length?Promise.all(c).then(()=>i):i}}),md=T("$ZodObjectJIT",(e,t)=>{gd.init(e,t);const r=e._zod.parse,n=ln(()=>Fs(t)),a=d=>{var h;const v=new zc(["shape","payload","ctx"]),E=n.value,w=D=>{const R=$a(D);return`shape[${R}]._zod.run({ value: input[${R}], issues: [] }, ctx)`};v.write("const input = payload.value;");const I=Object.create(null);let P=0;for(const D of E.keys)I[D]=`key_${P++}`;v.write("const newResult = {};");for(const D of E.keys){const R=I[D],y=$a(D),O=d[D],z=((h=O==null?void 0:O._zod)==null?void 0:h.optout)==="optional";v.write(`const ${R} = ${w(D)};`),z?v.write(`
|
|
6
|
+
if (${R}.issues.length) {
|
|
7
7
|
if (${y} in input) {
|
|
8
|
-
payload.issues = payload.issues.concat(${
|
|
8
|
+
payload.issues = payload.issues.concat(${R}.issues.map(iss => ({
|
|
9
9
|
...iss,
|
|
10
10
|
path: iss.path ? [${y}, ...iss.path] : [${y}]
|
|
11
11
|
})));
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
-
if (${
|
|
15
|
+
if (${R}.value === undefined) {
|
|
16
16
|
if (${y} in input) {
|
|
17
17
|
newResult[${y}] = undefined;
|
|
18
18
|
}
|
|
19
19
|
} else {
|
|
20
|
-
newResult[${y}] = ${
|
|
20
|
+
newResult[${y}] = ${R}.value;
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
`):v.write(`
|
|
24
|
-
if (${
|
|
25
|
-
payload.issues = payload.issues.concat(${
|
|
24
|
+
if (${R}.issues.length) {
|
|
25
|
+
payload.issues = payload.issues.concat(${R}.issues.map(iss => ({
|
|
26
26
|
...iss,
|
|
27
27
|
path: iss.path ? [${y}, ...iss.path] : [${y}]
|
|
28
28
|
})));
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
-
if (${
|
|
31
|
+
if (${R}.value === undefined) {
|
|
32
32
|
if (${y} in input) {
|
|
33
33
|
newResult[${y}] = undefined;
|
|
34
34
|
}
|
|
35
35
|
} else {
|
|
36
|
-
newResult[${y}] = ${
|
|
36
|
+
newResult[${y}] = ${R}.value;
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
-
`)}v.write("payload.value = newResult;"),v.write("return payload;");const C=v.compile();return(z,x)=>C(d,z,x)};let o;const s=fr,i=!Ts.jitless,u=i&&Nu.value,c=t.catchall;let p;e._zod.parse=(d,v)=>{p??(p=n.value);const E=d.value;return s(E)?i&&u&&(v==null?void 0:v.async)===!1&&v.jitless!==!0?(o||(o=a(t.shape)),d=o(d,v),c?Fs([],E,d,v,p,e):d):r(d,v):(d.issues.push({expected:"object",code:"invalid_type",input:E,inst:e}),d)}});function Fa(e,t,r,n){for(const o of e)if(o.issues.length===0)return t.value=o.value,t;const a=e.filter(o=>!Zt(o));return a.length===1?(t.value=a[0].value,a[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map(o=>o.issues.map(s=>_t(s,n,vt())))}),t)}const Ls=T("$ZodUnion",(e,t)=>{ce.init(e,t),Y(e._zod,"optin",()=>t.options.some(a=>a._zod.optin==="optional")?"optional":void 0),Y(e._zod,"optout",()=>t.options.some(a=>a._zod.optout==="optional")?"optional":void 0),Y(e._zod,"values",()=>{if(t.options.every(a=>a._zod.values))return new Set(t.options.flatMap(a=>Array.from(a._zod.values)))}),Y(e._zod,"pattern",()=>{if(t.options.every(a=>a._zod.pattern)){const a=t.options.map(o=>o._zod.pattern);return new RegExp(`^(${a.map(o=>Yn(o.source)).join("|")})$`)}});const r=t.options.length===1,n=t.options[0]._zod.run;e._zod.parse=(a,o)=>{if(r)return n(a,o);let s=!1;const i=[];for(const l of t.options){const u=l._zod.run({value:a.value,issues:[]},o);if(u instanceof Promise)i.push(u),s=!0;else{if(u.issues.length===0)return u;i.push(u)}}return s?Promise.all(i).then(l=>Fa(l,a,e,o)):Fa(i,a,e,o)}}),md=T("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,Ls.init(e,t);const r=e._zod.parse;Y(e._zod,"propValues",()=>{const a={};for(const o of t.options){const s=o._zod.propValues;if(!s||Object.keys(s).length===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(o)}"`);for(const[i,l]of Object.entries(s)){a[i]||(a[i]=new Set);for(const u of l)a[i].add(u)}}return a});const n=sn(()=>{var s;const a=t.options,o=new Map;for(const i of a){const l=(s=i._zod.propValues)==null?void 0:s[t.discriminator];if(!l||l.size===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(i)}"`);for(const u of l){if(o.has(u))throw new Error(`Duplicate discriminator value "${String(u)}"`);o.set(u,i)}}return o});e._zod.parse=(a,o)=>{const s=a.value;if(!fr(s))return a.issues.push({code:"invalid_type",expected:"object",input:s,inst:e}),a;const i=n.value.get(s==null?void 0:s[t.discriminator]);return i?i._zod.run(a,o):t.unionFallback?r(a,o):(a.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,input:s,path:[t.discriminator],inst:e}),a)}}),hd=T("$ZodIntersection",(e,t)=>{ce.init(e,t),e._zod.parse=(r,n)=>{const a=r.value,o=t.left._zod.run({value:a,issues:[]},n),s=t.right._zod.run({value:a,issues:[]},n);return o instanceof Promise||s instanceof Promise?Promise.all([o,s]).then(([l,u])=>La(r,l,u)):La(r,o,s)}});function Mn(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(Vt(e)&&Vt(t)){const r=Object.keys(t),n=Object.keys(e).filter(o=>r.indexOf(o)!==-1),a={...e,...t};for(const o of n){const s=Mn(e[o],t[o]);if(!s.valid)return{valid:!1,mergeErrorPath:[o,...s.mergeErrorPath]};a[o]=s.data}return{valid:!0,data:a}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const r=[];for(let n=0;n<e.length;n++){const a=e[n],o=t[n],s=Mn(a,o);if(!s.valid)return{valid:!1,mergeErrorPath:[n,...s.mergeErrorPath]};r.push(s.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function La(e,t,r){const n=new Map;let a;for(const i of t.issues)if(i.code==="unrecognized_keys"){a??(a=i);for(const l of i.keys)n.has(l)||n.set(l,{}),n.get(l).l=!0}else e.issues.push(i);for(const i of r.issues)if(i.code==="unrecognized_keys")for(const l of i.keys)n.has(l)||n.set(l,{}),n.get(l).r=!0;else e.issues.push(i);const o=[...n].filter(([,i])=>i.l&&i.r).map(([i])=>i);if(o.length&&a&&e.issues.push({...a,keys:o}),Zt(e))return e;const s=Mn(t.value,r.value);if(!s.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(s.mergeErrorPath)}`);return e.value=s.data,e}const yd=T("$ZodRecord",(e,t)=>{ce.init(e,t),e._zod.parse=(r,n)=>{const a=r.value;if(!Vt(a))return r.issues.push({expected:"record",code:"invalid_type",input:a,inst:e}),r;const o=[],s=t.keyType._zod.values;if(s){r.value={};const i=new Set;for(const u of s)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){i.add(typeof u=="number"?u.toString():u);const c=t.valueType._zod.run({value:a[u],issues:[]},n);c instanceof Promise?o.push(c.then(p=>{p.issues.length&&r.issues.push(...Gt(u,p.issues)),r.value[u]=p.value})):(c.issues.length&&r.issues.push(...Gt(u,c.issues)),r.value[u]=c.value)}let l;for(const u in a)i.has(u)||(l=l??[],l.push(u));l&&l.length>0&&r.issues.push({code:"unrecognized_keys",input:a,inst:e,keys:l})}else{r.value={};for(const i of Reflect.ownKeys(a)){if(i==="__proto__")continue;let l=t.keyType._zod.run({value:i,issues:[]},n);if(l instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof i=="string"&&ks.test(i)&&l.issues.length&&l.issues.some(p=>p.code==="invalid_type"&&p.expected==="number")){const p=t.keyType._zod.run({value:Number(i),issues:[]},n);if(p instanceof Promise)throw new Error("Async schemas not supported in object keys currently");p.issues.length===0&&(l=p)}if(l.issues.length){t.mode==="loose"?r.value[i]=a[i]:r.issues.push({code:"invalid_key",origin:"record",issues:l.issues.map(p=>_t(p,n,vt())),input:i,path:[i],inst:e});continue}const c=t.valueType._zod.run({value:a[i],issues:[]},n);c instanceof Promise?o.push(c.then(p=>{p.issues.length&&r.issues.push(...Gt(i,p.issues)),r.value[l.value]=p.value})):(c.issues.length&&r.issues.push(...Gt(i,c.issues)),r.value[l.value]=c.value)}}return o.length?Promise.all(o).then(()=>r):r}}),vd=T("$ZodEnum",(e,t)=>{ce.init(e,t);const r=bs(t.entries),n=new Set(r);e._zod.values=n,e._zod.pattern=new RegExp(`^(${r.filter(a=>Au.has(typeof a)).map(a=>typeof a=="string"?Ht(a):a.toString()).join("|")})$`),e._zod.parse=(a,o)=>{const s=a.value;return n.has(s)||a.issues.push({code:"invalid_value",values:r,input:s,inst:e}),a}}),_d=T("$ZodLiteral",(e,t)=>{if(ce.init(e,t),t.values.length===0)throw new Error("Cannot create literal schema with no valid values");const r=new Set(t.values);e._zod.values=r,e._zod.pattern=new RegExp(`^(${t.values.map(n=>typeof n=="string"?Ht(n):n?Ht(n.toString()):String(n)).join("|")})$`),e._zod.parse=(n,a)=>{const o=n.value;return r.has(o)||n.issues.push({code:"invalid_value",values:t.values,input:o,inst:e}),n}}),wd=T("$ZodTransform",(e,t)=>{ce.init(e,t),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new ws(e.constructor.name);const a=t.transform(r.value,r);if(n.async)return(a instanceof Promise?a:Promise.resolve(a)).then(s=>(r.value=s,r));if(a instanceof Promise)throw new Bt;return r.value=a,r}});function Ua(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}const Us=T("$ZodOptional",(e,t)=>{ce.init(e,t),e._zod.optin="optional",e._zod.optout="optional",Y(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Y(e._zod,"pattern",()=>{const r=t.innerType._zod.pattern;return r?new RegExp(`^(${Yn(r.source)})?$`):void 0}),e._zod.parse=(r,n)=>{if(t.innerType._zod.optin==="optional"){const a=t.innerType._zod.run(r,n);return a instanceof Promise?a.then(o=>Ua(o,r.value)):Ua(a,r.value)}return r.value===void 0?r:t.innerType._zod.run(r,n)}}),Td=T("$ZodExactOptional",(e,t)=>{Us.init(e,t),Y(e._zod,"values",()=>t.innerType._zod.values),Y(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(r,n)=>t.innerType._zod.run(r,n)}),bd=T("$ZodNullable",(e,t)=>{ce.init(e,t),Y(e._zod,"optin",()=>t.innerType._zod.optin),Y(e._zod,"optout",()=>t.innerType._zod.optout),Y(e._zod,"pattern",()=>{const r=t.innerType._zod.pattern;return r?new RegExp(`^(${Yn(r.source)}|null)$`):void 0}),Y(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(r,n)=>r.value===null?r:t.innerType._zod.run(r,n)}),Ed=T("$ZodDefault",(e,t)=>{ce.init(e,t),e._zod.optin="optional",Y(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)return r.value=t.defaultValue,r;const a=t.innerType._zod.run(r,n);return a instanceof Promise?a.then(o=>ja(o,t)):ja(a,t)}});function ja(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const Id=T("$ZodPrefault",(e,t)=>{ce.init(e,t),e._zod.optin="optional",Y(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>(n.direction==="backward"||r.value===void 0&&(r.value=t.defaultValue),t.innerType._zod.run(r,n))}),Sd=T("$ZodNonOptional",(e,t)=>{ce.init(e,t),Y(e._zod,"values",()=>{const r=t.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),e._zod.parse=(r,n)=>{const a=t.innerType._zod.run(r,n);return a instanceof Promise?a.then(o=>qa(o,e)):qa(a,e)}});function qa(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const Nd=T("$ZodCatch",(e,t)=>{ce.init(e,t),Y(e._zod,"optin",()=>t.innerType._zod.optin),Y(e._zod,"optout",()=>t.innerType._zod.optout),Y(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);const a=t.innerType._zod.run(r,n);return a instanceof Promise?a.then(o=>(r.value=o.value,o.issues.length&&(r.value=t.catchValue({...r,error:{issues:o.issues.map(s=>_t(s,n,vt()))},input:r.value}),r.issues=[]),r)):(r.value=a.value,a.issues.length&&(r.value=t.catchValue({...r,error:{issues:a.issues.map(o=>_t(o,n,vt()))},input:r.value}),r.issues=[]),r)}}),Ad=T("$ZodPipe",(e,t)=>{ce.init(e,t),Y(e._zod,"values",()=>t.in._zod.values),Y(e._zod,"optin",()=>t.in._zod.optin),Y(e._zod,"optout",()=>t.out._zod.optout),Y(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(r,n)=>{if(n.direction==="backward"){const o=t.out._zod.run(r,n);return o instanceof Promise?o.then(s=>Mr(s,t.in,n)):Mr(o,t.in,n)}const a=t.in._zod.run(r,n);return a instanceof Promise?a.then(o=>Mr(o,t.out,n)):Mr(a,t.out,n)}});function Mr(e,t,r){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},r)}const Od=T("$ZodReadonly",(e,t)=>{ce.init(e,t),Y(e._zod,"propValues",()=>t.innerType._zod.propValues),Y(e._zod,"values",()=>t.innerType._zod.values),Y(e._zod,"optin",()=>{var r,n;return(n=(r=t.innerType)==null?void 0:r._zod)==null?void 0:n.optin}),Y(e._zod,"optout",()=>{var r,n;return(n=(r=t.innerType)==null?void 0:r._zod)==null?void 0:n.optout}),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);const a=t.innerType._zod.run(r,n);return a instanceof Promise?a.then(Za):Za(a)}});function Za(e){return e.value=Object.freeze(e.value),e}const xd=T("$ZodLazy",(e,t)=>{ce.init(e,t),Y(e._zod,"innerType",()=>t.getter()),Y(e._zod,"pattern",()=>{var r,n;return(n=(r=e._zod.innerType)==null?void 0:r._zod)==null?void 0:n.pattern}),Y(e._zod,"propValues",()=>{var r,n;return(n=(r=e._zod.innerType)==null?void 0:r._zod)==null?void 0:n.propValues}),Y(e._zod,"optin",()=>{var r,n;return((n=(r=e._zod.innerType)==null?void 0:r._zod)==null?void 0:n.optin)??void 0}),Y(e._zod,"optout",()=>{var r,n;return((n=(r=e._zod.innerType)==null?void 0:r._zod)==null?void 0:n.optout)??void 0}),e._zod.parse=(r,n)=>e._zod.innerType._zod.run(r,n)}),Rd=T("$ZodCustom",(e,t)=>{Me.init(e,t),ce.init(e,t),e._zod.parse=(r,n)=>r,e._zod.check=r=>{const n=r.value,a=t.fn(n);if(a instanceof Promise)return a.then(o=>Ga(o,r,n,e));Ga(a,r,n,e)}});function Ga(e,t,r,n){if(!e){const a={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(a.params=n._zod.def.params),t.issues.push(gr(a))}}var Ba;class kd{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...r){const n=r[0];return this._map.set(t,n),n&&typeof n=="object"&&"id"in n&&this._idmap.set(n.id,t),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(t){const r=this._map.get(t);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(t),this}get(t){const r=t._zod.parent;if(r){const n={...this.get(r)??{}};delete n.id;const a={...n,...this._map.get(t)};return Object.keys(a).length?a:void 0}return this._map.get(t)}has(t){return this._map.has(t)}}function Pd(){return new kd}(Ba=globalThis).__zod_globalRegistry??(Ba.__zod_globalRegistry=Pd());const ur=globalThis.__zod_globalRegistry;function Cd(e,t){return new e({type:"string",...k(t)})}function Dd(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...k(t)})}function Va(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...k(t)})}function zd(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...k(t)})}function $d(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...k(t)})}function Md(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...k(t)})}function Fd(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...k(t)})}function Ld(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...k(t)})}function Ud(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...k(t)})}function jd(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...k(t)})}function qd(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...k(t)})}function Zd(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...k(t)})}function Gd(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...k(t)})}function Bd(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...k(t)})}function Vd(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...k(t)})}function Hd(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...k(t)})}function Jd(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...k(t)})}function Yd(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...k(t)})}function Wd(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...k(t)})}function Kd(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...k(t)})}function Xd(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...k(t)})}function Qd(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...k(t)})}function ep(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...k(t)})}function tp(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...k(t)})}function rp(e,t){return new e({type:"string",format:"date",check:"string_format",...k(t)})}function np(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...k(t)})}function ap(e,t){return new e({type:"string",format:"duration",check:"string_format",...k(t)})}function op(e,t){return new e({type:"number",checks:[],...k(t)})}function sp(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...k(t)})}function ip(e,t){return new e({type:"boolean",...k(t)})}function lp(e,t){return new e({type:"null",...k(t)})}function up(e){return new e({type:"any"})}function cp(e){return new e({type:"unknown"})}function dp(e,t){return new e({type:"never",...k(t)})}function Ha(e,t){return new Cs({check:"less_than",...k(t),value:e,inclusive:!1})}function wn(e,t){return new Cs({check:"less_than",...k(t),value:e,inclusive:!0})}function Ja(e,t){return new Ds({check:"greater_than",...k(t),value:e,inclusive:!1})}function Tn(e,t){return new Ds({check:"greater_than",...k(t),value:e,inclusive:!0})}function Ya(e,t){return new Tc({check:"multiple_of",...k(t),value:e})}function js(e,t){return new Ec({check:"max_length",...k(t),maximum:e})}function Gr(e,t){return new Ic({check:"min_length",...k(t),minimum:e})}function qs(e,t){return new Sc({check:"length_equals",...k(t),length:e})}function pp(e,t){return new Nc({check:"string_format",format:"regex",...k(t),pattern:e})}function fp(e){return new Ac({check:"string_format",format:"lowercase",...k(e)})}function gp(e){return new Oc({check:"string_format",format:"uppercase",...k(e)})}function mp(e,t){return new xc({check:"string_format",format:"includes",...k(t),includes:e})}function hp(e,t){return new Rc({check:"string_format",format:"starts_with",...k(t),prefix:e})}function yp(e,t){return new kc({check:"string_format",format:"ends_with",...k(t),suffix:e})}function Kt(e){return new Pc({check:"overwrite",tx:e})}function vp(e){return Kt(t=>t.normalize(e))}function _p(){return Kt(e=>e.trim())}function wp(){return Kt(e=>e.toLowerCase())}function Tp(){return Kt(e=>e.toUpperCase())}function bp(){return Kt(e=>Su(e))}function Ep(e,t,r){return new e({type:"array",element:t,...k(r)})}function Ip(e,t,r){const n=k(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function Sp(e,t,r){return new e({type:"custom",check:"custom",fn:t,...k(r)})}function Np(e){const t=Ap(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(gr(n,r.value,t._zod.def));else{const a=n;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=r.value),a.inst??(a.inst=t),a.continue??(a.continue=!t._zod.def.abort),r.issues.push(gr(a))}},e(r.value,r)));return t}function Ap(e,t){const r=new Me({check:"custom",...k(t)});return r._zod.check=e,r}function Br(e){let t=(e==null?void 0:e.target)??"draft-2020-12";return t==="draft-4"&&(t="draft-04"),t==="draft-7"&&(t="draft-07"),{processors:e.processors??{},metadataRegistry:(e==null?void 0:e.metadata)??ur,target:t,unrepresentable:(e==null?void 0:e.unrepresentable)??"throw",override:(e==null?void 0:e.override)??(()=>{}),io:(e==null?void 0:e.io)??"output",counter:0,seen:new Map,cycles:(e==null?void 0:e.cycles)??"ref",reused:(e==null?void 0:e.reused)??"inline",external:(e==null?void 0:e.external)??void 0}}function ue(e,t,r={path:[],schemaPath:[]}){var c,p;var n;const a=e._zod.def,o=t.seen.get(e);if(o)return o.count++,r.schemaPath.includes(e)&&(o.cycle=r.path),o.schema;const s={schema:{},count:1,cycle:void 0,path:r.path};t.seen.set(e,s);const i=(p=(c=e._zod).toJSONSchema)==null?void 0:p.call(c);if(i)s.schema=i;else{const d={...r,schemaPath:[...r.schemaPath,e],path:r.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,s.schema,d);else{const E=s.schema,w=t.processors[a.type];if(!w)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${a.type}`);w(e,t,E,d)}const v=e._zod.parent;v&&(s.ref||(s.ref=v),ue(v,t,d),t.seen.get(v).isParent=!0)}const l=t.metadataRegistry.get(e);return l&&Object.assign(s.schema,l),t.io==="input"&&ze(e)&&(delete s.schema.examples,delete s.schema.default),t.io==="input"&&s.schema._prefault&&((n=s.schema).default??(n.default=s.schema._prefault)),delete s.schema._prefault,t.seen.get(e).schema}function Vr(e,t){var s,i,l,u;const r=e.seen.get(t);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");const n=new Map;for(const c of e.seen.entries()){const p=(s=e.metadataRegistry.get(c[0]))==null?void 0:s.id;if(p){const d=n.get(p);if(d&&d!==c[0])throw new Error(`Duplicate schema id "${p}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(p,c[0])}}const a=c=>{var w;const p=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){const I=(w=e.external.registry.get(c[0]))==null?void 0:w.id,P=e.external.uri??(h=>h);if(I)return{ref:P(I)};const C=c[1].defId??c[1].schema.id??`schema${e.counter++}`;return c[1].defId=C,{defId:C,ref:`${P("__shared")}#/${p}/${C}`}}if(c[1]===r)return{ref:"#"};const v=`#/${p}/`,E=c[1].schema.id??`__schema${e.counter++}`;return{defId:E,ref:v+E}},o=c=>{if(c[1].schema.$ref)return;const p=c[1],{ref:d,defId:v}=a(c);p.def={...p.schema},v&&(p.defId=v);const E=p.schema;for(const w in E)delete E[w];E.$ref=d};if(e.cycles==="throw")for(const c of e.seen.entries()){const p=c[1];if(p.cycle)throw new Error(`Cycle detected: #/${(i=p.cycle)==null?void 0:i.join("/")}/<root>
|
|
39
|
+
`)}v.write("payload.value = newResult;"),v.write("return payload;");const C=v.compile();return(D,R)=>C(d,D,R)};let o;const s=gr,i=!bs.jitless,u=i&&Nu.value,c=t.catchall;let p;e._zod.parse=(d,v)=>{p??(p=n.value);const E=d.value;return s(E)?i&&u&&(v==null?void 0:v.async)===!1&&v.jitless!==!0?(o||(o=a(t.shape)),d=o(d,v),c?Ls([],E,d,v,p,e):d):r(d,v):(d.issues.push({expected:"object",code:"invalid_type",input:E,inst:e}),d)}});function La(e,t,r,n){for(const o of e)if(o.issues.length===0)return t.value=o.value,t;const a=e.filter(o=>!Zt(o));return a.length===1?(t.value=a[0].value,a[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map(o=>o.issues.map(s=>_t(s,n,vt())))}),t)}const Us=T("$ZodUnion",(e,t)=>{ce.init(e,t),Y(e._zod,"optin",()=>t.options.some(a=>a._zod.optin==="optional")?"optional":void 0),Y(e._zod,"optout",()=>t.options.some(a=>a._zod.optout==="optional")?"optional":void 0),Y(e._zod,"values",()=>{if(t.options.every(a=>a._zod.values))return new Set(t.options.flatMap(a=>Array.from(a._zod.values)))}),Y(e._zod,"pattern",()=>{if(t.options.every(a=>a._zod.pattern)){const a=t.options.map(o=>o._zod.pattern);return new RegExp(`^(${a.map(o=>Wn(o.source)).join("|")})$`)}});const r=t.options.length===1,n=t.options[0]._zod.run;e._zod.parse=(a,o)=>{if(r)return n(a,o);let s=!1;const i=[];for(const l of t.options){const u=l._zod.run({value:a.value,issues:[]},o);if(u instanceof Promise)i.push(u),s=!0;else{if(u.issues.length===0)return u;i.push(u)}}return s?Promise.all(i).then(l=>La(l,a,e,o)):La(i,a,e,o)}}),hd=T("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,Us.init(e,t);const r=e._zod.parse;Y(e._zod,"propValues",()=>{const a={};for(const o of t.options){const s=o._zod.propValues;if(!s||Object.keys(s).length===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(o)}"`);for(const[i,l]of Object.entries(s)){a[i]||(a[i]=new Set);for(const u of l)a[i].add(u)}}return a});const n=ln(()=>{var s;const a=t.options,o=new Map;for(const i of a){const l=(s=i._zod.propValues)==null?void 0:s[t.discriminator];if(!l||l.size===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(i)}"`);for(const u of l){if(o.has(u))throw new Error(`Duplicate discriminator value "${String(u)}"`);o.set(u,i)}}return o});e._zod.parse=(a,o)=>{const s=a.value;if(!gr(s))return a.issues.push({code:"invalid_type",expected:"object",input:s,inst:e}),a;const i=n.value.get(s==null?void 0:s[t.discriminator]);return i?i._zod.run(a,o):t.unionFallback?r(a,o):(a.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,input:s,path:[t.discriminator],inst:e}),a)}}),yd=T("$ZodIntersection",(e,t)=>{ce.init(e,t),e._zod.parse=(r,n)=>{const a=r.value,o=t.left._zod.run({value:a,issues:[]},n),s=t.right._zod.run({value:a,issues:[]},n);return o instanceof Promise||s instanceof Promise?Promise.all([o,s]).then(([l,u])=>Ua(r,l,u)):Ua(r,o,s)}});function Fn(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(Vt(e)&&Vt(t)){const r=Object.keys(t),n=Object.keys(e).filter(o=>r.indexOf(o)!==-1),a={...e,...t};for(const o of n){const s=Fn(e[o],t[o]);if(!s.valid)return{valid:!1,mergeErrorPath:[o,...s.mergeErrorPath]};a[o]=s.data}return{valid:!0,data:a}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const r=[];for(let n=0;n<e.length;n++){const a=e[n],o=t[n],s=Fn(a,o);if(!s.valid)return{valid:!1,mergeErrorPath:[n,...s.mergeErrorPath]};r.push(s.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function Ua(e,t,r){const n=new Map;let a;for(const i of t.issues)if(i.code==="unrecognized_keys"){a??(a=i);for(const l of i.keys)n.has(l)||n.set(l,{}),n.get(l).l=!0}else e.issues.push(i);for(const i of r.issues)if(i.code==="unrecognized_keys")for(const l of i.keys)n.has(l)||n.set(l,{}),n.get(l).r=!0;else e.issues.push(i);const o=[...n].filter(([,i])=>i.l&&i.r).map(([i])=>i);if(o.length&&a&&e.issues.push({...a,keys:o}),Zt(e))return e;const s=Fn(t.value,r.value);if(!s.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(s.mergeErrorPath)}`);return e.value=s.data,e}const vd=T("$ZodRecord",(e,t)=>{ce.init(e,t),e._zod.parse=(r,n)=>{const a=r.value;if(!Vt(a))return r.issues.push({expected:"record",code:"invalid_type",input:a,inst:e}),r;const o=[],s=t.keyType._zod.values;if(s){r.value={};const i=new Set;for(const u of s)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){i.add(typeof u=="number"?u.toString():u);const c=t.valueType._zod.run({value:a[u],issues:[]},n);c instanceof Promise?o.push(c.then(p=>{p.issues.length&&r.issues.push(...Gt(u,p.issues)),r.value[u]=p.value})):(c.issues.length&&r.issues.push(...Gt(u,c.issues)),r.value[u]=c.value)}let l;for(const u in a)i.has(u)||(l=l??[],l.push(u));l&&l.length>0&&r.issues.push({code:"unrecognized_keys",input:a,inst:e,keys:l})}else{r.value={};for(const i of Reflect.ownKeys(a)){if(i==="__proto__")continue;let l=t.keyType._zod.run({value:i,issues:[]},n);if(l instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof i=="string"&&Ps.test(i)&&l.issues.length&&l.issues.some(p=>p.code==="invalid_type"&&p.expected==="number")){const p=t.keyType._zod.run({value:Number(i),issues:[]},n);if(p instanceof Promise)throw new Error("Async schemas not supported in object keys currently");p.issues.length===0&&(l=p)}if(l.issues.length){t.mode==="loose"?r.value[i]=a[i]:r.issues.push({code:"invalid_key",origin:"record",issues:l.issues.map(p=>_t(p,n,vt())),input:i,path:[i],inst:e});continue}const c=t.valueType._zod.run({value:a[i],issues:[]},n);c instanceof Promise?o.push(c.then(p=>{p.issues.length&&r.issues.push(...Gt(i,p.issues)),r.value[l.value]=p.value})):(c.issues.length&&r.issues.push(...Gt(i,c.issues)),r.value[l.value]=c.value)}}return o.length?Promise.all(o).then(()=>r):r}}),_d=T("$ZodEnum",(e,t)=>{ce.init(e,t);const r=Es(t.entries),n=new Set(r);e._zod.values=n,e._zod.pattern=new RegExp(`^(${r.filter(a=>Ou.has(typeof a)).map(a=>typeof a=="string"?Ht(a):a.toString()).join("|")})$`),e._zod.parse=(a,o)=>{const s=a.value;return n.has(s)||a.issues.push({code:"invalid_value",values:r,input:s,inst:e}),a}}),wd=T("$ZodLiteral",(e,t)=>{if(ce.init(e,t),t.values.length===0)throw new Error("Cannot create literal schema with no valid values");const r=new Set(t.values);e._zod.values=r,e._zod.pattern=new RegExp(`^(${t.values.map(n=>typeof n=="string"?Ht(n):n?Ht(n.toString()):String(n)).join("|")})$`),e._zod.parse=(n,a)=>{const o=n.value;return r.has(o)||n.issues.push({code:"invalid_value",values:t.values,input:o,inst:e}),n}}),Td=T("$ZodTransform",(e,t)=>{ce.init(e,t),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Ts(e.constructor.name);const a=t.transform(r.value,r);if(n.async)return(a instanceof Promise?a:Promise.resolve(a)).then(s=>(r.value=s,r));if(a instanceof Promise)throw new Bt;return r.value=a,r}});function ja(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}const js=T("$ZodOptional",(e,t)=>{ce.init(e,t),e._zod.optin="optional",e._zod.optout="optional",Y(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Y(e._zod,"pattern",()=>{const r=t.innerType._zod.pattern;return r?new RegExp(`^(${Wn(r.source)})?$`):void 0}),e._zod.parse=(r,n)=>{if(t.innerType._zod.optin==="optional"){const a=t.innerType._zod.run(r,n);return a instanceof Promise?a.then(o=>ja(o,r.value)):ja(a,r.value)}return r.value===void 0?r:t.innerType._zod.run(r,n)}}),bd=T("$ZodExactOptional",(e,t)=>{js.init(e,t),Y(e._zod,"values",()=>t.innerType._zod.values),Y(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(r,n)=>t.innerType._zod.run(r,n)}),Ed=T("$ZodNullable",(e,t)=>{ce.init(e,t),Y(e._zod,"optin",()=>t.innerType._zod.optin),Y(e._zod,"optout",()=>t.innerType._zod.optout),Y(e._zod,"pattern",()=>{const r=t.innerType._zod.pattern;return r?new RegExp(`^(${Wn(r.source)}|null)$`):void 0}),Y(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(r,n)=>r.value===null?r:t.innerType._zod.run(r,n)}),Id=T("$ZodDefault",(e,t)=>{ce.init(e,t),e._zod.optin="optional",Y(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)return r.value=t.defaultValue,r;const a=t.innerType._zod.run(r,n);return a instanceof Promise?a.then(o=>qa(o,t)):qa(a,t)}});function qa(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const Sd=T("$ZodPrefault",(e,t)=>{ce.init(e,t),e._zod.optin="optional",Y(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>(n.direction==="backward"||r.value===void 0&&(r.value=t.defaultValue),t.innerType._zod.run(r,n))}),Ad=T("$ZodNonOptional",(e,t)=>{ce.init(e,t),Y(e._zod,"values",()=>{const r=t.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),e._zod.parse=(r,n)=>{const a=t.innerType._zod.run(r,n);return a instanceof Promise?a.then(o=>Za(o,e)):Za(a,e)}});function Za(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const Nd=T("$ZodCatch",(e,t)=>{ce.init(e,t),Y(e._zod,"optin",()=>t.innerType._zod.optin),Y(e._zod,"optout",()=>t.innerType._zod.optout),Y(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);const a=t.innerType._zod.run(r,n);return a instanceof Promise?a.then(o=>(r.value=o.value,o.issues.length&&(r.value=t.catchValue({...r,error:{issues:o.issues.map(s=>_t(s,n,vt()))},input:r.value}),r.issues=[]),r)):(r.value=a.value,a.issues.length&&(r.value=t.catchValue({...r,error:{issues:a.issues.map(o=>_t(o,n,vt()))},input:r.value}),r.issues=[]),r)}}),Od=T("$ZodPipe",(e,t)=>{ce.init(e,t),Y(e._zod,"values",()=>t.in._zod.values),Y(e._zod,"optin",()=>t.in._zod.optin),Y(e._zod,"optout",()=>t.out._zod.optout),Y(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(r,n)=>{if(n.direction==="backward"){const o=t.out._zod.run(r,n);return o instanceof Promise?o.then(s=>Fr(s,t.in,n)):Fr(o,t.in,n)}const a=t.in._zod.run(r,n);return a instanceof Promise?a.then(o=>Fr(o,t.out,n)):Fr(a,t.out,n)}});function Fr(e,t,r){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},r)}const Rd=T("$ZodReadonly",(e,t)=>{ce.init(e,t),Y(e._zod,"propValues",()=>t.innerType._zod.propValues),Y(e._zod,"values",()=>t.innerType._zod.values),Y(e._zod,"optin",()=>{var r,n;return(n=(r=t.innerType)==null?void 0:r._zod)==null?void 0:n.optin}),Y(e._zod,"optout",()=>{var r,n;return(n=(r=t.innerType)==null?void 0:r._zod)==null?void 0:n.optout}),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);const a=t.innerType._zod.run(r,n);return a instanceof Promise?a.then(Ga):Ga(a)}});function Ga(e){return e.value=Object.freeze(e.value),e}const xd=T("$ZodLazy",(e,t)=>{ce.init(e,t),Y(e._zod,"innerType",()=>t.getter()),Y(e._zod,"pattern",()=>{var r,n;return(n=(r=e._zod.innerType)==null?void 0:r._zod)==null?void 0:n.pattern}),Y(e._zod,"propValues",()=>{var r,n;return(n=(r=e._zod.innerType)==null?void 0:r._zod)==null?void 0:n.propValues}),Y(e._zod,"optin",()=>{var r,n;return((n=(r=e._zod.innerType)==null?void 0:r._zod)==null?void 0:n.optin)??void 0}),Y(e._zod,"optout",()=>{var r,n;return((n=(r=e._zod.innerType)==null?void 0:r._zod)==null?void 0:n.optout)??void 0}),e._zod.parse=(r,n)=>e._zod.innerType._zod.run(r,n)}),kd=T("$ZodCustom",(e,t)=>{Me.init(e,t),ce.init(e,t),e._zod.parse=(r,n)=>r,e._zod.check=r=>{const n=r.value,a=t.fn(n);if(a instanceof Promise)return a.then(o=>Ba(o,r,n,e));Ba(a,r,n,e)}});function Ba(e,t,r,n){if(!e){const a={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(a.params=n._zod.def.params),t.issues.push(mr(a))}}var Va;class Pd{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...r){const n=r[0];return this._map.set(t,n),n&&typeof n=="object"&&"id"in n&&this._idmap.set(n.id,t),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(t){const r=this._map.get(t);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(t),this}get(t){const r=t._zod.parent;if(r){const n={...this.get(r)??{}};delete n.id;const a={...n,...this._map.get(t)};return Object.keys(a).length?a:void 0}return this._map.get(t)}has(t){return this._map.has(t)}}function Cd(){return new Pd}(Va=globalThis).__zod_globalRegistry??(Va.__zod_globalRegistry=Cd());const ur=globalThis.__zod_globalRegistry;function zd(e,t){return new e({type:"string",...k(t)})}function Dd(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...k(t)})}function Ha(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...k(t)})}function $d(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...k(t)})}function Md(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...k(t)})}function Fd(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...k(t)})}function Ld(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...k(t)})}function Ud(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...k(t)})}function jd(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...k(t)})}function qd(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...k(t)})}function Zd(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...k(t)})}function Gd(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...k(t)})}function Bd(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...k(t)})}function Vd(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...k(t)})}function Hd(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...k(t)})}function Jd(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...k(t)})}function Yd(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...k(t)})}function Wd(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...k(t)})}function Kd(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...k(t)})}function Xd(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...k(t)})}function Qd(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...k(t)})}function ep(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...k(t)})}function tp(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...k(t)})}function rp(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...k(t)})}function np(e,t){return new e({type:"string",format:"date",check:"string_format",...k(t)})}function ap(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...k(t)})}function op(e,t){return new e({type:"string",format:"duration",check:"string_format",...k(t)})}function sp(e,t){return new e({type:"number",checks:[],...k(t)})}function ip(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...k(t)})}function lp(e,t){return new e({type:"boolean",...k(t)})}function up(e,t){return new e({type:"null",...k(t)})}function cp(e){return new e({type:"any"})}function dp(e){return new e({type:"unknown"})}function pp(e,t){return new e({type:"never",...k(t)})}function Ja(e,t){return new zs({check:"less_than",...k(t),value:e,inclusive:!1})}function Tn(e,t){return new zs({check:"less_than",...k(t),value:e,inclusive:!0})}function Ya(e,t){return new Ds({check:"greater_than",...k(t),value:e,inclusive:!1})}function bn(e,t){return new Ds({check:"greater_than",...k(t),value:e,inclusive:!0})}function Wa(e,t){return new bc({check:"multiple_of",...k(t),value:e})}function qs(e,t){return new Ic({check:"max_length",...k(t),maximum:e})}function Br(e,t){return new Sc({check:"min_length",...k(t),minimum:e})}function Zs(e,t){return new Ac({check:"length_equals",...k(t),length:e})}function fp(e,t){return new Nc({check:"string_format",format:"regex",...k(t),pattern:e})}function gp(e){return new Oc({check:"string_format",format:"lowercase",...k(e)})}function mp(e){return new Rc({check:"string_format",format:"uppercase",...k(e)})}function hp(e,t){return new xc({check:"string_format",format:"includes",...k(t),includes:e})}function yp(e,t){return new kc({check:"string_format",format:"starts_with",...k(t),prefix:e})}function vp(e,t){return new Pc({check:"string_format",format:"ends_with",...k(t),suffix:e})}function Kt(e){return new Cc({check:"overwrite",tx:e})}function _p(e){return Kt(t=>t.normalize(e))}function wp(){return Kt(e=>e.trim())}function Tp(){return Kt(e=>e.toLowerCase())}function bp(){return Kt(e=>e.toUpperCase())}function Ep(){return Kt(e=>Au(e))}function Ip(e,t,r){return new e({type:"array",element:t,...k(r)})}function Sp(e,t,r){const n=k(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function Ap(e,t,r){return new e({type:"custom",check:"custom",fn:t,...k(r)})}function Np(e){const t=Op(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(mr(n,r.value,t._zod.def));else{const a=n;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=r.value),a.inst??(a.inst=t),a.continue??(a.continue=!t._zod.def.abort),r.issues.push(mr(a))}},e(r.value,r)));return t}function Op(e,t){const r=new Me({check:"custom",...k(t)});return r._zod.check=e,r}function Vr(e){let t=(e==null?void 0:e.target)??"draft-2020-12";return t==="draft-4"&&(t="draft-04"),t==="draft-7"&&(t="draft-07"),{processors:e.processors??{},metadataRegistry:(e==null?void 0:e.metadata)??ur,target:t,unrepresentable:(e==null?void 0:e.unrepresentable)??"throw",override:(e==null?void 0:e.override)??(()=>{}),io:(e==null?void 0:e.io)??"output",counter:0,seen:new Map,cycles:(e==null?void 0:e.cycles)??"ref",reused:(e==null?void 0:e.reused)??"inline",external:(e==null?void 0:e.external)??void 0}}function ue(e,t,r={path:[],schemaPath:[]}){var c,p;var n;const a=e._zod.def,o=t.seen.get(e);if(o)return o.count++,r.schemaPath.includes(e)&&(o.cycle=r.path),o.schema;const s={schema:{},count:1,cycle:void 0,path:r.path};t.seen.set(e,s);const i=(p=(c=e._zod).toJSONSchema)==null?void 0:p.call(c);if(i)s.schema=i;else{const d={...r,schemaPath:[...r.schemaPath,e],path:r.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,s.schema,d);else{const E=s.schema,w=t.processors[a.type];if(!w)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${a.type}`);w(e,t,E,d)}const v=e._zod.parent;v&&(s.ref||(s.ref=v),ue(v,t,d),t.seen.get(v).isParent=!0)}const l=t.metadataRegistry.get(e);return l&&Object.assign(s.schema,l),t.io==="input"&&De(e)&&(delete s.schema.examples,delete s.schema.default),t.io==="input"&&s.schema._prefault&&((n=s.schema).default??(n.default=s.schema._prefault)),delete s.schema._prefault,t.seen.get(e).schema}function Hr(e,t){var s,i,l,u;const r=e.seen.get(t);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");const n=new Map;for(const c of e.seen.entries()){const p=(s=e.metadataRegistry.get(c[0]))==null?void 0:s.id;if(p){const d=n.get(p);if(d&&d!==c[0])throw new Error(`Duplicate schema id "${p}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(p,c[0])}}const a=c=>{var w;const p=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){const I=(w=e.external.registry.get(c[0]))==null?void 0:w.id,P=e.external.uri??(h=>h);if(I)return{ref:P(I)};const C=c[1].defId??c[1].schema.id??`schema${e.counter++}`;return c[1].defId=C,{defId:C,ref:`${P("__shared")}#/${p}/${C}`}}if(c[1]===r)return{ref:"#"};const v=`#/${p}/`,E=c[1].schema.id??`__schema${e.counter++}`;return{defId:E,ref:v+E}},o=c=>{if(c[1].schema.$ref)return;const p=c[1],{ref:d,defId:v}=a(c);p.def={...p.schema},v&&(p.defId=v);const E=p.schema;for(const w in E)delete E[w];E.$ref=d};if(e.cycles==="throw")for(const c of e.seen.entries()){const p=c[1];if(p.cycle)throw new Error(`Cycle detected: #/${(i=p.cycle)==null?void 0:i.join("/")}/<root>
|
|
40
40
|
|
|
41
|
-
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const c of e.seen.entries()){const p=c[1];if(t===c[0]){o(c);continue}if(e.external){const v=(l=e.external.registry.get(c[0]))==null?void 0:l.id;if(t!==c[0]&&v){o(c);continue}}if((u=e.metadataRegistry.get(c[0]))==null?void 0:u.id){o(c);continue}if(p.cycle){o(c);continue}if(p.count>1&&e.reused==="ref"){o(c);continue}}}function Hr(e,t){var s,i,l;const r=e.seen.get(t);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");const n=u=>{const c=e.seen.get(u);if(c.ref===null)return;const p=c.def??c.schema,d={...p},v=c.ref;if(c.ref=null,v){n(v);const w=e.seen.get(v),I=w.schema;if(I.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(p.allOf=p.allOf??[],p.allOf.push(I)):Object.assign(p,I),Object.assign(p,d),u._zod.parent===v)for(const C in p)C==="$ref"||C==="allOf"||C in d||delete p[C];if(I.$ref)for(const C in p)C==="$ref"||C==="allOf"||C in w.def&&JSON.stringify(p[C])===JSON.stringify(w.def[C])&&delete p[C]}const E=u._zod.parent;if(E&&E!==v){n(E);const w=e.seen.get(E);if(w!=null&&w.schema.$ref&&(p.$ref=w.schema.$ref,w.def))for(const I in p)I==="$ref"||I==="allOf"||I in w.def&&JSON.stringify(p[I])===JSON.stringify(w.def[I])&&delete p[I]}e.override({zodSchema:u,jsonSchema:p,path:c.path??[]})};for(const u of[...e.seen.entries()].reverse())n(u[0]);const a={};if(e.target==="draft-2020-12"?a.$schema="https://json-schema.org/draft/2020-12/schema":e.target==="draft-07"?a.$schema="http://json-schema.org/draft-07/schema#":e.target==="draft-04"?a.$schema="http://json-schema.org/draft-04/schema#":e.target,(s=e.external)!=null&&s.uri){const u=(i=e.external.registry.get(t))==null?void 0:i.id;if(!u)throw new Error("Schema is missing an `id` property");a.$id=e.external.uri(u)}Object.assign(a,r.def??r.schema);const o=((l=e.external)==null?void 0:l.defs)??{};for(const u of e.seen.entries()){const c=u[1];c.def&&c.defId&&(o[c.defId]=c.def)}e.external||Object.keys(o).length>0&&(e.target==="draft-2020-12"?a.$defs=o:a.definitions=o);try{const u=JSON.parse(JSON.stringify(a));return Object.defineProperty(u,"~standard",{value:{...t["~standard"],jsonSchema:{input:Jr(t,"input",e.processors),output:Jr(t,"output",e.processors)}},enumerable:!1,writable:!1}),u}catch{throw new Error("Error converting schema to JSON.")}}function ze(e,t){const r=t??{seen:new Set};if(r.seen.has(e))return!1;r.seen.add(e);const n=e._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return ze(n.element,r);if(n.type==="set")return ze(n.valueType,r);if(n.type==="lazy")return ze(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault")return ze(n.innerType,r);if(n.type==="intersection")return ze(n.left,r)||ze(n.right,r);if(n.type==="record"||n.type==="map")return ze(n.keyType,r)||ze(n.valueType,r);if(n.type==="pipe")return ze(n.in,r)||ze(n.out,r);if(n.type==="object"){for(const a in n.shape)if(ze(n.shape[a],r))return!0;return!1}if(n.type==="union"){for(const a of n.options)if(ze(a,r))return!0;return!1}if(n.type==="tuple"){for(const a of n.items)if(ze(a,r))return!0;return!!(n.rest&&ze(n.rest,r))}return!1}const Op=(e,t={})=>r=>{const n=Br({...r,processors:t});return ue(e,n),Vr(n,e),Hr(n,e)},Jr=(e,t,r={})=>n=>{const{libraryOptions:a,target:o}=n??{},s=Br({...a??{},target:o,io:t,processors:r});return ue(e,s),Vr(s,e),Hr(s,e)},xp={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},Zs=(e,t,r,n)=>{const a=r;a.type="string";const{minimum:o,maximum:s,format:i,patterns:l,contentEncoding:u}=e._zod.bag;if(typeof o=="number"&&(a.minLength=o),typeof s=="number"&&(a.maxLength=s),i&&(a.format=xp[i]??i,a.format===""&&delete a.format,i==="time"&&delete a.format),u&&(a.contentEncoding=u),l&&l.size>0){const c=[...l];c.length===1?a.pattern=c[0].source:c.length>1&&(a.allOf=[...c.map(p=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:p.source}))])}},Gs=(e,t,r,n)=>{const a=r,{minimum:o,maximum:s,format:i,multipleOf:l,exclusiveMaximum:u,exclusiveMinimum:c}=e._zod.bag;typeof i=="string"&&i.includes("int")?a.type="integer":a.type="number",typeof c=="number"&&(t.target==="draft-04"||t.target==="openapi-3.0"?(a.minimum=c,a.exclusiveMinimum=!0):a.exclusiveMinimum=c),typeof o=="number"&&(a.minimum=o,typeof c=="number"&&t.target!=="draft-04"&&(c>=o?delete a.minimum:delete a.exclusiveMinimum)),typeof u=="number"&&(t.target==="draft-04"||t.target==="openapi-3.0"?(a.maximum=u,a.exclusiveMaximum=!0):a.exclusiveMaximum=u),typeof s=="number"&&(a.maximum=s,typeof u=="number"&&t.target!=="draft-04"&&(u<=s?delete a.maximum:delete a.exclusiveMaximum)),typeof l=="number"&&(a.multipleOf=l)},Bs=(e,t,r,n)=>{r.type="boolean"},Rp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema")},kp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema")},Vs=(e,t,r,n)=>{t.target==="openapi-3.0"?(r.type="string",r.nullable=!0,r.enum=[null]):r.type="null"},Pp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema")},Cp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema")},Hs=(e,t,r,n)=>{r.not={}},Js=(e,t,r,n)=>{},Ys=(e,t,r,n)=>{},Dp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema")},Ws=(e,t,r,n)=>{const a=e._zod.def,o=bs(a.entries);o.every(s=>typeof s=="number")&&(r.type="number"),o.every(s=>typeof s=="string")&&(r.type="string"),r.enum=o},Ks=(e,t,r,n)=>{const a=e._zod.def,o=[];for(const s of a.values)if(s===void 0){if(t.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof s=="bigint"){if(t.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");o.push(Number(s))}else o.push(s);if(o.length!==0)if(o.length===1){const s=o[0];r.type=s===null?"null":typeof s,t.target==="draft-04"||t.target==="openapi-3.0"?r.enum=[s]:r.const=s}else o.every(s=>typeof s=="number")&&(r.type="number"),o.every(s=>typeof s=="string")&&(r.type="string"),o.every(s=>typeof s=="boolean")&&(r.type="boolean"),o.every(s=>s===null)&&(r.type="null"),r.enum=o},zp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema")},$p=(e,t,r,n)=>{const a=r,o=e._zod.pattern;if(!o)throw new Error("Pattern not found in template literal");a.type="string",a.pattern=o.source},Mp=(e,t,r,n)=>{const a=r,o={type:"string",format:"binary",contentEncoding:"binary"},{minimum:s,maximum:i,mime:l}=e._zod.bag;s!==void 0&&(o.minLength=s),i!==void 0&&(o.maxLength=i),l?l.length===1?(o.contentMediaType=l[0],Object.assign(a,o)):(Object.assign(a,o),a.anyOf=l.map(u=>({contentMediaType:u}))):Object.assign(a,o)},Fp=(e,t,r,n)=>{r.type="boolean"},Xs=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},Lp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Function types cannot be represented in JSON Schema")},Qs=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},Up=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema")},jp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema")},ei=(e,t,r,n)=>{const a=r,o=e._zod.def,{minimum:s,maximum:i}=e._zod.bag;typeof s=="number"&&(a.minItems=s),typeof i=="number"&&(a.maxItems=i),a.type="array",a.items=ue(o.element,t,{...n,path:[...n.path,"items"]})},ti=(e,t,r,n)=>{var u;const a=r,o=e._zod.def;a.type="object",a.properties={};const s=o.shape;for(const c in s)a.properties[c]=ue(s[c],t,{...n,path:[...n.path,"properties",c]});const i=new Set(Object.keys(s)),l=new Set([...i].filter(c=>{const p=o.shape[c]._zod;return t.io==="input"?p.optin===void 0:p.optout===void 0}));l.size>0&&(a.required=Array.from(l)),((u=o.catchall)==null?void 0:u._zod.def.type)==="never"?a.additionalProperties=!1:o.catchall?o.catchall&&(a.additionalProperties=ue(o.catchall,t,{...n,path:[...n.path,"additionalProperties"]})):t.io==="output"&&(a.additionalProperties=!1)},ri=(e,t,r,n)=>{const a=e._zod.def,o=a.inclusive===!1,s=a.options.map((i,l)=>ue(i,t,{...n,path:[...n.path,o?"oneOf":"anyOf",l]}));o?r.oneOf=s:r.anyOf=s},ni=(e,t,r,n)=>{const a=e._zod.def,o=ue(a.left,t,{...n,path:[...n.path,"allOf",0]}),s=ue(a.right,t,{...n,path:[...n.path,"allOf",1]}),i=u=>"allOf"in u&&Object.keys(u).length===1,l=[...i(o)?o.allOf:[o],...i(s)?s.allOf:[s]];r.allOf=l},qp=(e,t,r,n)=>{const a=r,o=e._zod.def;a.type="array";const s=t.target==="draft-2020-12"?"prefixItems":"items",i=t.target==="draft-2020-12"||t.target==="openapi-3.0"?"items":"additionalItems",l=o.items.map((d,v)=>ue(d,t,{...n,path:[...n.path,s,v]})),u=o.rest?ue(o.rest,t,{...n,path:[...n.path,i,...t.target==="openapi-3.0"?[o.items.length]:[]]}):null;t.target==="draft-2020-12"?(a.prefixItems=l,u&&(a.items=u)):t.target==="openapi-3.0"?(a.items={anyOf:l},u&&a.items.anyOf.push(u),a.minItems=l.length,u||(a.maxItems=l.length)):(a.items=l,u&&(a.additionalItems=u));const{minimum:c,maximum:p}=e._zod.bag;typeof c=="number"&&(a.minItems=c),typeof p=="number"&&(a.maxItems=p)},ai=(e,t,r,n)=>{const a=r,o=e._zod.def;a.type="object";const s=o.keyType,i=s._zod.bag,l=i==null?void 0:i.patterns;if(o.mode==="loose"&&l&&l.size>0){const c=ue(o.valueType,t,{...n,path:[...n.path,"patternProperties","*"]});a.patternProperties={};for(const p of l)a.patternProperties[p.source]=c}else(t.target==="draft-07"||t.target==="draft-2020-12")&&(a.propertyNames=ue(o.keyType,t,{...n,path:[...n.path,"propertyNames"]})),a.additionalProperties=ue(o.valueType,t,{...n,path:[...n.path,"additionalProperties"]});const u=s._zod.values;if(u){const c=[...u].filter(p=>typeof p=="string"||typeof p=="number");c.length>0&&(a.required=c)}},oi=(e,t,r,n)=>{const a=e._zod.def,o=ue(a.innerType,t,n),s=t.seen.get(e);t.target==="openapi-3.0"?(s.ref=a.innerType,r.nullable=!0):r.anyOf=[o,{type:"null"}]},si=(e,t,r,n)=>{const a=e._zod.def;ue(a.innerType,t,n);const o=t.seen.get(e);o.ref=a.innerType},ii=(e,t,r,n)=>{const a=e._zod.def;ue(a.innerType,t,n);const o=t.seen.get(e);o.ref=a.innerType,r.default=JSON.parse(JSON.stringify(a.defaultValue))},li=(e,t,r,n)=>{const a=e._zod.def;ue(a.innerType,t,n);const o=t.seen.get(e);o.ref=a.innerType,t.io==="input"&&(r._prefault=JSON.parse(JSON.stringify(a.defaultValue)))},ui=(e,t,r,n)=>{const a=e._zod.def;ue(a.innerType,t,n);const o=t.seen.get(e);o.ref=a.innerType;let s;try{s=a.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}r.default=s},ci=(e,t,r,n)=>{const a=e._zod.def,o=t.io==="input"?a.in._zod.def.type==="transform"?a.out:a.in:a.out;ue(o,t,n);const s=t.seen.get(e);s.ref=o},di=(e,t,r,n)=>{const a=e._zod.def;ue(a.innerType,t,n);const o=t.seen.get(e);o.ref=a.innerType,r.readOnly=!0},Zp=(e,t,r,n)=>{const a=e._zod.def;ue(a.innerType,t,n);const o=t.seen.get(e);o.ref=a.innerType},ea=(e,t,r,n)=>{const a=e._zod.def;ue(a.innerType,t,n);const o=t.seen.get(e);o.ref=a.innerType},pi=(e,t,r,n)=>{const a=e._zod.innerType;ue(a,t,n);const o=t.seen.get(e);o.ref=a},Wa={string:Zs,number:Gs,boolean:Bs,bigint:Rp,symbol:kp,null:Vs,undefined:Pp,void:Cp,never:Hs,any:Js,unknown:Ys,date:Dp,enum:Ws,literal:Ks,nan:zp,template_literal:$p,file:Mp,success:Fp,custom:Xs,function:Lp,transform:Qs,map:Up,set:jp,array:ei,object:ti,union:ri,intersection:ni,tuple:qp,record:ai,nullable:oi,nonoptional:si,default:ii,prefault:li,catch:ui,pipe:ci,readonly:di,promise:Zp,optional:ea,lazy:pi};function Gp(e,t){if("_idmap"in e){const n=e,a=Br({...t,processors:Wa}),o={};for(const l of n._idmap.entries()){const[u,c]=l;ue(c,a)}const s={},i={registry:n,uri:t==null?void 0:t.uri,defs:o};a.external=i;for(const l of n._idmap.entries()){const[u,c]=l;Vr(a,c),s[u]=Hr(a,c)}if(Object.keys(o).length>0){const l=a.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[l]:o}}return{schemas:s}}const r=Br({...t,processors:Wa});return ue(e,r),Vr(r,e),Hr(r,e)}const Bp=T("ZodISODateTime",(e,t)=>{Vc.init(e,t),ve.init(e,t)});function Vp(e){return tp(Bp,e)}const Hp=T("ZodISODate",(e,t)=>{Hc.init(e,t),ve.init(e,t)});function Jp(e){return rp(Hp,e)}const Yp=T("ZodISOTime",(e,t)=>{Jc.init(e,t),ve.init(e,t)});function Wp(e){return np(Yp,e)}const Kp=T("ZodISODuration",(e,t)=>{Yc.init(e,t),ve.init(e,t)});function Xp(e){return ap(Kp,e)}const Qp=(e,t)=>{Ns.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:r=>Fu(e,r)},flatten:{value:r=>Mu(e,r)},addIssue:{value:r=>{e.issues.push(r),e.message=JSON.stringify(e.issues,$n,2)}},addIssues:{value:r=>{e.issues.push(...r),e.message=JSON.stringify(e.issues,$n,2)}},isEmpty:{get(){return e.issues.length===0}}})},Be=T("ZodError",Qp,{Parent:Error}),ef=Kn(Be),tf=Xn(Be),rf=ln(Be),fi=un(Be),nf=ju(Be),af=qu(Be),of=Zu(Be),sf=Gu(Be),lf=Bu(Be),uf=Vu(Be),cf=Hu(Be),df=Ju(Be),de=T("ZodType",(e,t)=>(ce.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:Jr(e,"input"),output:Jr(e,"output")}}),e.toJSONSchema=Op(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...r)=>e.clone(bt(t,{checks:[...t.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),{parent:!0}),e.with=e.check,e.clone=(r,n)=>Et(e,r,n),e.brand=()=>e,e.register=((r,n)=>(r.add(e,n),e)),e.parse=(r,n)=>ef(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>rf(e,r,n),e.parseAsync=async(r,n)=>tf(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>fi(e,r,n),e.spa=e.safeParseAsync,e.encode=(r,n)=>nf(e,r,n),e.decode=(r,n)=>af(e,r,n),e.encodeAsync=async(r,n)=>of(e,r,n),e.decodeAsync=async(r,n)=>sf(e,r,n),e.safeEncode=(r,n)=>lf(e,r,n),e.safeDecode=(r,n)=>uf(e,r,n),e.safeEncodeAsync=async(r,n)=>cf(e,r,n),e.safeDecodeAsync=async(r,n)=>df(e,r,n),e.refine=(r,n)=>e.check(cg(r,n)),e.superRefine=r=>e.check(dg(r)),e.overwrite=r=>e.check(Kt(r)),e.optional=()=>Qa(e),e.exactOptional=()=>Yf(e),e.nullable=()=>eo(e),e.nullish=()=>Qa(eo(e)),e.nonoptional=r=>tg(e,r),e.array=()=>Ue(e),e.or=r=>Pe([e,r]),e.and=r=>Zf(e,r),e.transform=r=>to(e,Hf(r)),e.default=r=>Xf(e,r),e.prefault=r=>eg(e,r),e.catch=r=>ng(e,r),e.pipe=r=>to(e,r),e.readonly=()=>sg(e),e.describe=r=>{const n=e.clone();return ur.add(n,{description:r}),n},Object.defineProperty(e,"description",{get(){var r;return(r=ur.get(e))==null?void 0:r.description},configurable:!0}),e.meta=(...r)=>{if(r.length===0)return ur.get(e);const n=e.clone();return ur.add(n,r[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=r=>r(e),e)),gi=T("_ZodString",(e,t)=>{Qn.init(e,t),de.init(e,t),e._zod.processJSONSchema=(n,a,o)=>Zs(e,n,a);const r=e._zod.bag;e.format=r.format??null,e.minLength=r.minimum??null,e.maxLength=r.maximum??null,e.regex=(...n)=>e.check(pp(...n)),e.includes=(...n)=>e.check(mp(...n)),e.startsWith=(...n)=>e.check(hp(...n)),e.endsWith=(...n)=>e.check(yp(...n)),e.min=(...n)=>e.check(Gr(...n)),e.max=(...n)=>e.check(js(...n)),e.length=(...n)=>e.check(qs(...n)),e.nonempty=(...n)=>e.check(Gr(1,...n)),e.lowercase=n=>e.check(fp(n)),e.uppercase=n=>e.check(gp(n)),e.trim=()=>e.check(_p()),e.normalize=(...n)=>e.check(vp(...n)),e.toLowerCase=()=>e.check(wp()),e.toUpperCase=()=>e.check(Tp()),e.slugify=()=>e.check(bp())}),pf=T("ZodString",(e,t)=>{Qn.init(e,t),gi.init(e,t),e.email=r=>e.check(Dd(ff,r)),e.url=r=>e.check(Ld(gf,r)),e.jwt=r=>e.check(ep(xf,r)),e.emoji=r=>e.check(Ud(mf,r)),e.guid=r=>e.check(Va(Ka,r)),e.uuid=r=>e.check(zd(Fr,r)),e.uuidv4=r=>e.check($d(Fr,r)),e.uuidv6=r=>e.check(Md(Fr,r)),e.uuidv7=r=>e.check(Fd(Fr,r)),e.nanoid=r=>e.check(jd(hf,r)),e.guid=r=>e.check(Va(Ka,r)),e.cuid=r=>e.check(qd(yf,r)),e.cuid2=r=>e.check(Zd(vf,r)),e.ulid=r=>e.check(Gd(_f,r)),e.base64=r=>e.check(Kd(Nf,r)),e.base64url=r=>e.check(Xd(Af,r)),e.xid=r=>e.check(Bd(wf,r)),e.ksuid=r=>e.check(Vd(Tf,r)),e.ipv4=r=>e.check(Hd(bf,r)),e.ipv6=r=>e.check(Jd(Ef,r)),e.cidrv4=r=>e.check(Yd(If,r)),e.cidrv6=r=>e.check(Wd(Sf,r)),e.e164=r=>e.check(Qd(Of,r)),e.datetime=r=>e.check(Vp(r)),e.date=r=>e.check(Jp(r)),e.time=r=>e.check(Wp(r)),e.duration=r=>e.check(Xp(r))});function R(e){return Cd(pf,e)}const ve=T("ZodStringFormat",(e,t)=>{he.init(e,t),gi.init(e,t)}),ff=T("ZodEmail",(e,t)=>{Mc.init(e,t),ve.init(e,t)}),Ka=T("ZodGUID",(e,t)=>{zc.init(e,t),ve.init(e,t)}),Fr=T("ZodUUID",(e,t)=>{$c.init(e,t),ve.init(e,t)}),gf=T("ZodURL",(e,t)=>{Fc.init(e,t),ve.init(e,t)}),mf=T("ZodEmoji",(e,t)=>{Lc.init(e,t),ve.init(e,t)}),hf=T("ZodNanoID",(e,t)=>{Uc.init(e,t),ve.init(e,t)}),yf=T("ZodCUID",(e,t)=>{jc.init(e,t),ve.init(e,t)}),vf=T("ZodCUID2",(e,t)=>{qc.init(e,t),ve.init(e,t)}),_f=T("ZodULID",(e,t)=>{Zc.init(e,t),ve.init(e,t)}),wf=T("ZodXID",(e,t)=>{Gc.init(e,t),ve.init(e,t)}),Tf=T("ZodKSUID",(e,t)=>{Bc.init(e,t),ve.init(e,t)}),bf=T("ZodIPv4",(e,t)=>{Wc.init(e,t),ve.init(e,t)}),Ef=T("ZodIPv6",(e,t)=>{Kc.init(e,t),ve.init(e,t)}),If=T("ZodCIDRv4",(e,t)=>{Xc.init(e,t),ve.init(e,t)}),Sf=T("ZodCIDRv6",(e,t)=>{Qc.init(e,t),ve.init(e,t)}),Nf=T("ZodBase64",(e,t)=>{ed.init(e,t),ve.init(e,t)}),Af=T("ZodBase64URL",(e,t)=>{rd.init(e,t),ve.init(e,t)}),Of=T("ZodE164",(e,t)=>{nd.init(e,t),ve.init(e,t)}),xf=T("ZodJWT",(e,t)=>{od.init(e,t),ve.init(e,t)}),mi=T("ZodNumber",(e,t)=>{$s.init(e,t),de.init(e,t),e._zod.processJSONSchema=(n,a,o)=>Gs(e,n,a),e.gt=(n,a)=>e.check(Ja(n,a)),e.gte=(n,a)=>e.check(Tn(n,a)),e.min=(n,a)=>e.check(Tn(n,a)),e.lt=(n,a)=>e.check(Ha(n,a)),e.lte=(n,a)=>e.check(wn(n,a)),e.max=(n,a)=>e.check(wn(n,a)),e.int=n=>e.check(Xa(n)),e.safe=n=>e.check(Xa(n)),e.positive=n=>e.check(Ja(0,n)),e.nonnegative=n=>e.check(Tn(0,n)),e.negative=n=>e.check(Ha(0,n)),e.nonpositive=n=>e.check(wn(0,n)),e.multipleOf=(n,a)=>e.check(Ya(n,a)),e.step=(n,a)=>e.check(Ya(n,a)),e.finite=()=>e;const r=e._zod.bag;e.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),e.isFinite=!0,e.format=r.format??null});function Yr(e){return op(mi,e)}const Rf=T("ZodNumberFormat",(e,t)=>{sd.init(e,t),mi.init(e,t)});function Xa(e){return sp(Rf,e)}const kf=T("ZodBoolean",(e,t)=>{id.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Bs(e,r,n)});function ta(e){return ip(kf,e)}const Pf=T("ZodNull",(e,t)=>{ld.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Vs(e,r,n)});function Cf(e){return lp(Pf,e)}const Df=T("ZodAny",(e,t)=>{ud.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Js()});function ht(){return up(Df)}const zf=T("ZodUnknown",(e,t)=>{cd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Ys()});function Rt(){return cp(zf)}const $f=T("ZodNever",(e,t)=>{dd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Hs(e,r,n)});function Mf(e){return dp($f,e)}const Ff=T("ZodArray",(e,t)=>{pd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ei(e,r,n,a),e.element=t.element,e.min=(r,n)=>e.check(Gr(r,n)),e.nonempty=r=>e.check(Gr(1,r)),e.max=(r,n)=>e.check(js(r,n)),e.length=(r,n)=>e.check(qs(r,n)),e.unwrap=()=>e.element});function Ue(e,t){return Ep(Ff,e,t)}const Lf=T("ZodObject",(e,t)=>{gd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ti(e,r,n,a),Y(e,"shape",()=>t.shape),e.keyof=()=>yi(Object.keys(e._zod.def.shape)),e.catchall=r=>e.clone({...e._zod.def,catchall:r}),e.passthrough=()=>e.clone({...e._zod.def,catchall:Rt()}),e.loose=()=>e.clone({...e._zod.def,catchall:Rt()}),e.strict=()=>e.clone({...e._zod.def,catchall:Mf()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=r=>Pu(e,r),e.safeExtend=r=>Cu(e,r),e.merge=r=>Du(e,r),e.pick=r=>Ru(e,r),e.omit=r=>ku(e,r),e.partial=(...r)=>zu(vi,e,r[0]),e.required=(...r)=>$u(_i,e,r[0])});function G(e,t){const r={type:"object",shape:e??{},...k(t)};return new Lf(r)}const hi=T("ZodUnion",(e,t)=>{Ls.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ri(e,r,n,a),e.options=t.options});function Pe(e,t){return new hi({type:"union",options:e,...k(t)})}const Uf=T("ZodDiscriminatedUnion",(e,t)=>{hi.init(e,t),md.init(e,t)});function jf(e,t,r){return new Uf({type:"union",options:t,discriminator:e,...k(r)})}const qf=T("ZodIntersection",(e,t)=>{hd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ni(e,r,n,a)});function Zf(e,t){return new qf({type:"intersection",left:e,right:t})}const Gf=T("ZodRecord",(e,t)=>{yd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ai(e,r,n,a),e.keyType=t.keyType,e.valueType=t.valueType});function wt(e,t,r){return new Gf({type:"record",keyType:e,valueType:t,...k(r)})}const Fn=T("ZodEnum",(e,t)=>{vd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(n,a,o)=>Ws(e,n,a),e.enum=t.entries,e.options=Object.values(t.entries);const r=new Set(Object.keys(t.entries));e.extract=(n,a)=>{const o={};for(const s of n)if(r.has(s))o[s]=t.entries[s];else throw new Error(`Key ${s} not found in enum`);return new Fn({...t,checks:[],...k(a),entries:o})},e.exclude=(n,a)=>{const o={...t.entries};for(const s of n)if(r.has(s))delete o[s];else throw new Error(`Key ${s} not found in enum`);return new Fn({...t,checks:[],...k(a),entries:o})}});function yi(e,t){const r=Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e;return new Fn({type:"enum",entries:r,...k(t)})}const Bf=T("ZodLiteral",(e,t)=>{_d.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Ks(e,r,n),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function ee(e,t){return new Bf({type:"literal",values:Array.isArray(e)?e:[e],...k(t)})}const Vf=T("ZodTransform",(e,t)=>{wd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Qs(e,r),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new ws(e.constructor.name);r.addIssue=o=>{if(typeof o=="string")r.issues.push(gr(o,r.value,t));else{const s=o;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=r.value),s.inst??(s.inst=e),r.issues.push(gr(s))}};const a=t.transform(r.value,r);return a instanceof Promise?a.then(o=>(r.value=o,r)):(r.value=a,r)}});function Hf(e){return new Vf({type:"transform",transform:e})}const vi=T("ZodOptional",(e,t)=>{Us.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ea(e,r,n,a),e.unwrap=()=>e._zod.def.innerType});function Qa(e){return new vi({type:"optional",innerType:e})}const Jf=T("ZodExactOptional",(e,t)=>{Td.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ea(e,r,n,a),e.unwrap=()=>e._zod.def.innerType});function Yf(e){return new Jf({type:"optional",innerType:e})}const Wf=T("ZodNullable",(e,t)=>{bd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>oi(e,r,n,a),e.unwrap=()=>e._zod.def.innerType});function eo(e){return new Wf({type:"nullable",innerType:e})}const Kf=T("ZodDefault",(e,t)=>{Ed.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ii(e,r,n,a),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Xf(e,t){return new Kf({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():Is(t)}})}const Qf=T("ZodPrefault",(e,t)=>{Id.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>li(e,r,n,a),e.unwrap=()=>e._zod.def.innerType});function eg(e,t){return new Qf({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():Is(t)}})}const _i=T("ZodNonOptional",(e,t)=>{Sd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>si(e,r,n,a),e.unwrap=()=>e._zod.def.innerType});function tg(e,t){return new _i({type:"nonoptional",innerType:e,...k(t)})}const rg=T("ZodCatch",(e,t)=>{Nd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ui(e,r,n,a),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function ng(e,t){return new rg({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}const ag=T("ZodPipe",(e,t)=>{Ad.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ci(e,r,n,a),e.in=t.in,e.out=t.out});function to(e,t){return new ag({type:"pipe",in:e,out:t})}const og=T("ZodReadonly",(e,t)=>{Od.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>di(e,r,n,a),e.unwrap=()=>e._zod.def.innerType});function sg(e){return new og({type:"readonly",innerType:e})}const ig=T("ZodLazy",(e,t)=>{xd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>pi(e,r,n,a),e.unwrap=()=>e._zod.def.getter()});function lg(e){return new ig({type:"lazy",getter:e})}const ra=T("ZodCustom",(e,t)=>{Rd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Xs(e,r)});function ug(e,t){return Ip(ra,e??(()=>!0),t)}function cg(e,t={}){return Sp(ra,e,t)}function dg(e){return Np(e)}function Wr(e,t={}){const r=new ra({type:"custom",check:"custom",fn:n=>n instanceof e,abort:!0,...k(t)});return r._zod.bag.Class=e,r._zod.check=n=>{n.value instanceof e||n.issues.push({code:"invalid_type",expected:e.name,input:n.value,inst:r,path:[...r._zod.def.path??[]]})},r}var mr;(function(e){e.assertEqual=a=>{};function t(a){}e.assertIs=t;function r(a){throw new Error}e.assertNever=r,e.arrayToEnum=a=>{const o={};for(const s of a)o[s]=s;return o},e.getValidEnumValues=a=>{const o=e.objectKeys(a).filter(i=>typeof a[a[i]]!="number"),s={};for(const i of o)s[i]=a[i];return e.objectValues(s)},e.objectValues=a=>e.objectKeys(a).map(function(o){return a[o]}),e.objectKeys=typeof Object.keys=="function"?a=>Object.keys(a):a=>{const o=[];for(const s in a)Object.prototype.hasOwnProperty.call(a,s)&&o.push(s);return o},e.find=(a,o)=>{for(const s of a)if(o(s))return s},e.isInteger=typeof Number.isInteger=="function"?a=>Number.isInteger(a):a=>typeof a=="number"&&Number.isFinite(a)&&Math.floor(a)===a;function n(a,o=" | "){return a.map(s=>typeof s=="string"?`'${s}'`:s).join(o)}e.joinValues=n,e.jsonStringifyReplacer=(a,o)=>typeof o=="bigint"?o.toString():o})(mr||(mr={}));var ro;(function(e){e.mergeShapes=(t,r)=>({...t,...r})})(ro||(ro={}));mr.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]);mr.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class Kr extends Error{get errors(){return this.issues}constructor(t){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};const r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=t}format(t){const r=t||function(o){return o.message},n={_errors:[]},a=o=>{for(const s of o.issues)if(s.code==="invalid_union")s.unionErrors.map(a);else if(s.code==="invalid_return_type")a(s.returnTypeError);else if(s.code==="invalid_arguments")a(s.argumentsError);else if(s.path.length===0)n._errors.push(r(s));else{let i=n,l=0;for(;l<s.path.length;){const u=s.path[l];l===s.path.length-1?(i[u]=i[u]||{_errors:[]},i[u]._errors.push(r(s))):i[u]=i[u]||{_errors:[]},i=i[u],l++}}};return a(this),n}static assert(t){if(!(t instanceof Kr))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,mr.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(t=r=>r.message){const r=Object.create(null),n=[];for(const a of this.issues)if(a.path.length>0){const o=a.path[0];r[o]=r[o]||[],r[o].push(t(a))}else n.push(t(a));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}}Kr.create=e=>new Kr(e);var no;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t==null?void 0:t.message})(no||(no={}));var q;(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(q||(q={}));class ao extends Error{constructor(t,r){super(t),this.name="ParseError",this.type=r.type,this.field=r.field,this.value=r.value,this.line=r.line}}function bn(e){}function pg(e){if(typeof e=="function")throw new TypeError("`callbacks` must be an object, got a function instead. Did you mean `{onEvent: fn}`?");const{onEvent:t=bn,onError:r=bn,onRetry:n=bn,onComment:a}=e;let o="",s=!0,i,l="",u="";function c(w){const I=s?w.replace(/^\xEF\xBB\xBF/,""):w,[P,C]=fg(`${o}${I}`);for(const h of P)p(h);o=C,s=!1}function p(w){if(w===""){v();return}if(w.startsWith(":")){a&&a(w.slice(w.startsWith(": ")?2:1));return}const I=w.indexOf(":");if(I!==-1){const P=w.slice(0,I),C=w[I+1]===" "?2:1,h=w.slice(I+C);d(P,h,w);return}d(w,"",w)}function d(w,I,P){switch(w){case"event":u=I;break;case"data":l=`${l}${I}
|
|
42
|
-
`;break;case"id":i=I.includes("\0")?void 0:I;break;case"retry":/^\d+$/.test(I)?n(parseInt(I,10)):r(new
|
|
43
|
-
`)?l.slice(0,-1):l}),i=void 0,l="",u=""}function E(w={}){o&&w.consume&&p(o),s=!0,i=void 0,l="",u="",o=""}return{feed:c,reset:E}}function
|
|
41
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const c of e.seen.entries()){const p=c[1];if(t===c[0]){o(c);continue}if(e.external){const v=(l=e.external.registry.get(c[0]))==null?void 0:l.id;if(t!==c[0]&&v){o(c);continue}}if((u=e.metadataRegistry.get(c[0]))==null?void 0:u.id){o(c);continue}if(p.cycle){o(c);continue}if(p.count>1&&e.reused==="ref"){o(c);continue}}}function Jr(e,t){var s,i,l;const r=e.seen.get(t);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");const n=u=>{const c=e.seen.get(u);if(c.ref===null)return;const p=c.def??c.schema,d={...p},v=c.ref;if(c.ref=null,v){n(v);const w=e.seen.get(v),I=w.schema;if(I.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(p.allOf=p.allOf??[],p.allOf.push(I)):Object.assign(p,I),Object.assign(p,d),u._zod.parent===v)for(const C in p)C==="$ref"||C==="allOf"||C in d||delete p[C];if(I.$ref)for(const C in p)C==="$ref"||C==="allOf"||C in w.def&&JSON.stringify(p[C])===JSON.stringify(w.def[C])&&delete p[C]}const E=u._zod.parent;if(E&&E!==v){n(E);const w=e.seen.get(E);if(w!=null&&w.schema.$ref&&(p.$ref=w.schema.$ref,w.def))for(const I in p)I==="$ref"||I==="allOf"||I in w.def&&JSON.stringify(p[I])===JSON.stringify(w.def[I])&&delete p[I]}e.override({zodSchema:u,jsonSchema:p,path:c.path??[]})};for(const u of[...e.seen.entries()].reverse())n(u[0]);const a={};if(e.target==="draft-2020-12"?a.$schema="https://json-schema.org/draft/2020-12/schema":e.target==="draft-07"?a.$schema="http://json-schema.org/draft-07/schema#":e.target==="draft-04"?a.$schema="http://json-schema.org/draft-04/schema#":e.target,(s=e.external)!=null&&s.uri){const u=(i=e.external.registry.get(t))==null?void 0:i.id;if(!u)throw new Error("Schema is missing an `id` property");a.$id=e.external.uri(u)}Object.assign(a,r.def??r.schema);const o=((l=e.external)==null?void 0:l.defs)??{};for(const u of e.seen.entries()){const c=u[1];c.def&&c.defId&&(o[c.defId]=c.def)}e.external||Object.keys(o).length>0&&(e.target==="draft-2020-12"?a.$defs=o:a.definitions=o);try{const u=JSON.parse(JSON.stringify(a));return Object.defineProperty(u,"~standard",{value:{...t["~standard"],jsonSchema:{input:Yr(t,"input",e.processors),output:Yr(t,"output",e.processors)}},enumerable:!1,writable:!1}),u}catch{throw new Error("Error converting schema to JSON.")}}function De(e,t){const r=t??{seen:new Set};if(r.seen.has(e))return!1;r.seen.add(e);const n=e._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return De(n.element,r);if(n.type==="set")return De(n.valueType,r);if(n.type==="lazy")return De(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault")return De(n.innerType,r);if(n.type==="intersection")return De(n.left,r)||De(n.right,r);if(n.type==="record"||n.type==="map")return De(n.keyType,r)||De(n.valueType,r);if(n.type==="pipe")return De(n.in,r)||De(n.out,r);if(n.type==="object"){for(const a in n.shape)if(De(n.shape[a],r))return!0;return!1}if(n.type==="union"){for(const a of n.options)if(De(a,r))return!0;return!1}if(n.type==="tuple"){for(const a of n.items)if(De(a,r))return!0;return!!(n.rest&&De(n.rest,r))}return!1}const Rp=(e,t={})=>r=>{const n=Vr({...r,processors:t});return ue(e,n),Hr(n,e),Jr(n,e)},Yr=(e,t,r={})=>n=>{const{libraryOptions:a,target:o}=n??{},s=Vr({...a??{},target:o,io:t,processors:r});return ue(e,s),Hr(s,e),Jr(s,e)},xp={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},Gs=(e,t,r,n)=>{const a=r;a.type="string";const{minimum:o,maximum:s,format:i,patterns:l,contentEncoding:u}=e._zod.bag;if(typeof o=="number"&&(a.minLength=o),typeof s=="number"&&(a.maxLength=s),i&&(a.format=xp[i]??i,a.format===""&&delete a.format,i==="time"&&delete a.format),u&&(a.contentEncoding=u),l&&l.size>0){const c=[...l];c.length===1?a.pattern=c[0].source:c.length>1&&(a.allOf=[...c.map(p=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:p.source}))])}},Bs=(e,t,r,n)=>{const a=r,{minimum:o,maximum:s,format:i,multipleOf:l,exclusiveMaximum:u,exclusiveMinimum:c}=e._zod.bag;typeof i=="string"&&i.includes("int")?a.type="integer":a.type="number",typeof c=="number"&&(t.target==="draft-04"||t.target==="openapi-3.0"?(a.minimum=c,a.exclusiveMinimum=!0):a.exclusiveMinimum=c),typeof o=="number"&&(a.minimum=o,typeof c=="number"&&t.target!=="draft-04"&&(c>=o?delete a.minimum:delete a.exclusiveMinimum)),typeof u=="number"&&(t.target==="draft-04"||t.target==="openapi-3.0"?(a.maximum=u,a.exclusiveMaximum=!0):a.exclusiveMaximum=u),typeof s=="number"&&(a.maximum=s,typeof u=="number"&&t.target!=="draft-04"&&(u<=s?delete a.maximum:delete a.exclusiveMaximum)),typeof l=="number"&&(a.multipleOf=l)},Vs=(e,t,r,n)=>{r.type="boolean"},kp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema")},Pp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema")},Hs=(e,t,r,n)=>{t.target==="openapi-3.0"?(r.type="string",r.nullable=!0,r.enum=[null]):r.type="null"},Cp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema")},zp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema")},Js=(e,t,r,n)=>{r.not={}},Ys=(e,t,r,n)=>{},Ws=(e,t,r,n)=>{},Dp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema")},Ks=(e,t,r,n)=>{const a=e._zod.def,o=Es(a.entries);o.every(s=>typeof s=="number")&&(r.type="number"),o.every(s=>typeof s=="string")&&(r.type="string"),r.enum=o},Xs=(e,t,r,n)=>{const a=e._zod.def,o=[];for(const s of a.values)if(s===void 0){if(t.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof s=="bigint"){if(t.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");o.push(Number(s))}else o.push(s);if(o.length!==0)if(o.length===1){const s=o[0];r.type=s===null?"null":typeof s,t.target==="draft-04"||t.target==="openapi-3.0"?r.enum=[s]:r.const=s}else o.every(s=>typeof s=="number")&&(r.type="number"),o.every(s=>typeof s=="string")&&(r.type="string"),o.every(s=>typeof s=="boolean")&&(r.type="boolean"),o.every(s=>s===null)&&(r.type="null"),r.enum=o},$p=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema")},Mp=(e,t,r,n)=>{const a=r,o=e._zod.pattern;if(!o)throw new Error("Pattern not found in template literal");a.type="string",a.pattern=o.source},Fp=(e,t,r,n)=>{const a=r,o={type:"string",format:"binary",contentEncoding:"binary"},{minimum:s,maximum:i,mime:l}=e._zod.bag;s!==void 0&&(o.minLength=s),i!==void 0&&(o.maxLength=i),l?l.length===1?(o.contentMediaType=l[0],Object.assign(a,o)):(Object.assign(a,o),a.anyOf=l.map(u=>({contentMediaType:u}))):Object.assign(a,o)},Lp=(e,t,r,n)=>{r.type="boolean"},Qs=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},Up=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Function types cannot be represented in JSON Schema")},ei=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},jp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema")},qp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema")},ti=(e,t,r,n)=>{const a=r,o=e._zod.def,{minimum:s,maximum:i}=e._zod.bag;typeof s=="number"&&(a.minItems=s),typeof i=="number"&&(a.maxItems=i),a.type="array",a.items=ue(o.element,t,{...n,path:[...n.path,"items"]})},ri=(e,t,r,n)=>{var u;const a=r,o=e._zod.def;a.type="object",a.properties={};const s=o.shape;for(const c in s)a.properties[c]=ue(s[c],t,{...n,path:[...n.path,"properties",c]});const i=new Set(Object.keys(s)),l=new Set([...i].filter(c=>{const p=o.shape[c]._zod;return t.io==="input"?p.optin===void 0:p.optout===void 0}));l.size>0&&(a.required=Array.from(l)),((u=o.catchall)==null?void 0:u._zod.def.type)==="never"?a.additionalProperties=!1:o.catchall?o.catchall&&(a.additionalProperties=ue(o.catchall,t,{...n,path:[...n.path,"additionalProperties"]})):t.io==="output"&&(a.additionalProperties=!1)},ni=(e,t,r,n)=>{const a=e._zod.def,o=a.inclusive===!1,s=a.options.map((i,l)=>ue(i,t,{...n,path:[...n.path,o?"oneOf":"anyOf",l]}));o?r.oneOf=s:r.anyOf=s},ai=(e,t,r,n)=>{const a=e._zod.def,o=ue(a.left,t,{...n,path:[...n.path,"allOf",0]}),s=ue(a.right,t,{...n,path:[...n.path,"allOf",1]}),i=u=>"allOf"in u&&Object.keys(u).length===1,l=[...i(o)?o.allOf:[o],...i(s)?s.allOf:[s]];r.allOf=l},Zp=(e,t,r,n)=>{const a=r,o=e._zod.def;a.type="array";const s=t.target==="draft-2020-12"?"prefixItems":"items",i=t.target==="draft-2020-12"||t.target==="openapi-3.0"?"items":"additionalItems",l=o.items.map((d,v)=>ue(d,t,{...n,path:[...n.path,s,v]})),u=o.rest?ue(o.rest,t,{...n,path:[...n.path,i,...t.target==="openapi-3.0"?[o.items.length]:[]]}):null;t.target==="draft-2020-12"?(a.prefixItems=l,u&&(a.items=u)):t.target==="openapi-3.0"?(a.items={anyOf:l},u&&a.items.anyOf.push(u),a.minItems=l.length,u||(a.maxItems=l.length)):(a.items=l,u&&(a.additionalItems=u));const{minimum:c,maximum:p}=e._zod.bag;typeof c=="number"&&(a.minItems=c),typeof p=="number"&&(a.maxItems=p)},oi=(e,t,r,n)=>{const a=r,o=e._zod.def;a.type="object";const s=o.keyType,i=s._zod.bag,l=i==null?void 0:i.patterns;if(o.mode==="loose"&&l&&l.size>0){const c=ue(o.valueType,t,{...n,path:[...n.path,"patternProperties","*"]});a.patternProperties={};for(const p of l)a.patternProperties[p.source]=c}else(t.target==="draft-07"||t.target==="draft-2020-12")&&(a.propertyNames=ue(o.keyType,t,{...n,path:[...n.path,"propertyNames"]})),a.additionalProperties=ue(o.valueType,t,{...n,path:[...n.path,"additionalProperties"]});const u=s._zod.values;if(u){const c=[...u].filter(p=>typeof p=="string"||typeof p=="number");c.length>0&&(a.required=c)}},si=(e,t,r,n)=>{const a=e._zod.def,o=ue(a.innerType,t,n),s=t.seen.get(e);t.target==="openapi-3.0"?(s.ref=a.innerType,r.nullable=!0):r.anyOf=[o,{type:"null"}]},ii=(e,t,r,n)=>{const a=e._zod.def;ue(a.innerType,t,n);const o=t.seen.get(e);o.ref=a.innerType},li=(e,t,r,n)=>{const a=e._zod.def;ue(a.innerType,t,n);const o=t.seen.get(e);o.ref=a.innerType,r.default=JSON.parse(JSON.stringify(a.defaultValue))},ui=(e,t,r,n)=>{const a=e._zod.def;ue(a.innerType,t,n);const o=t.seen.get(e);o.ref=a.innerType,t.io==="input"&&(r._prefault=JSON.parse(JSON.stringify(a.defaultValue)))},ci=(e,t,r,n)=>{const a=e._zod.def;ue(a.innerType,t,n);const o=t.seen.get(e);o.ref=a.innerType;let s;try{s=a.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}r.default=s},di=(e,t,r,n)=>{const a=e._zod.def,o=t.io==="input"?a.in._zod.def.type==="transform"?a.out:a.in:a.out;ue(o,t,n);const s=t.seen.get(e);s.ref=o},pi=(e,t,r,n)=>{const a=e._zod.def;ue(a.innerType,t,n);const o=t.seen.get(e);o.ref=a.innerType,r.readOnly=!0},Gp=(e,t,r,n)=>{const a=e._zod.def;ue(a.innerType,t,n);const o=t.seen.get(e);o.ref=a.innerType},ta=(e,t,r,n)=>{const a=e._zod.def;ue(a.innerType,t,n);const o=t.seen.get(e);o.ref=a.innerType},fi=(e,t,r,n)=>{const a=e._zod.innerType;ue(a,t,n);const o=t.seen.get(e);o.ref=a},Ka={string:Gs,number:Bs,boolean:Vs,bigint:kp,symbol:Pp,null:Hs,undefined:Cp,void:zp,never:Js,any:Ys,unknown:Ws,date:Dp,enum:Ks,literal:Xs,nan:$p,template_literal:Mp,file:Fp,success:Lp,custom:Qs,function:Up,transform:ei,map:jp,set:qp,array:ti,object:ri,union:ni,intersection:ai,tuple:Zp,record:oi,nullable:si,nonoptional:ii,default:li,prefault:ui,catch:ci,pipe:di,readonly:pi,promise:Gp,optional:ta,lazy:fi};function Bp(e,t){if("_idmap"in e){const n=e,a=Vr({...t,processors:Ka}),o={};for(const l of n._idmap.entries()){const[u,c]=l;ue(c,a)}const s={},i={registry:n,uri:t==null?void 0:t.uri,defs:o};a.external=i;for(const l of n._idmap.entries()){const[u,c]=l;Hr(a,c),s[u]=Jr(a,c)}if(Object.keys(o).length>0){const l=a.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[l]:o}}return{schemas:s}}const r=Vr({...t,processors:Ka});return ue(e,r),Hr(r,e),Jr(r,e)}const Vp=T("ZodISODateTime",(e,t)=>{Hc.init(e,t),ye.init(e,t)});function Hp(e){return rp(Vp,e)}const Jp=T("ZodISODate",(e,t)=>{Jc.init(e,t),ye.init(e,t)});function Yp(e){return np(Jp,e)}const Wp=T("ZodISOTime",(e,t)=>{Yc.init(e,t),ye.init(e,t)});function Kp(e){return ap(Wp,e)}const Xp=T("ZodISODuration",(e,t)=>{Wc.init(e,t),ye.init(e,t)});function Qp(e){return op(Xp,e)}const ef=(e,t)=>{Ns.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:r=>Lu(e,r)},flatten:{value:r=>Fu(e,r)},addIssue:{value:r=>{e.issues.push(r),e.message=JSON.stringify(e.issues,Mn,2)}},addIssues:{value:r=>{e.issues.push(...r),e.message=JSON.stringify(e.issues,Mn,2)}},isEmpty:{get(){return e.issues.length===0}}})},Be=T("ZodError",ef,{Parent:Error}),tf=Xn(Be),rf=Qn(Be),nf=un(Be),gi=cn(Be),af=qu(Be),of=Zu(Be),sf=Gu(Be),lf=Bu(Be),uf=Vu(Be),cf=Hu(Be),df=Ju(Be),pf=Yu(Be),de=T("ZodType",(e,t)=>(ce.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:Yr(e,"input"),output:Yr(e,"output")}}),e.toJSONSchema=Rp(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...r)=>e.clone(bt(t,{checks:[...t.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),{parent:!0}),e.with=e.check,e.clone=(r,n)=>Et(e,r,n),e.brand=()=>e,e.register=((r,n)=>(r.add(e,n),e)),e.parse=(r,n)=>tf(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>nf(e,r,n),e.parseAsync=async(r,n)=>rf(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>gi(e,r,n),e.spa=e.safeParseAsync,e.encode=(r,n)=>af(e,r,n),e.decode=(r,n)=>of(e,r,n),e.encodeAsync=async(r,n)=>sf(e,r,n),e.decodeAsync=async(r,n)=>lf(e,r,n),e.safeEncode=(r,n)=>uf(e,r,n),e.safeDecode=(r,n)=>cf(e,r,n),e.safeEncodeAsync=async(r,n)=>df(e,r,n),e.safeDecodeAsync=async(r,n)=>pf(e,r,n),e.refine=(r,n)=>e.check(dg(r,n)),e.superRefine=r=>e.check(pg(r)),e.overwrite=r=>e.check(Kt(r)),e.optional=()=>eo(e),e.exactOptional=()=>Wf(e),e.nullable=()=>to(e),e.nullish=()=>eo(to(e)),e.nonoptional=r=>rg(e,r),e.array=()=>Ue(e),e.or=r=>Pe([e,r]),e.and=r=>Gf(e,r),e.transform=r=>ro(e,Jf(r)),e.default=r=>Qf(e,r),e.prefault=r=>tg(e,r),e.catch=r=>ag(e,r),e.pipe=r=>ro(e,r),e.readonly=()=>ig(e),e.describe=r=>{const n=e.clone();return ur.add(n,{description:r}),n},Object.defineProperty(e,"description",{get(){var r;return(r=ur.get(e))==null?void 0:r.description},configurable:!0}),e.meta=(...r)=>{if(r.length===0)return ur.get(e);const n=e.clone();return ur.add(n,r[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=r=>r(e),e)),mi=T("_ZodString",(e,t)=>{ea.init(e,t),de.init(e,t),e._zod.processJSONSchema=(n,a,o)=>Gs(e,n,a);const r=e._zod.bag;e.format=r.format??null,e.minLength=r.minimum??null,e.maxLength=r.maximum??null,e.regex=(...n)=>e.check(fp(...n)),e.includes=(...n)=>e.check(hp(...n)),e.startsWith=(...n)=>e.check(yp(...n)),e.endsWith=(...n)=>e.check(vp(...n)),e.min=(...n)=>e.check(Br(...n)),e.max=(...n)=>e.check(qs(...n)),e.length=(...n)=>e.check(Zs(...n)),e.nonempty=(...n)=>e.check(Br(1,...n)),e.lowercase=n=>e.check(gp(n)),e.uppercase=n=>e.check(mp(n)),e.trim=()=>e.check(wp()),e.normalize=(...n)=>e.check(_p(...n)),e.toLowerCase=()=>e.check(Tp()),e.toUpperCase=()=>e.check(bp()),e.slugify=()=>e.check(Ep())}),ff=T("ZodString",(e,t)=>{ea.init(e,t),mi.init(e,t),e.email=r=>e.check(Dd(gf,r)),e.url=r=>e.check(Ud(mf,r)),e.jwt=r=>e.check(tp(xf,r)),e.emoji=r=>e.check(jd(hf,r)),e.guid=r=>e.check(Ha(Xa,r)),e.uuid=r=>e.check($d(Lr,r)),e.uuidv4=r=>e.check(Md(Lr,r)),e.uuidv6=r=>e.check(Fd(Lr,r)),e.uuidv7=r=>e.check(Ld(Lr,r)),e.nanoid=r=>e.check(qd(yf,r)),e.guid=r=>e.check(Ha(Xa,r)),e.cuid=r=>e.check(Zd(vf,r)),e.cuid2=r=>e.check(Gd(_f,r)),e.ulid=r=>e.check(Bd(wf,r)),e.base64=r=>e.check(Xd(Nf,r)),e.base64url=r=>e.check(Qd(Of,r)),e.xid=r=>e.check(Vd(Tf,r)),e.ksuid=r=>e.check(Hd(bf,r)),e.ipv4=r=>e.check(Jd(Ef,r)),e.ipv6=r=>e.check(Yd(If,r)),e.cidrv4=r=>e.check(Wd(Sf,r)),e.cidrv6=r=>e.check(Kd(Af,r)),e.e164=r=>e.check(ep(Rf,r)),e.datetime=r=>e.check(Hp(r)),e.date=r=>e.check(Yp(r)),e.time=r=>e.check(Kp(r)),e.duration=r=>e.check(Qp(r))});function x(e){return zd(ff,e)}const ye=T("ZodStringFormat",(e,t)=>{me.init(e,t),mi.init(e,t)}),gf=T("ZodEmail",(e,t)=>{Fc.init(e,t),ye.init(e,t)}),Xa=T("ZodGUID",(e,t)=>{$c.init(e,t),ye.init(e,t)}),Lr=T("ZodUUID",(e,t)=>{Mc.init(e,t),ye.init(e,t)}),mf=T("ZodURL",(e,t)=>{Lc.init(e,t),ye.init(e,t)}),hf=T("ZodEmoji",(e,t)=>{Uc.init(e,t),ye.init(e,t)}),yf=T("ZodNanoID",(e,t)=>{jc.init(e,t),ye.init(e,t)}),vf=T("ZodCUID",(e,t)=>{qc.init(e,t),ye.init(e,t)}),_f=T("ZodCUID2",(e,t)=>{Zc.init(e,t),ye.init(e,t)}),wf=T("ZodULID",(e,t)=>{Gc.init(e,t),ye.init(e,t)}),Tf=T("ZodXID",(e,t)=>{Bc.init(e,t),ye.init(e,t)}),bf=T("ZodKSUID",(e,t)=>{Vc.init(e,t),ye.init(e,t)}),Ef=T("ZodIPv4",(e,t)=>{Kc.init(e,t),ye.init(e,t)}),If=T("ZodIPv6",(e,t)=>{Xc.init(e,t),ye.init(e,t)}),Sf=T("ZodCIDRv4",(e,t)=>{Qc.init(e,t),ye.init(e,t)}),Af=T("ZodCIDRv6",(e,t)=>{ed.init(e,t),ye.init(e,t)}),Nf=T("ZodBase64",(e,t)=>{td.init(e,t),ye.init(e,t)}),Of=T("ZodBase64URL",(e,t)=>{nd.init(e,t),ye.init(e,t)}),Rf=T("ZodE164",(e,t)=>{ad.init(e,t),ye.init(e,t)}),xf=T("ZodJWT",(e,t)=>{sd.init(e,t),ye.init(e,t)}),hi=T("ZodNumber",(e,t)=>{Ms.init(e,t),de.init(e,t),e._zod.processJSONSchema=(n,a,o)=>Bs(e,n,a),e.gt=(n,a)=>e.check(Ya(n,a)),e.gte=(n,a)=>e.check(bn(n,a)),e.min=(n,a)=>e.check(bn(n,a)),e.lt=(n,a)=>e.check(Ja(n,a)),e.lte=(n,a)=>e.check(Tn(n,a)),e.max=(n,a)=>e.check(Tn(n,a)),e.int=n=>e.check(Qa(n)),e.safe=n=>e.check(Qa(n)),e.positive=n=>e.check(Ya(0,n)),e.nonnegative=n=>e.check(bn(0,n)),e.negative=n=>e.check(Ja(0,n)),e.nonpositive=n=>e.check(Tn(0,n)),e.multipleOf=(n,a)=>e.check(Wa(n,a)),e.step=(n,a)=>e.check(Wa(n,a)),e.finite=()=>e;const r=e._zod.bag;e.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),e.isFinite=!0,e.format=r.format??null});function Wr(e){return sp(hi,e)}const kf=T("ZodNumberFormat",(e,t)=>{id.init(e,t),hi.init(e,t)});function Qa(e){return ip(kf,e)}const Pf=T("ZodBoolean",(e,t)=>{ld.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Vs(e,r,n)});function ra(e){return lp(Pf,e)}const Cf=T("ZodNull",(e,t)=>{ud.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Hs(e,r,n)});function zf(e){return up(Cf,e)}const Df=T("ZodAny",(e,t)=>{cd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Ys()});function ht(){return cp(Df)}const $f=T("ZodUnknown",(e,t)=>{dd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Ws()});function xt(){return dp($f)}const Mf=T("ZodNever",(e,t)=>{pd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Js(e,r,n)});function Ff(e){return pp(Mf,e)}const Lf=T("ZodArray",(e,t)=>{fd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ti(e,r,n,a),e.element=t.element,e.min=(r,n)=>e.check(Br(r,n)),e.nonempty=r=>e.check(Br(1,r)),e.max=(r,n)=>e.check(qs(r,n)),e.length=(r,n)=>e.check(Zs(r,n)),e.unwrap=()=>e.element});function Ue(e,t){return Ip(Lf,e,t)}const Uf=T("ZodObject",(e,t)=>{md.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ri(e,r,n,a),Y(e,"shape",()=>t.shape),e.keyof=()=>vi(Object.keys(e._zod.def.shape)),e.catchall=r=>e.clone({...e._zod.def,catchall:r}),e.passthrough=()=>e.clone({...e._zod.def,catchall:xt()}),e.loose=()=>e.clone({...e._zod.def,catchall:xt()}),e.strict=()=>e.clone({...e._zod.def,catchall:Ff()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=r=>Cu(e,r),e.safeExtend=r=>zu(e,r),e.merge=r=>Du(e,r),e.pick=r=>ku(e,r),e.omit=r=>Pu(e,r),e.partial=(...r)=>$u(_i,e,r[0]),e.required=(...r)=>Mu(wi,e,r[0])});function G(e,t){const r={type:"object",shape:e??{},...k(t)};return new Uf(r)}const yi=T("ZodUnion",(e,t)=>{Us.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ni(e,r,n,a),e.options=t.options});function Pe(e,t){return new yi({type:"union",options:e,...k(t)})}const jf=T("ZodDiscriminatedUnion",(e,t)=>{yi.init(e,t),hd.init(e,t)});function qf(e,t,r){return new jf({type:"union",options:t,discriminator:e,...k(r)})}const Zf=T("ZodIntersection",(e,t)=>{yd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ai(e,r,n,a)});function Gf(e,t){return new Zf({type:"intersection",left:e,right:t})}const Bf=T("ZodRecord",(e,t)=>{vd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>oi(e,r,n,a),e.keyType=t.keyType,e.valueType=t.valueType});function wt(e,t,r){return new Bf({type:"record",keyType:e,valueType:t,...k(r)})}const Ln=T("ZodEnum",(e,t)=>{_d.init(e,t),de.init(e,t),e._zod.processJSONSchema=(n,a,o)=>Ks(e,n,a),e.enum=t.entries,e.options=Object.values(t.entries);const r=new Set(Object.keys(t.entries));e.extract=(n,a)=>{const o={};for(const s of n)if(r.has(s))o[s]=t.entries[s];else throw new Error(`Key ${s} not found in enum`);return new Ln({...t,checks:[],...k(a),entries:o})},e.exclude=(n,a)=>{const o={...t.entries};for(const s of n)if(r.has(s))delete o[s];else throw new Error(`Key ${s} not found in enum`);return new Ln({...t,checks:[],...k(a),entries:o})}});function vi(e,t){const r=Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e;return new Ln({type:"enum",entries:r,...k(t)})}const Vf=T("ZodLiteral",(e,t)=>{wd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Xs(e,r,n),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function ee(e,t){return new Vf({type:"literal",values:Array.isArray(e)?e:[e],...k(t)})}const Hf=T("ZodTransform",(e,t)=>{Td.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ei(e,r),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Ts(e.constructor.name);r.addIssue=o=>{if(typeof o=="string")r.issues.push(mr(o,r.value,t));else{const s=o;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=r.value),s.inst??(s.inst=e),r.issues.push(mr(s))}};const a=t.transform(r.value,r);return a instanceof Promise?a.then(o=>(r.value=o,r)):(r.value=a,r)}});function Jf(e){return new Hf({type:"transform",transform:e})}const _i=T("ZodOptional",(e,t)=>{js.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ta(e,r,n,a),e.unwrap=()=>e._zod.def.innerType});function eo(e){return new _i({type:"optional",innerType:e})}const Yf=T("ZodExactOptional",(e,t)=>{bd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ta(e,r,n,a),e.unwrap=()=>e._zod.def.innerType});function Wf(e){return new Yf({type:"optional",innerType:e})}const Kf=T("ZodNullable",(e,t)=>{Ed.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>si(e,r,n,a),e.unwrap=()=>e._zod.def.innerType});function to(e){return new Kf({type:"nullable",innerType:e})}const Xf=T("ZodDefault",(e,t)=>{Id.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>li(e,r,n,a),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Qf(e,t){return new Xf({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():Ss(t)}})}const eg=T("ZodPrefault",(e,t)=>{Sd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ui(e,r,n,a),e.unwrap=()=>e._zod.def.innerType});function tg(e,t){return new eg({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():Ss(t)}})}const wi=T("ZodNonOptional",(e,t)=>{Ad.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ii(e,r,n,a),e.unwrap=()=>e._zod.def.innerType});function rg(e,t){return new wi({type:"nonoptional",innerType:e,...k(t)})}const ng=T("ZodCatch",(e,t)=>{Nd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ci(e,r,n,a),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function ag(e,t){return new ng({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}const og=T("ZodPipe",(e,t)=>{Od.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>di(e,r,n,a),e.in=t.in,e.out=t.out});function ro(e,t){return new og({type:"pipe",in:e,out:t})}const sg=T("ZodReadonly",(e,t)=>{Rd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>pi(e,r,n,a),e.unwrap=()=>e._zod.def.innerType});function ig(e){return new sg({type:"readonly",innerType:e})}const lg=T("ZodLazy",(e,t)=>{xd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>fi(e,r,n,a),e.unwrap=()=>e._zod.def.getter()});function ug(e){return new lg({type:"lazy",getter:e})}const na=T("ZodCustom",(e,t)=>{kd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Qs(e,r)});function cg(e,t){return Sp(na,e??(()=>!0),t)}function dg(e,t={}){return Ap(na,e,t)}function pg(e){return Np(e)}function Kr(e,t={}){const r=new na({type:"custom",check:"custom",fn:n=>n instanceof e,abort:!0,...k(t)});return r._zod.bag.Class=e,r._zod.check=n=>{n.value instanceof e||n.issues.push({code:"invalid_type",expected:e.name,input:n.value,inst:r,path:[...r._zod.def.path??[]]})},r}var hr;(function(e){e.assertEqual=a=>{};function t(a){}e.assertIs=t;function r(a){throw new Error}e.assertNever=r,e.arrayToEnum=a=>{const o={};for(const s of a)o[s]=s;return o},e.getValidEnumValues=a=>{const o=e.objectKeys(a).filter(i=>typeof a[a[i]]!="number"),s={};for(const i of o)s[i]=a[i];return e.objectValues(s)},e.objectValues=a=>e.objectKeys(a).map(function(o){return a[o]}),e.objectKeys=typeof Object.keys=="function"?a=>Object.keys(a):a=>{const o=[];for(const s in a)Object.prototype.hasOwnProperty.call(a,s)&&o.push(s);return o},e.find=(a,o)=>{for(const s of a)if(o(s))return s},e.isInteger=typeof Number.isInteger=="function"?a=>Number.isInteger(a):a=>typeof a=="number"&&Number.isFinite(a)&&Math.floor(a)===a;function n(a,o=" | "){return a.map(s=>typeof s=="string"?`'${s}'`:s).join(o)}e.joinValues=n,e.jsonStringifyReplacer=(a,o)=>typeof o=="bigint"?o.toString():o})(hr||(hr={}));var no;(function(e){e.mergeShapes=(t,r)=>({...t,...r})})(no||(no={}));hr.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]);hr.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class Xr extends Error{get errors(){return this.issues}constructor(t){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};const r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=t}format(t){const r=t||function(o){return o.message},n={_errors:[]},a=o=>{for(const s of o.issues)if(s.code==="invalid_union")s.unionErrors.map(a);else if(s.code==="invalid_return_type")a(s.returnTypeError);else if(s.code==="invalid_arguments")a(s.argumentsError);else if(s.path.length===0)n._errors.push(r(s));else{let i=n,l=0;for(;l<s.path.length;){const u=s.path[l];l===s.path.length-1?(i[u]=i[u]||{_errors:[]},i[u]._errors.push(r(s))):i[u]=i[u]||{_errors:[]},i=i[u],l++}}};return a(this),n}static assert(t){if(!(t instanceof Xr))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,hr.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(t=r=>r.message){const r=Object.create(null),n=[];for(const a of this.issues)if(a.path.length>0){const o=a.path[0];r[o]=r[o]||[],r[o].push(t(a))}else n.push(t(a));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}}Xr.create=e=>new Xr(e);var ao;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t==null?void 0:t.message})(ao||(ao={}));var q;(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(q||(q={}));class oo extends Error{constructor(t,r){super(t),this.name="ParseError",this.type=r.type,this.field=r.field,this.value=r.value,this.line=r.line}}function En(e){}function fg(e){if(typeof e=="function")throw new TypeError("`callbacks` must be an object, got a function instead. Did you mean `{onEvent: fn}`?");const{onEvent:t=En,onError:r=En,onRetry:n=En,onComment:a}=e;let o="",s=!0,i,l="",u="";function c(w){const I=s?w.replace(/^\xEF\xBB\xBF/,""):w,[P,C]=gg(`${o}${I}`);for(const h of P)p(h);o=C,s=!1}function p(w){if(w===""){v();return}if(w.startsWith(":")){a&&a(w.slice(w.startsWith(": ")?2:1));return}const I=w.indexOf(":");if(I!==-1){const P=w.slice(0,I),C=w[I+1]===" "?2:1,h=w.slice(I+C);d(P,h,w);return}d(w,"",w)}function d(w,I,P){switch(w){case"event":u=I;break;case"data":l=`${l}${I}
|
|
42
|
+
`;break;case"id":i=I.includes("\0")?void 0:I;break;case"retry":/^\d+$/.test(I)?n(parseInt(I,10)):r(new oo(`Invalid \`retry\` value: "${I}"`,{type:"invalid-retry",value:I,line:P}));break;default:r(new oo(`Unknown field "${w.length>20?`${w.slice(0,20)}…`:w}"`,{type:"unknown-field",field:w,value:I,line:P}));break}}function v(){l.length>0&&t({id:i,event:u||void 0,data:l.endsWith(`
|
|
43
|
+
`)?l.slice(0,-1):l}),i=void 0,l="",u=""}function E(w={}){o&&w.consume&&p(o),s=!0,i=void 0,l="",u="",o=""}return{feed:c,reset:E}}function gg(e){const t=[];let r="",n=0;for(;n<e.length;){const a=e.indexOf("\r",n),o=e.indexOf(`
|
|
44
44
|
`,n);let s=-1;if(a!==-1&&o!==-1?s=Math.min(a,o):a!==-1?a===e.length-1?s=-1:s=a:o!==-1&&(s=o),s===-1){r=e.slice(n);break}else{const i=e.slice(n,s);t.push(i),n=s+1,e[n-1]==="\r"&&e[n]===`
|
|
45
|
-
`&&n++}}return[t,r]}class gg extends TransformStream{constructor({onError:t,onRetry:r,onComment:n}={}){let a;super({start(o){a=pg({onEvent:s=>{o.enqueue(s)},onError(s){t==="terminate"?o.error(s):typeof t=="function"&&t(s)},onRetry:r,onComment:n})},transform(o){a.feed(o)}})}}function Xr(...e){return e.reduce((t,r)=>({...t,...r??{}}),{})}async function mg(e,t){if(e==null)return Promise.resolve();const r=t==null?void 0:t.abortSignal;return new Promise((n,a)=>{if(r!=null&&r.aborted){a(oo());return}const o=setTimeout(()=>{s(),n()},e),s=()=>{clearTimeout(o),r==null||r.removeEventListener("abort",i)},i=()=>{s(),a(oo())};r==null||r.addEventListener("abort",i)})}function oo(){return new DOMException("Delay was aborted","AbortError")}var ir=class{constructor(){this.status={type:"pending"},this._resolve=void 0,this._reject=void 0}get promise(){return this._promise?this._promise:(this._promise=new Promise((e,t)=>{this.status.type==="resolved"?e(this.status.value):this.status.type==="rejected"&&t(this.status.error),this._resolve=e,this._reject=t}),this._promise)}resolve(e){var t;this.status={type:"resolved",value:e},this._promise&&((t=this._resolve)==null||t.call(this,e))}reject(e){var t;this.status={type:"rejected",error:e},this._promise&&((t=this._reject)==null||t.call(this,e))}isResolved(){return this.status.type==="resolved"}isRejected(){return this.status.type==="rejected"}isPending(){return this.status.type==="pending"}};function Sr(e){return Object.fromEntries([...e.headers])}var{btoa:hg,atob:yg}=globalThis;function na(e){const t=e.replace(/-/g,"+").replace(/_/g,"/"),r=yg(t);return Uint8Array.from(r,n=>n.codePointAt(0))}function Qr(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCodePoint(e[r]);return hg(t)}var wi="AI_DownloadError",Ti=`vercel.ai.error.${wi}`,vg=Symbol.for(Ti),so,io,En=class extends(io=H,so=vg,io){constructor({url:e,statusCode:t,statusText:r,cause:n,message:a=n==null?`Failed to download ${e}: ${t} ${r}`:`Failed to download ${e}: ${n}`}){super({name:wi,message:a,cause:n}),this[so]=!0,this.url=e,this.statusCode=t,this.statusText=r}static isInstance(e){return H.hasMarker(e,Ti)}},Nr=({prefix:e,size:t=16,alphabet:r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:n="-"}={})=>{const a=()=>{const o=r.length,s=new Array(t);for(let i=0;i<t;i++)s[i]=r[Math.random()*o|0];return s.join("")};if(e==null)return a;if(r.includes(n))throw new wu({argument:"separator",message:`The separator "${n}" must not be part of the alphabet "${r}".`});return()=>`${e}${n}${a()}`};Nr();function aa(e){return e==null?"unknown error":typeof e=="string"?e:e instanceof Error?e.message:JSON.stringify(e)}function kt(e){return(e instanceof Error||e instanceof DOMException)&&(e.name==="AbortError"||e.name==="ResponseAborted"||e.name==="TimeoutError")}var _g=["fetch failed","failed to fetch"];function bi({error:e,url:t,requestBodyValues:r}){if(kt(e))return e;if(e instanceof TypeError&&_g.includes(e.message.toLowerCase())){const n=e.cause;if(n!=null)return new $e({message:`Cannot connect to API: ${n.message}`,cause:n,url:t,requestBodyValues:r,isRetryable:!0})}return e}function oa(e=globalThis){var t,r,n;return e.window?"runtime/browser":(t=e.navigator)!=null&&t.userAgent?`runtime/${e.navigator.userAgent.toLowerCase()}`:(n=(r=e.process)==null?void 0:r.versions)!=null&&n.node?`runtime/node.js/${e.process.version.substring(0)}`:e.EdgeRuntime?"runtime/vercel-edge":"runtime/unknown"}function wg(e){if(e==null)return{};const t={};if(e instanceof Headers)e.forEach((r,n)=>{t[n.toLowerCase()]=r});else{Array.isArray(e)||(e=Object.entries(e));for(const[r,n]of e)n!=null&&(t[r.toLowerCase()]=n)}return t}function Ar(e,...t){const r=new Headers(wg(e)),n=r.get("user-agent")||"";return r.set("user-agent",[n,...t].filter(Boolean).join(" ")),Object.fromEntries(r.entries())}var Ei="4.0.3",Tg=()=>globalThis.fetch,lo=async({url:e,headers:t={},successfulResponseHandler:r,failedResponseHandler:n,abortSignal:a,fetch:o=Tg()})=>{try{const s=await o(e,{method:"GET",headers:Ar(t,`ai-sdk/provider-utils/${Ei}`,oa()),signal:a}),i=Sr(s);if(!s.ok){let l;try{l=await n({response:s,url:e,requestBodyValues:{}})}catch(u){throw kt(u)||$e.isInstance(u)?u:new $e({message:"Failed to process error response",cause:u,statusCode:s.status,url:e,responseHeaders:i,requestBodyValues:{}})}throw l.value}try{return await r({response:s,url:e,requestBodyValues:{}})}catch(l){throw l instanceof Error&&(kt(l)||$e.isInstance(l))?l:new $e({message:"Failed to process successful response",cause:l,statusCode:s.status,url:e,responseHeaders:i,requestBodyValues:{}})}}catch(s){throw bi({error:s,url:e,requestBodyValues:{}})}};function bg({mediaType:e,url:t,supportedUrls:r}){return t=t.toLowerCase(),e=e.toLowerCase(),Object.entries(r).map(([n,a])=>{const o=n.toLowerCase();return o==="*"||o==="*/*"?{mediaTypePrefix:"",regexes:a}:{mediaTypePrefix:o.replace(/\*/,""),regexes:a}}).filter(({mediaTypePrefix:n})=>e.startsWith(n)).flatMap(({regexes:n})=>n).some(n=>n.test(t))}function jr({settingValue:e,environmentVariableName:t}){if(typeof e=="string")return e;if(!(e!=null||typeof process>"u")&&(e=process.env[t],!(e==null||typeof e!="string")))return e}var Eg=/"__proto__"\s*:/,Ig=/"constructor"\s*:/;function uo(e){const t=JSON.parse(e);return t===null||typeof t!="object"||Eg.test(e)===!1&&Ig.test(e)===!1?t:Sg(t)}function Sg(e){let t=[e];for(;t.length;){const r=t;t=[];for(const n of r){if(Object.prototype.hasOwnProperty.call(n,"__proto__"))throw new SyntaxError("Object contains forbidden prototype property");if(Object.prototype.hasOwnProperty.call(n,"constructor")&&Object.prototype.hasOwnProperty.call(n.constructor,"prototype"))throw new SyntaxError("Object contains forbidden prototype property");for(const a in n){const o=n[a];o&&typeof o=="object"&&t.push(o)}}}return e}function Ii(e){const{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch{return uo(e)}try{return uo(e)}finally{Error.stackTraceLimit=t}}function Si(e){if(e.type==="object"||Array.isArray(e.type)&&e.type.includes("object")){e.additionalProperties=!1;const{properties:r}=e;if(r!=null)for(const n of Object.keys(r))r[n]=Nt(r[n])}e.items!=null&&(e.items=Array.isArray(e.items)?e.items.map(Nt):Nt(e.items)),e.anyOf!=null&&(e.anyOf=e.anyOf.map(Nt)),e.allOf!=null&&(e.allOf=e.allOf.map(Nt)),e.oneOf!=null&&(e.oneOf=e.oneOf.map(Nt));const{definitions:t}=e;if(t!=null)for(const r of Object.keys(t))t[r]=Nt(t[r]);return e}function Nt(e){return typeof e=="boolean"?e:Si(e)}var Ng=Symbol("Let zodToJsonSchema decide on which parser to use"),co={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"},Ag=e=>typeof e=="string"?{...co,name:e}:{...co,...e};function je(){return{}}function Og(e,t){var r,n,a;const o={type:"array"};return(r=e.type)!=null&&r._def&&((a=(n=e.type)==null?void 0:n._def)==null?void 0:a.typeName)!==q.ZodAny&&(o.items=se(e.type._def,{...t,currentPath:[...t.currentPath,"items"]})),e.minLength&&(o.minItems=e.minLength.value),e.maxLength&&(o.maxItems=e.maxLength.value),e.exactLength&&(o.minItems=e.exactLength.value,o.maxItems=e.exactLength.value),o}function xg(e){const t={type:"integer",format:"int64"};if(!e.checks)return t;for(const r of e.checks)switch(r.kind){case"min":r.inclusive?t.minimum=r.value:t.exclusiveMinimum=r.value;break;case"max":r.inclusive?t.maximum=r.value:t.exclusiveMaximum=r.value;break;case"multipleOf":t.multipleOf=r.value;break}return t}function Rg(){return{type:"boolean"}}function Ni(e,t){return se(e.type._def,t)}var kg=(e,t)=>se(e.innerType._def,t);function Ai(e,t,r){const n=r??t.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((a,o)=>Ai(e,t,a))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return Pg(e)}}var Pg=e=>{const t={type:"integer",format:"unix-time"};for(const r of e.checks)switch(r.kind){case"min":t.minimum=r.value;break;case"max":t.maximum=r.value;break}return t};function Cg(e,t){return{...se(e.innerType._def,t),default:e.defaultValue()}}function Dg(e,t){return t.effectStrategy==="input"?se(e.schema._def,t):je()}function zg(e){return{type:"string",enum:Array.from(e.values)}}var $g=e=>"type"in e&&e.type==="string"?!1:"allOf"in e;function Mg(e,t){const r=[se(e.left._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),se(e.right._def,{...t,currentPath:[...t.currentPath,"allOf","1"]})].filter(a=>!!a),n=[];return r.forEach(a=>{if($g(a))n.push(...a.allOf);else{let o=a;if("additionalProperties"in a&&a.additionalProperties===!1){const{additionalProperties:s,...i}=a;o=i}n.push(o)}}),n.length?{allOf:n}:void 0}function Fg(e){const t=typeof e.value;return t!=="bigint"&&t!=="number"&&t!=="boolean"&&t!=="string"?{type:Array.isArray(e.value)?"array":"object"}:{type:t==="bigint"?"integer":t,const:e.value}}var In=void 0,He={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(In===void 0&&(In=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),In),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?: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])$/,ipv4Cidr:/^(?:(?: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])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,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}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function Oi(e,t){const r={type:"string"};if(e.checks)for(const n of e.checks)switch(n.kind){case"min":r.minLength=typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value;break;case"max":r.maxLength=typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value;break;case"email":switch(t.emailStrategy){case"format:email":Je(r,"email",n.message,t);break;case"format:idn-email":Je(r,"idn-email",n.message,t);break;case"pattern:zod":De(r,He.email,n.message,t);break}break;case"url":Je(r,"uri",n.message,t);break;case"uuid":Je(r,"uuid",n.message,t);break;case"regex":De(r,n.regex,n.message,t);break;case"cuid":De(r,He.cuid,n.message,t);break;case"cuid2":De(r,He.cuid2,n.message,t);break;case"startsWith":De(r,RegExp(`^${Sn(n.value,t)}`),n.message,t);break;case"endsWith":De(r,RegExp(`${Sn(n.value,t)}$`),n.message,t);break;case"datetime":Je(r,"date-time",n.message,t);break;case"date":Je(r,"date",n.message,t);break;case"time":Je(r,"time",n.message,t);break;case"duration":Je(r,"duration",n.message,t);break;case"length":r.minLength=typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,r.maxLength=typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value;break;case"includes":{De(r,RegExp(Sn(n.value,t)),n.message,t);break}case"ip":{n.version!=="v6"&&Je(r,"ipv4",n.message,t),n.version!=="v4"&&Je(r,"ipv6",n.message,t);break}case"base64url":De(r,He.base64url,n.message,t);break;case"jwt":De(r,He.jwt,n.message,t);break;case"cidr":{n.version!=="v6"&&De(r,He.ipv4Cidr,n.message,t),n.version!=="v4"&&De(r,He.ipv6Cidr,n.message,t);break}case"emoji":De(r,He.emoji(),n.message,t);break;case"ulid":{De(r,He.ulid,n.message,t);break}case"base64":{switch(t.base64Strategy){case"format:binary":{Je(r,"binary",n.message,t);break}case"contentEncoding:base64":{r.contentEncoding="base64";break}case"pattern:zod":{De(r,He.base64,n.message,t);break}}break}case"nanoid":De(r,He.nanoid,n.message,t)}return r}function Sn(e,t){return t.patternStrategy==="escape"?Ug(e):e}var Lg=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Ug(e){let t="";for(let r=0;r<e.length;r++)Lg.has(e[r])||(t+="\\"),t+=e[r];return t}function Je(e,t,r,n){var a;e.format||(a=e.anyOf)!=null&&a.some(o=>o.format)?(e.anyOf||(e.anyOf=[]),e.format&&(e.anyOf.push({format:e.format}),delete e.format),e.anyOf.push({format:t,...r&&n.errorMessages&&{errorMessage:{format:r}}})):e.format=t}function De(e,t,r,n){var a;e.pattern||(a=e.allOf)!=null&&a.some(o=>o.pattern)?(e.allOf||(e.allOf=[]),e.pattern&&(e.allOf.push({pattern:e.pattern}),delete e.pattern),e.allOf.push({pattern:po(t,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):e.pattern=po(t,n)}function po(e,t){var r;if(!t.applyRegexFlags||!e.flags)return e.source;const n={i:e.flags.includes("i"),m:e.flags.includes("m"),s:e.flags.includes("s")},a=n.i?e.source.toLowerCase():e.source;let o="",s=!1,i=!1,l=!1;for(let u=0;u<a.length;u++){if(s){o+=a[u],s=!1;continue}if(n.i){if(i){if(a[u].match(/[a-z]/)){l?(o+=a[u],o+=`${a[u-2]}-${a[u]}`.toUpperCase(),l=!1):a[u+1]==="-"&&((r=a[u+2])!=null&&r.match(/[a-z]/))?(o+=a[u],l=!0):o+=`${a[u]}${a[u].toUpperCase()}`;continue}}else if(a[u].match(/[a-z]/)){o+=`[${a[u]}${a[u].toUpperCase()}]`;continue}}if(n.m){if(a[u]==="^"){o+=`(^|(?<=[\r
|
|
45
|
+
`&&n++}}return[t,r]}class mg extends TransformStream{constructor({onError:t,onRetry:r,onComment:n}={}){let a;super({start(o){a=fg({onEvent:s=>{o.enqueue(s)},onError(s){t==="terminate"?o.error(s):typeof t=="function"&&t(s)},onRetry:r,onComment:n})},transform(o){a.feed(o)}})}}function Qr(...e){return e.reduce((t,r)=>({...t,...r??{}}),{})}async function hg(e,t){if(e==null)return Promise.resolve();const r=t==null?void 0:t.abortSignal;return new Promise((n,a)=>{if(r!=null&&r.aborted){a(so());return}const o=setTimeout(()=>{s(),n()},e),s=()=>{clearTimeout(o),r==null||r.removeEventListener("abort",i)},i=()=>{s(),a(so())};r==null||r.addEventListener("abort",i)})}function so(){return new DOMException("Delay was aborted","AbortError")}var ir=class{constructor(){this.status={type:"pending"},this._resolve=void 0,this._reject=void 0}get promise(){return this._promise?this._promise:(this._promise=new Promise((e,t)=>{this.status.type==="resolved"?e(this.status.value):this.status.type==="rejected"&&t(this.status.error),this._resolve=e,this._reject=t}),this._promise)}resolve(e){var t;this.status={type:"resolved",value:e},this._promise&&((t=this._resolve)==null||t.call(this,e))}reject(e){var t;this.status={type:"rejected",error:e},this._promise&&((t=this._reject)==null||t.call(this,e))}isResolved(){return this.status.type==="resolved"}isRejected(){return this.status.type==="rejected"}isPending(){return this.status.type==="pending"}};function Ar(e){return Object.fromEntries([...e.headers])}var{btoa:yg,atob:vg}=globalThis;function aa(e){const t=e.replace(/-/g,"+").replace(/_/g,"/"),r=vg(t);return Uint8Array.from(r,n=>n.codePointAt(0))}function en(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCodePoint(e[r]);return yg(t)}var Ti="AI_DownloadError",bi=`vercel.ai.error.${Ti}`,_g=Symbol.for(bi),io,lo,In=class extends(lo=H,io=_g,lo){constructor({url:e,statusCode:t,statusText:r,cause:n,message:a=n==null?`Failed to download ${e}: ${t} ${r}`:`Failed to download ${e}: ${n}`}){super({name:Ti,message:a,cause:n}),this[io]=!0,this.url=e,this.statusCode=t,this.statusText=r}static isInstance(e){return H.hasMarker(e,bi)}},Nr=({prefix:e,size:t=16,alphabet:r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:n="-"}={})=>{const a=()=>{const o=r.length,s=new Array(t);for(let i=0;i<t;i++)s[i]=r[Math.random()*o|0];return s.join("")};if(e==null)return a;if(r.includes(n))throw new Tu({argument:"separator",message:`The separator "${n}" must not be part of the alphabet "${r}".`});return()=>`${e}${n}${a()}`};Nr();function oa(e){return e==null?"unknown error":typeof e=="string"?e:e instanceof Error?e.message:JSON.stringify(e)}function kt(e){return(e instanceof Error||e instanceof DOMException)&&(e.name==="AbortError"||e.name==="ResponseAborted"||e.name==="TimeoutError")}var wg=["fetch failed","failed to fetch"];function Ei({error:e,url:t,requestBodyValues:r}){if(kt(e))return e;if(e instanceof TypeError&&wg.includes(e.message.toLowerCase())){const n=e.cause;if(n!=null)return new $e({message:`Cannot connect to API: ${n.message}`,cause:n,url:t,requestBodyValues:r,isRetryable:!0})}return e}function sa(e=globalThis){var t,r,n;return e.window?"runtime/browser":(t=e.navigator)!=null&&t.userAgent?`runtime/${e.navigator.userAgent.toLowerCase()}`:(n=(r=e.process)==null?void 0:r.versions)!=null&&n.node?`runtime/node.js/${e.process.version.substring(0)}`:e.EdgeRuntime?"runtime/vercel-edge":"runtime/unknown"}function Tg(e){if(e==null)return{};const t={};if(e instanceof Headers)e.forEach((r,n)=>{t[n.toLowerCase()]=r});else{Array.isArray(e)||(e=Object.entries(e));for(const[r,n]of e)n!=null&&(t[r.toLowerCase()]=n)}return t}function Or(e,...t){const r=new Headers(Tg(e)),n=r.get("user-agent")||"";return r.set("user-agent",[n,...t].filter(Boolean).join(" ")),Object.fromEntries(r.entries())}var Ii="4.0.3",bg=()=>globalThis.fetch,uo=async({url:e,headers:t={},successfulResponseHandler:r,failedResponseHandler:n,abortSignal:a,fetch:o=bg()})=>{try{const s=await o(e,{method:"GET",headers:Or(t,`ai-sdk/provider-utils/${Ii}`,sa()),signal:a}),i=Ar(s);if(!s.ok){let l;try{l=await n({response:s,url:e,requestBodyValues:{}})}catch(u){throw kt(u)||$e.isInstance(u)?u:new $e({message:"Failed to process error response",cause:u,statusCode:s.status,url:e,responseHeaders:i,requestBodyValues:{}})}throw l.value}try{return await r({response:s,url:e,requestBodyValues:{}})}catch(l){throw l instanceof Error&&(kt(l)||$e.isInstance(l))?l:new $e({message:"Failed to process successful response",cause:l,statusCode:s.status,url:e,responseHeaders:i,requestBodyValues:{}})}}catch(s){throw Ei({error:s,url:e,requestBodyValues:{}})}};function Eg({mediaType:e,url:t,supportedUrls:r}){return t=t.toLowerCase(),e=e.toLowerCase(),Object.entries(r).map(([n,a])=>{const o=n.toLowerCase();return o==="*"||o==="*/*"?{mediaTypePrefix:"",regexes:a}:{mediaTypePrefix:o.replace(/\*/,""),regexes:a}}).filter(({mediaTypePrefix:n})=>e.startsWith(n)).flatMap(({regexes:n})=>n).some(n=>n.test(t))}function qr({settingValue:e,environmentVariableName:t}){if(typeof e=="string")return e;if(!(e!=null||typeof process>"u")&&(e=process.env[t],!(e==null||typeof e!="string")))return e}var Ig=/"__proto__"\s*:/,Sg=/"constructor"\s*:/;function co(e){const t=JSON.parse(e);return t===null||typeof t!="object"||Ig.test(e)===!1&&Sg.test(e)===!1?t:Ag(t)}function Ag(e){let t=[e];for(;t.length;){const r=t;t=[];for(const n of r){if(Object.prototype.hasOwnProperty.call(n,"__proto__"))throw new SyntaxError("Object contains forbidden prototype property");if(Object.prototype.hasOwnProperty.call(n,"constructor")&&Object.prototype.hasOwnProperty.call(n.constructor,"prototype"))throw new SyntaxError("Object contains forbidden prototype property");for(const a in n){const o=n[a];o&&typeof o=="object"&&t.push(o)}}}return e}function Si(e){const{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch{return co(e)}try{return co(e)}finally{Error.stackTraceLimit=t}}function Ai(e){if(e.type==="object"||Array.isArray(e.type)&&e.type.includes("object")){e.additionalProperties=!1;const{properties:r}=e;if(r!=null)for(const n of Object.keys(r))r[n]=At(r[n])}e.items!=null&&(e.items=Array.isArray(e.items)?e.items.map(At):At(e.items)),e.anyOf!=null&&(e.anyOf=e.anyOf.map(At)),e.allOf!=null&&(e.allOf=e.allOf.map(At)),e.oneOf!=null&&(e.oneOf=e.oneOf.map(At));const{definitions:t}=e;if(t!=null)for(const r of Object.keys(t))t[r]=At(t[r]);return e}function At(e){return typeof e=="boolean"?e:Ai(e)}var Ng=Symbol("Let zodToJsonSchema decide on which parser to use"),po={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"},Og=e=>typeof e=="string"?{...po,name:e}:{...po,...e};function je(){return{}}function Rg(e,t){var r,n,a;const o={type:"array"};return(r=e.type)!=null&&r._def&&((a=(n=e.type)==null?void 0:n._def)==null?void 0:a.typeName)!==q.ZodAny&&(o.items=oe(e.type._def,{...t,currentPath:[...t.currentPath,"items"]})),e.minLength&&(o.minItems=e.minLength.value),e.maxLength&&(o.maxItems=e.maxLength.value),e.exactLength&&(o.minItems=e.exactLength.value,o.maxItems=e.exactLength.value),o}function xg(e){const t={type:"integer",format:"int64"};if(!e.checks)return t;for(const r of e.checks)switch(r.kind){case"min":r.inclusive?t.minimum=r.value:t.exclusiveMinimum=r.value;break;case"max":r.inclusive?t.maximum=r.value:t.exclusiveMaximum=r.value;break;case"multipleOf":t.multipleOf=r.value;break}return t}function kg(){return{type:"boolean"}}function Ni(e,t){return oe(e.type._def,t)}var Pg=(e,t)=>oe(e.innerType._def,t);function Oi(e,t,r){const n=r??t.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((a,o)=>Oi(e,t,a))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return Cg(e)}}var Cg=e=>{const t={type:"integer",format:"unix-time"};for(const r of e.checks)switch(r.kind){case"min":t.minimum=r.value;break;case"max":t.maximum=r.value;break}return t};function zg(e,t){return{...oe(e.innerType._def,t),default:e.defaultValue()}}function Dg(e,t){return t.effectStrategy==="input"?oe(e.schema._def,t):je()}function $g(e){return{type:"string",enum:Array.from(e.values)}}var Mg=e=>"type"in e&&e.type==="string"?!1:"allOf"in e;function Fg(e,t){const r=[oe(e.left._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),oe(e.right._def,{...t,currentPath:[...t.currentPath,"allOf","1"]})].filter(a=>!!a),n=[];return r.forEach(a=>{if(Mg(a))n.push(...a.allOf);else{let o=a;if("additionalProperties"in a&&a.additionalProperties===!1){const{additionalProperties:s,...i}=a;o=i}n.push(o)}}),n.length?{allOf:n}:void 0}function Lg(e){const t=typeof e.value;return t!=="bigint"&&t!=="number"&&t!=="boolean"&&t!=="string"?{type:Array.isArray(e.value)?"array":"object"}:{type:t==="bigint"?"integer":t,const:e.value}}var Sn=void 0,He={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(Sn===void 0&&(Sn=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Sn),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?: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])$/,ipv4Cidr:/^(?:(?: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])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,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}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function Ri(e,t){const r={type:"string"};if(e.checks)for(const n of e.checks)switch(n.kind){case"min":r.minLength=typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value;break;case"max":r.maxLength=typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value;break;case"email":switch(t.emailStrategy){case"format:email":Je(r,"email",n.message,t);break;case"format:idn-email":Je(r,"idn-email",n.message,t);break;case"pattern:zod":ze(r,He.email,n.message,t);break}break;case"url":Je(r,"uri",n.message,t);break;case"uuid":Je(r,"uuid",n.message,t);break;case"regex":ze(r,n.regex,n.message,t);break;case"cuid":ze(r,He.cuid,n.message,t);break;case"cuid2":ze(r,He.cuid2,n.message,t);break;case"startsWith":ze(r,RegExp(`^${An(n.value,t)}`),n.message,t);break;case"endsWith":ze(r,RegExp(`${An(n.value,t)}$`),n.message,t);break;case"datetime":Je(r,"date-time",n.message,t);break;case"date":Je(r,"date",n.message,t);break;case"time":Je(r,"time",n.message,t);break;case"duration":Je(r,"duration",n.message,t);break;case"length":r.minLength=typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,r.maxLength=typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value;break;case"includes":{ze(r,RegExp(An(n.value,t)),n.message,t);break}case"ip":{n.version!=="v6"&&Je(r,"ipv4",n.message,t),n.version!=="v4"&&Je(r,"ipv6",n.message,t);break}case"base64url":ze(r,He.base64url,n.message,t);break;case"jwt":ze(r,He.jwt,n.message,t);break;case"cidr":{n.version!=="v6"&&ze(r,He.ipv4Cidr,n.message,t),n.version!=="v4"&&ze(r,He.ipv6Cidr,n.message,t);break}case"emoji":ze(r,He.emoji(),n.message,t);break;case"ulid":{ze(r,He.ulid,n.message,t);break}case"base64":{switch(t.base64Strategy){case"format:binary":{Je(r,"binary",n.message,t);break}case"contentEncoding:base64":{r.contentEncoding="base64";break}case"pattern:zod":{ze(r,He.base64,n.message,t);break}}break}case"nanoid":ze(r,He.nanoid,n.message,t)}return r}function An(e,t){return t.patternStrategy==="escape"?jg(e):e}var Ug=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function jg(e){let t="";for(let r=0;r<e.length;r++)Ug.has(e[r])||(t+="\\"),t+=e[r];return t}function Je(e,t,r,n){var a;e.format||(a=e.anyOf)!=null&&a.some(o=>o.format)?(e.anyOf||(e.anyOf=[]),e.format&&(e.anyOf.push({format:e.format}),delete e.format),e.anyOf.push({format:t,...r&&n.errorMessages&&{errorMessage:{format:r}}})):e.format=t}function ze(e,t,r,n){var a;e.pattern||(a=e.allOf)!=null&&a.some(o=>o.pattern)?(e.allOf||(e.allOf=[]),e.pattern&&(e.allOf.push({pattern:e.pattern}),delete e.pattern),e.allOf.push({pattern:fo(t,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):e.pattern=fo(t,n)}function fo(e,t){var r;if(!t.applyRegexFlags||!e.flags)return e.source;const n={i:e.flags.includes("i"),m:e.flags.includes("m"),s:e.flags.includes("s")},a=n.i?e.source.toLowerCase():e.source;let o="",s=!1,i=!1,l=!1;for(let u=0;u<a.length;u++){if(s){o+=a[u],s=!1;continue}if(n.i){if(i){if(a[u].match(/[a-z]/)){l?(o+=a[u],o+=`${a[u-2]}-${a[u]}`.toUpperCase(),l=!1):a[u+1]==="-"&&((r=a[u+2])!=null&&r.match(/[a-z]/))?(o+=a[u],l=!0):o+=`${a[u]}${a[u].toUpperCase()}`;continue}}else if(a[u].match(/[a-z]/)){o+=`[${a[u]}${a[u].toUpperCase()}]`;continue}}if(n.m){if(a[u]==="^"){o+=`(^|(?<=[\r
|
|
46
46
|
]))`;continue}else if(a[u]==="$"){o+=`($|(?=[\r
|
|
47
47
|
]))`;continue}}if(n.s&&a[u]==="."){o+=i?`${a[u]}\r
|
|
48
48
|
`:`[${a[u]}\r
|
|
49
|
-
]`;continue}o+=a[u],a[u]==="\\"?s=!0:i&&a[u]==="]"?i=!1:!i&&a[u]==="["&&(i=!0)}try{new RegExp(o)}catch{return console.warn(`Could not convert regex pattern at ${t.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return o}function xi(e,t){var r,n,a,o,s,i;const l={type:"object",additionalProperties:(r=se(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]}))!=null?r:t.allowedAdditionalProperties};if(((n=e.keyType)==null?void 0:n._def.typeName)===q.ZodString&&((a=e.keyType._def.checks)!=null&&a.length)){const{type:u,...c}=Oi(e.keyType._def,t);return{...l,propertyNames:c}}else{if(((o=e.keyType)==null?void 0:o._def.typeName)===q.ZodEnum)return{...l,propertyNames:{enum:e.keyType._def.values}};if(((s=e.keyType)==null?void 0:s._def.typeName)===q.ZodBranded&&e.keyType._def.type._def.typeName===q.ZodString&&((i=e.keyType._def.type._def.checks)!=null&&i.length)){const{type:u,...c}=Ni(e.keyType._def,t);return{...l,propertyNames:c}}}return l}function jg(e,t){if(t.mapStrategy==="record")return xi(e,t);const r=se(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||je(),n=se(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||je();return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function qg(e){const t=e.values,n=Object.keys(e.values).filter(o=>typeof t[t[o]]!="number").map(o=>t[o]),a=Array.from(new Set(n.map(o=>typeof o)));return{type:a.length===1?a[0]==="string"?"string":"number":["string","number"],enum:n}}function Zg(){return{not:je()}}function Gg(){return{type:"null"}}var Ln={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Bg(e,t){const r=e.options instanceof Map?Array.from(e.options.values()):e.options;if(r.every(n=>n._def.typeName in Ln&&(!n._def.checks||!n._def.checks.length))){const n=r.reduce((a,o)=>{const s=Ln[o._def.typeName];return s&&!a.includes(s)?[...a,s]:a},[]);return{type:n.length>1?n:n[0]}}else if(r.every(n=>n._def.typeName==="ZodLiteral"&&!n.description)){const n=r.reduce((a,o)=>{const s=typeof o._def.value;switch(s){case"string":case"number":case"boolean":return[...a,s];case"bigint":return[...a,"integer"];case"object":if(o._def.value===null)return[...a,"null"];case"symbol":case"undefined":case"function":default:return a}},[]);if(n.length===r.length){const a=n.filter((o,s,i)=>i.indexOf(o)===s);return{type:a.length>1?a:a[0],enum:r.reduce((o,s)=>o.includes(s._def.value)?o:[...o,s._def.value],[])}}}else if(r.every(n=>n._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((n,a)=>[...n,...a._def.values.filter(o=>!n.includes(o))],[])};return Vg(e,t)}var Vg=(e,t)=>{const r=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((n,a)=>se(n._def,{...t,currentPath:[...t.currentPath,"anyOf",`${a}`]})).filter(n=>!!n&&(!t.strictUnions||typeof n=="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0};function Hg(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[Ln[e.innerType._def.typeName],"null"]};const r=se(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function Jg(e){const t={type:"number"};if(!e.checks)return t;for(const r of e.checks)switch(r.kind){case"int":t.type="integer";break;case"min":r.inclusive?t.minimum=r.value:t.exclusiveMinimum=r.value;break;case"max":r.inclusive?t.maximum=r.value:t.exclusiveMaximum=r.value;break;case"multipleOf":t.multipleOf=r.value;break}return t}function Yg(e,t){const r={type:"object",properties:{}},n=[],a=e.shape();for(const s in a){let i=a[s];if(i===void 0||i._def===void 0)continue;const l=Kg(i),u=se(i._def,{...t,currentPath:[...t.currentPath,"properties",s],propertyPath:[...t.currentPath,"properties",s]});u!==void 0&&(r.properties[s]=u,l||n.push(s))}n.length&&(r.required=n);const o=Wg(e,t);return o!==void 0&&(r.additionalProperties=o),r}function Wg(e,t){if(e.catchall._def.typeName!=="ZodNever")return se(e.catchall._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]});switch(e.unknownKeys){case"passthrough":return t.allowedAdditionalProperties;case"strict":return t.rejectedAdditionalProperties;case"strip":return t.removeAdditionalStrategy==="strict"?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}function Kg(e){try{return e.isOptional()}catch{return!0}}var Xg=(e,t)=>{var r;if(t.currentPath.toString()===((r=t.propertyPath)==null?void 0:r.toString()))return se(e.innerType._def,t);const n=se(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","1"]});return n?{anyOf:[{not:je()},n]}:je()},Qg=(e,t)=>{if(t.pipeStrategy==="input")return se(e.in._def,t);if(t.pipeStrategy==="output")return se(e.out._def,t);const r=se(e.in._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),n=se(e.out._def,{...t,currentPath:[...t.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(a=>a!==void 0)}};function em(e,t){return se(e.type._def,t)}function tm(e,t){const n={type:"array",uniqueItems:!0,items:se(e.valueType._def,{...t,currentPath:[...t.currentPath,"items"]})};return e.minSize&&(n.minItems=e.minSize.value),e.maxSize&&(n.maxItems=e.maxSize.value),n}function rm(e,t){return e.rest?{type:"array",minItems:e.items.length,items:e.items.map((r,n)=>se(r._def,{...t,currentPath:[...t.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:se(e.rest._def,{...t,currentPath:[...t.currentPath,"additionalItems"]})}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((r,n)=>se(r._def,{...t,currentPath:[...t.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function nm(){return{not:je()}}function am(){return je()}var om=(e,t)=>se(e.innerType._def,t),sm=(e,t,r)=>{switch(t){case q.ZodString:return Oi(e,r);case q.ZodNumber:return Jg(e);case q.ZodObject:return Yg(e,r);case q.ZodBigInt:return xg(e);case q.ZodBoolean:return Rg();case q.ZodDate:return Ai(e,r);case q.ZodUndefined:return nm();case q.ZodNull:return Gg();case q.ZodArray:return Og(e,r);case q.ZodUnion:case q.ZodDiscriminatedUnion:return Bg(e,r);case q.ZodIntersection:return Mg(e,r);case q.ZodTuple:return rm(e,r);case q.ZodRecord:return xi(e,r);case q.ZodLiteral:return Fg(e);case q.ZodEnum:return zg(e);case q.ZodNativeEnum:return qg(e);case q.ZodNullable:return Hg(e,r);case q.ZodOptional:return Xg(e,r);case q.ZodMap:return jg(e,r);case q.ZodSet:return tm(e,r);case q.ZodLazy:return()=>e.getter()._def;case q.ZodPromise:return em(e,r);case q.ZodNaN:case q.ZodNever:return Zg();case q.ZodEffects:return Dg(e,r);case q.ZodAny:return je();case q.ZodUnknown:return am();case q.ZodDefault:return Cg(e,r);case q.ZodBranded:return Ni(e,r);case q.ZodReadonly:return om(e,r);case q.ZodCatch:return kg(e,r);case q.ZodPipeline:return Qg(e,r);case q.ZodFunction:case q.ZodVoid:case q.ZodSymbol:return;default:return(n=>{})()}},im=(e,t)=>{let r=0;for(;r<e.length&&r<t.length&&e[r]===t[r];r++);return[(e.length-r).toString(),...t.slice(r)].join("/")};function se(e,t,r=!1){var n;const a=t.seen.get(e);if(t.override){const l=(n=t.override)==null?void 0:n.call(t,e,t,a,r);if(l!==Ng)return l}if(a&&!r){const l=lm(a,t);if(l!==void 0)return l}const o={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,o);const s=sm(e,e.typeName,t),i=typeof s=="function"?se(s(),t):s;if(i&&um(e,t,i),t.postProcess){const l=t.postProcess(i,e,t);return o.jsonSchema=i,l}return o.jsonSchema=i,i}var lm=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:im(t.currentPath,e.path)};case"none":case"seen":return e.path.length<t.currentPath.length&&e.path.every((r,n)=>t.currentPath[n]===r)?(console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),je()):t.$refStrategy==="seen"?je():void 0}},um=(e,t,r)=>(e.description&&(r.description=e.description),r),cm=e=>{const t=Ag(e),r=t.name!==void 0?[...t.basePath,t.definitionPath,t.name]:t.basePath;return{...t,currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([n,a])=>[a._def,{def:a._def,path:[...t.basePath,t.definitionPath,n],jsonSchema:void 0}]))}},dm=(e,t)=>{var r;const n=cm(t);let a=typeof t=="object"&&t.definitions?Object.entries(t.definitions).reduce((u,[c,p])=>{var d;return{...u,[c]:(d=se(p._def,{...n,currentPath:[...n.basePath,n.definitionPath,c]},!0))!=null?d:je()}},{}):void 0;const o=typeof t=="string"?t:(t==null?void 0:t.nameStrategy)==="title"||t==null?void 0:t.name,s=(r=se(e._def,o===void 0?n:{...n,currentPath:[...n.basePath,n.definitionPath,o]},!1))!=null?r:je(),i=typeof t=="object"&&t.name!==void 0&&t.nameStrategy==="title"?t.name:void 0;i!==void 0&&(s.title=i);const l=o===void 0?a?{...s,[n.definitionPath]:a}:s:{$ref:[...n.$refStrategy==="relative"?[]:n.basePath,n.definitionPath,o].join("/"),[n.definitionPath]:{...a,[o]:s}};return l.$schema="http://json-schema.org/draft-07/schema#",l},Un=Symbol.for("vercel.ai.schema");function Xt(e){let t;return()=>(t==null&&(t=e()),t)}function dn(e,{validate:t}={}){return{[Un]:!0,_type:void 0,get jsonSchema(){return typeof e=="function"&&(e=e()),e},validate:t}}function pm(e){return typeof e=="object"&&e!==null&&Un in e&&e[Un]===!0&&"jsonSchema"in e&&"validate"in e}function Qt(e){return e==null?dn({properties:{},additionalProperties:!1}):pm(e)?e:"~standard"in e?e["~standard"].vendor==="zod"?Ct(e):fm(e):e()}function fm(e){return dn(()=>e["~standard"].jsonSchema.input({target:"draft-07"}),{validate:async t=>{const r=await e["~standard"].validate(t);return"value"in r?{success:!0,value:r.value}:{success:!1,error:new xt({value:t,cause:r.issues})}}})}function gm(e,t){var r;const n=(r=void 0)!=null?r:!1;return dn(()=>dm(e,{$refStrategy:n?"root":"none"}),{validate:async a=>{const o=await e.safeParseAsync(a);return o.success?{success:!0,value:o.data}:{success:!1,error:o.error}}})}function mm(e,t){var r;const n=(r=void 0)!=null?r:!1;return dn(()=>Si(Gp(e,{target:"draft-7",io:"input",reused:n?"ref":"inline"})),{validate:async a=>{const o=await fi(e,a);return o.success?{success:!0,value:o.data}:{success:!1,error:o.error}}})}function hm(e){return"_zod"in e}function Ct(e,t){return hm(e)?mm(e):gm(e)}async function jn({value:e,schema:t}){const r=await rt({value:e,schema:t});if(!r.success)throw xt.wrap({value:e,cause:r.error});return r.value}async function rt({value:e,schema:t}){const r=Qt(t);try{if(r.validate==null)return{success:!0,value:e,rawValue:e};const n=await r.validate(e);return n.success?{success:!0,value:n.value,rawValue:e}:{success:!1,error:xt.wrap({value:e,cause:n.error}),rawValue:e}}catch(n){return{success:!1,error:xt.wrap({value:e,cause:n}),rawValue:e}}}async function ym({text:e,schema:t}){try{const r=Ii(e);return t==null?r:jn({value:r,schema:t})}catch(r){throw qr.isInstance(r)||xt.isInstance(r)?r:new qr({text:e,cause:r})}}async function We({text:e,schema:t}){try{const r=Ii(e);return t==null?{success:!0,value:r,rawValue:r}:await rt({value:r,schema:t})}catch(r){return{success:!1,error:qr.isInstance(r)?r:new qr({text:e,cause:r}),rawValue:void 0}}}function vm({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new gg).pipeThrough(new TransformStream({async transform({data:r},n){r!=="[DONE]"&&n.enqueue(await We({text:r,schema:t}))}}))}var _m=()=>globalThis.fetch,en=async({url:e,headers:t,body:r,failedResponseHandler:n,successfulResponseHandler:a,abortSignal:o,fetch:s})=>wm({url:e,headers:{"Content-Type":"application/json",...t},body:{content:JSON.stringify(r),values:r},failedResponseHandler:n,successfulResponseHandler:a,abortSignal:o,fetch:s}),wm=async({url:e,headers:t={},body:r,successfulResponseHandler:n,failedResponseHandler:a,abortSignal:o,fetch:s=_m()})=>{try{const i=await s(e,{method:"POST",headers:Ar(t,`ai-sdk/provider-utils/${Ei}`,oa()),body:r.content,signal:o}),l=Sr(i);if(!i.ok){let u;try{u=await a({response:i,url:e,requestBodyValues:r.values})}catch(c){throw kt(c)||$e.isInstance(c)?c:new $e({message:"Failed to process error response",cause:c,statusCode:i.status,url:e,responseHeaders:l,requestBodyValues:r.values})}throw u.value}try{return await n({response:i,url:e,requestBodyValues:r.values})}catch(u){throw u instanceof Error&&(kt(u)||$e.isInstance(u))?u:new $e({message:"Failed to process successful response",cause:u,statusCode:i.status,url:e,responseHeaders:l,requestBodyValues:r.values})}}catch(i){throw bi({error:i,url:e,requestBodyValues:r.values})}};async function Ge(e){return typeof e=="function"&&(e=e()),Promise.resolve(e)}var Jt=({errorSchema:e,errorToMessage:t,isRetryable:r})=>async({response:n,url:a,requestBodyValues:o})=>{const s=await n.text(),i=Sr(n);if(s.trim()==="")return{responseHeaders:i,value:new $e({message:n.statusText,url:a,requestBodyValues:o,statusCode:n.status,responseHeaders:i,responseBody:s,isRetryable:r==null?void 0:r(n)})};try{const l=await ym({text:s,schema:e});return{responseHeaders:i,value:new $e({message:t(l),url:a,requestBodyValues:o,statusCode:n.status,responseHeaders:i,responseBody:s,data:l,isRetryable:r==null?void 0:r(n,l)})}}catch{return{responseHeaders:i,value:new $e({message:n.statusText,url:a,requestBodyValues:o,statusCode:n.status,responseHeaders:i,responseBody:s,isRetryable:r==null?void 0:r(n)})}}},Tm=e=>async({response:t})=>{const r=Sr(t);if(t.body==null)throw new vu({});return{responseHeaders:r,value:vm({stream:t.body,schema:e})}},hr=e=>async({response:t,url:r,requestBodyValues:n})=>{const a=await t.text(),o=await We({text:a,schema:e}),s=Sr(t);if(!o.success)throw new $e({message:"Invalid JSON response",cause:o.error,statusCode:t.status,responseHeaders:s,responseBody:a,url:r,requestBodyValues:n});return{responseHeaders:s,value:o.value,rawValue:o.rawValue}};function bm(e){return e==null?void 0:e.replace(/\/$/,"")}function Em(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}async function*Im({execute:e,input:t,options:r}){const n=e(t,r);if(Em(n)){let a;for await(const o of n)a=o,yield{type:"preliminary",output:o};yield{type:"final",output:a}}else yield{type:"final",output:await n}}var Nn,fo;function Sm(){if(fo)return Nn;fo=1;var e=Object.defineProperty,t=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,n=Object.prototype.hasOwnProperty,a=(c,p)=>{for(var d in p)e(c,d,{get:p[d],enumerable:!0})},o=(c,p,d,v)=>{if(p&&typeof p=="object"||typeof p=="function")for(let E of r(p))!n.call(c,E)&&E!==d&&e(c,E,{get:()=>p[E],enumerable:!(v=t(p,E))||v.enumerable});return c},s=c=>o(e({},"__esModule",{value:!0}),c),i={};a(i,{SYMBOL_FOR_REQ_CONTEXT:()=>l,getContext:()=>u}),Nn=s(i);const l=Symbol.for("@vercel/request-context");function u(){var p,d;return((d=(p=globalThis[l])==null?void 0:p.get)==null?void 0:d.call(p))??{}}return Nn}var An,go;function Nm(){if(go)return An;go=1;var e=Object.defineProperty,t=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,n=Object.prototype.hasOwnProperty,a=(p,d)=>{for(var v in d)e(p,v,{get:d[v],enumerable:!0})},o=(p,d,v,E)=>{if(d&&typeof d=="object"||typeof d=="function")for(let w of r(d))!n.call(p,w)&&w!==v&&e(p,w,{get:()=>d[w],enumerable:!(E=t(d,w))||E.enumerable});return p},s=p=>o(e({},"__esModule",{value:!0}),p),i={};a(i,{getContext:()=>l.getContext,getVercelOidcToken:()=>u,getVercelOidcTokenSync:()=>c}),An=s(i);var l=Sm();async function u(){return""}function c(){return""}return An}var Ri=Nm(),Am="vercel.ai.gateway.error",On=Symbol.for(Am),mo,ho,qe=class ki extends(ho=Error,mo=On,ho){constructor({message:t,statusCode:r=500,cause:n}){super(t),this[mo]=!0,this.statusCode=r,this.cause=n}static isInstance(t){return ki.hasMarker(t)}static hasMarker(t){return typeof t=="object"&&t!==null&&On in t&&t[On]===!0}},Pi="GatewayAuthenticationError",Om=`vercel.ai.gateway.error.${Pi}`,yo=Symbol.for(Om),vo,_o,sa=class Ci extends(_o=qe,vo=yo,_o){constructor({message:t="Authentication failed",statusCode:r=401,cause:n}={}){super({message:t,statusCode:r,cause:n}),this[vo]=!0,this.name=Pi,this.type="authentication_error"}static isInstance(t){return qe.hasMarker(t)&&yo in t}static createContextualError({apiKeyProvided:t,oidcTokenProvided:r,message:n="Authentication failed",statusCode:a=401,cause:o}){let s;return t?s=`AI Gateway authentication failed: Invalid API key.
|
|
49
|
+
]`;continue}o+=a[u],a[u]==="\\"?s=!0:i&&a[u]==="]"?i=!1:!i&&a[u]==="["&&(i=!0)}try{new RegExp(o)}catch{return console.warn(`Could not convert regex pattern at ${t.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return o}function xi(e,t){var r,n,a,o,s,i;const l={type:"object",additionalProperties:(r=oe(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]}))!=null?r:t.allowedAdditionalProperties};if(((n=e.keyType)==null?void 0:n._def.typeName)===q.ZodString&&((a=e.keyType._def.checks)!=null&&a.length)){const{type:u,...c}=Ri(e.keyType._def,t);return{...l,propertyNames:c}}else{if(((o=e.keyType)==null?void 0:o._def.typeName)===q.ZodEnum)return{...l,propertyNames:{enum:e.keyType._def.values}};if(((s=e.keyType)==null?void 0:s._def.typeName)===q.ZodBranded&&e.keyType._def.type._def.typeName===q.ZodString&&((i=e.keyType._def.type._def.checks)!=null&&i.length)){const{type:u,...c}=Ni(e.keyType._def,t);return{...l,propertyNames:c}}}return l}function qg(e,t){if(t.mapStrategy==="record")return xi(e,t);const r=oe(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||je(),n=oe(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||je();return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function Zg(e){const t=e.values,n=Object.keys(e.values).filter(o=>typeof t[t[o]]!="number").map(o=>t[o]),a=Array.from(new Set(n.map(o=>typeof o)));return{type:a.length===1?a[0]==="string"?"string":"number":["string","number"],enum:n}}function Gg(){return{not:je()}}function Bg(){return{type:"null"}}var Un={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Vg(e,t){const r=e.options instanceof Map?Array.from(e.options.values()):e.options;if(r.every(n=>n._def.typeName in Un&&(!n._def.checks||!n._def.checks.length))){const n=r.reduce((a,o)=>{const s=Un[o._def.typeName];return s&&!a.includes(s)?[...a,s]:a},[]);return{type:n.length>1?n:n[0]}}else if(r.every(n=>n._def.typeName==="ZodLiteral"&&!n.description)){const n=r.reduce((a,o)=>{const s=typeof o._def.value;switch(s){case"string":case"number":case"boolean":return[...a,s];case"bigint":return[...a,"integer"];case"object":if(o._def.value===null)return[...a,"null"];case"symbol":case"undefined":case"function":default:return a}},[]);if(n.length===r.length){const a=n.filter((o,s,i)=>i.indexOf(o)===s);return{type:a.length>1?a:a[0],enum:r.reduce((o,s)=>o.includes(s._def.value)?o:[...o,s._def.value],[])}}}else if(r.every(n=>n._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((n,a)=>[...n,...a._def.values.filter(o=>!n.includes(o))],[])};return Hg(e,t)}var Hg=(e,t)=>{const r=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((n,a)=>oe(n._def,{...t,currentPath:[...t.currentPath,"anyOf",`${a}`]})).filter(n=>!!n&&(!t.strictUnions||typeof n=="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0};function Jg(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[Un[e.innerType._def.typeName],"null"]};const r=oe(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function Yg(e){const t={type:"number"};if(!e.checks)return t;for(const r of e.checks)switch(r.kind){case"int":t.type="integer";break;case"min":r.inclusive?t.minimum=r.value:t.exclusiveMinimum=r.value;break;case"max":r.inclusive?t.maximum=r.value:t.exclusiveMaximum=r.value;break;case"multipleOf":t.multipleOf=r.value;break}return t}function Wg(e,t){const r={type:"object",properties:{}},n=[],a=e.shape();for(const s in a){let i=a[s];if(i===void 0||i._def===void 0)continue;const l=Xg(i),u=oe(i._def,{...t,currentPath:[...t.currentPath,"properties",s],propertyPath:[...t.currentPath,"properties",s]});u!==void 0&&(r.properties[s]=u,l||n.push(s))}n.length&&(r.required=n);const o=Kg(e,t);return o!==void 0&&(r.additionalProperties=o),r}function Kg(e,t){if(e.catchall._def.typeName!=="ZodNever")return oe(e.catchall._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]});switch(e.unknownKeys){case"passthrough":return t.allowedAdditionalProperties;case"strict":return t.rejectedAdditionalProperties;case"strip":return t.removeAdditionalStrategy==="strict"?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}function Xg(e){try{return e.isOptional()}catch{return!0}}var Qg=(e,t)=>{var r;if(t.currentPath.toString()===((r=t.propertyPath)==null?void 0:r.toString()))return oe(e.innerType._def,t);const n=oe(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","1"]});return n?{anyOf:[{not:je()},n]}:je()},em=(e,t)=>{if(t.pipeStrategy==="input")return oe(e.in._def,t);if(t.pipeStrategy==="output")return oe(e.out._def,t);const r=oe(e.in._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),n=oe(e.out._def,{...t,currentPath:[...t.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(a=>a!==void 0)}};function tm(e,t){return oe(e.type._def,t)}function rm(e,t){const n={type:"array",uniqueItems:!0,items:oe(e.valueType._def,{...t,currentPath:[...t.currentPath,"items"]})};return e.minSize&&(n.minItems=e.minSize.value),e.maxSize&&(n.maxItems=e.maxSize.value),n}function nm(e,t){return e.rest?{type:"array",minItems:e.items.length,items:e.items.map((r,n)=>oe(r._def,{...t,currentPath:[...t.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:oe(e.rest._def,{...t,currentPath:[...t.currentPath,"additionalItems"]})}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((r,n)=>oe(r._def,{...t,currentPath:[...t.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function am(){return{not:je()}}function om(){return je()}var sm=(e,t)=>oe(e.innerType._def,t),im=(e,t,r)=>{switch(t){case q.ZodString:return Ri(e,r);case q.ZodNumber:return Yg(e);case q.ZodObject:return Wg(e,r);case q.ZodBigInt:return xg(e);case q.ZodBoolean:return kg();case q.ZodDate:return Oi(e,r);case q.ZodUndefined:return am();case q.ZodNull:return Bg();case q.ZodArray:return Rg(e,r);case q.ZodUnion:case q.ZodDiscriminatedUnion:return Vg(e,r);case q.ZodIntersection:return Fg(e,r);case q.ZodTuple:return nm(e,r);case q.ZodRecord:return xi(e,r);case q.ZodLiteral:return Lg(e);case q.ZodEnum:return $g(e);case q.ZodNativeEnum:return Zg(e);case q.ZodNullable:return Jg(e,r);case q.ZodOptional:return Qg(e,r);case q.ZodMap:return qg(e,r);case q.ZodSet:return rm(e,r);case q.ZodLazy:return()=>e.getter()._def;case q.ZodPromise:return tm(e,r);case q.ZodNaN:case q.ZodNever:return Gg();case q.ZodEffects:return Dg(e,r);case q.ZodAny:return je();case q.ZodUnknown:return om();case q.ZodDefault:return zg(e,r);case q.ZodBranded:return Ni(e,r);case q.ZodReadonly:return sm(e,r);case q.ZodCatch:return Pg(e,r);case q.ZodPipeline:return em(e,r);case q.ZodFunction:case q.ZodVoid:case q.ZodSymbol:return;default:return(n=>{})()}},lm=(e,t)=>{let r=0;for(;r<e.length&&r<t.length&&e[r]===t[r];r++);return[(e.length-r).toString(),...t.slice(r)].join("/")};function oe(e,t,r=!1){var n;const a=t.seen.get(e);if(t.override){const l=(n=t.override)==null?void 0:n.call(t,e,t,a,r);if(l!==Ng)return l}if(a&&!r){const l=um(a,t);if(l!==void 0)return l}const o={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,o);const s=im(e,e.typeName,t),i=typeof s=="function"?oe(s(),t):s;if(i&&cm(e,t,i),t.postProcess){const l=t.postProcess(i,e,t);return o.jsonSchema=i,l}return o.jsonSchema=i,i}var um=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:lm(t.currentPath,e.path)};case"none":case"seen":return e.path.length<t.currentPath.length&&e.path.every((r,n)=>t.currentPath[n]===r)?(console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),je()):t.$refStrategy==="seen"?je():void 0}},cm=(e,t,r)=>(e.description&&(r.description=e.description),r),dm=e=>{const t=Og(e),r=t.name!==void 0?[...t.basePath,t.definitionPath,t.name]:t.basePath;return{...t,currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([n,a])=>[a._def,{def:a._def,path:[...t.basePath,t.definitionPath,n],jsonSchema:void 0}]))}},pm=(e,t)=>{var r;const n=dm(t);let a=typeof t=="object"&&t.definitions?Object.entries(t.definitions).reduce((u,[c,p])=>{var d;return{...u,[c]:(d=oe(p._def,{...n,currentPath:[...n.basePath,n.definitionPath,c]},!0))!=null?d:je()}},{}):void 0;const o=typeof t=="string"?t:(t==null?void 0:t.nameStrategy)==="title"||t==null?void 0:t.name,s=(r=oe(e._def,o===void 0?n:{...n,currentPath:[...n.basePath,n.definitionPath,o]},!1))!=null?r:je(),i=typeof t=="object"&&t.name!==void 0&&t.nameStrategy==="title"?t.name:void 0;i!==void 0&&(s.title=i);const l=o===void 0?a?{...s,[n.definitionPath]:a}:s:{$ref:[...n.$refStrategy==="relative"?[]:n.basePath,n.definitionPath,o].join("/"),[n.definitionPath]:{...a,[o]:s}};return l.$schema="http://json-schema.org/draft-07/schema#",l},jn=Symbol.for("vercel.ai.schema");function Xt(e){let t;return()=>(t==null&&(t=e()),t)}function pn(e,{validate:t}={}){return{[jn]:!0,_type:void 0,get jsonSchema(){return typeof e=="function"&&(e=e()),e},validate:t}}function fm(e){return typeof e=="object"&&e!==null&&jn in e&&e[jn]===!0&&"jsonSchema"in e&&"validate"in e}function Qt(e){return e==null?pn({properties:{},additionalProperties:!1}):fm(e)?e:"~standard"in e?e["~standard"].vendor==="zod"?Ct(e):gm(e):e()}function gm(e){return pn(()=>e["~standard"].jsonSchema.input({target:"draft-07"}),{validate:async t=>{const r=await e["~standard"].validate(t);return"value"in r?{success:!0,value:r.value}:{success:!1,error:new Rt({value:t,cause:r.issues})}}})}function mm(e,t){var r;const n=(r=void 0)!=null?r:!1;return pn(()=>pm(e,{$refStrategy:n?"root":"none"}),{validate:async a=>{const o=await e.safeParseAsync(a);return o.success?{success:!0,value:o.data}:{success:!1,error:o.error}}})}function hm(e,t){var r;const n=(r=void 0)!=null?r:!1;return pn(()=>Ai(Bp(e,{target:"draft-7",io:"input",reused:n?"ref":"inline"})),{validate:async a=>{const o=await gi(e,a);return o.success?{success:!0,value:o.data}:{success:!1,error:o.error}}})}function ym(e){return"_zod"in e}function Ct(e,t){return ym(e)?hm(e):mm(e)}async function qn({value:e,schema:t}){const r=await rt({value:e,schema:t});if(!r.success)throw Rt.wrap({value:e,cause:r.error});return r.value}async function rt({value:e,schema:t}){const r=Qt(t);try{if(r.validate==null)return{success:!0,value:e,rawValue:e};const n=await r.validate(e);return n.success?{success:!0,value:n.value,rawValue:e}:{success:!1,error:Rt.wrap({value:e,cause:n.error}),rawValue:e}}catch(n){return{success:!1,error:Rt.wrap({value:e,cause:n}),rawValue:e}}}async function vm({text:e,schema:t}){try{const r=Si(e);return t==null?r:qn({value:r,schema:t})}catch(r){throw Zr.isInstance(r)||Rt.isInstance(r)?r:new Zr({text:e,cause:r})}}async function We({text:e,schema:t}){try{const r=Si(e);return t==null?{success:!0,value:r,rawValue:r}:await rt({value:r,schema:t})}catch(r){return{success:!1,error:Zr.isInstance(r)?r:new Zr({text:e,cause:r}),rawValue:void 0}}}function _m({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new mg).pipeThrough(new TransformStream({async transform({data:r},n){r!=="[DONE]"&&n.enqueue(await We({text:r,schema:t}))}}))}var wm=()=>globalThis.fetch,tn=async({url:e,headers:t,body:r,failedResponseHandler:n,successfulResponseHandler:a,abortSignal:o,fetch:s})=>Tm({url:e,headers:{"Content-Type":"application/json",...t},body:{content:JSON.stringify(r),values:r},failedResponseHandler:n,successfulResponseHandler:a,abortSignal:o,fetch:s}),Tm=async({url:e,headers:t={},body:r,successfulResponseHandler:n,failedResponseHandler:a,abortSignal:o,fetch:s=wm()})=>{try{const i=await s(e,{method:"POST",headers:Or(t,`ai-sdk/provider-utils/${Ii}`,sa()),body:r.content,signal:o}),l=Ar(i);if(!i.ok){let u;try{u=await a({response:i,url:e,requestBodyValues:r.values})}catch(c){throw kt(c)||$e.isInstance(c)?c:new $e({message:"Failed to process error response",cause:c,statusCode:i.status,url:e,responseHeaders:l,requestBodyValues:r.values})}throw u.value}try{return await n({response:i,url:e,requestBodyValues:r.values})}catch(u){throw u instanceof Error&&(kt(u)||$e.isInstance(u))?u:new $e({message:"Failed to process successful response",cause:u,statusCode:i.status,url:e,responseHeaders:l,requestBodyValues:r.values})}}catch(i){throw Ei({error:i,url:e,requestBodyValues:r.values})}};async function Ge(e){return typeof e=="function"&&(e=e()),Promise.resolve(e)}var Jt=({errorSchema:e,errorToMessage:t,isRetryable:r})=>async({response:n,url:a,requestBodyValues:o})=>{const s=await n.text(),i=Ar(n);if(s.trim()==="")return{responseHeaders:i,value:new $e({message:n.statusText,url:a,requestBodyValues:o,statusCode:n.status,responseHeaders:i,responseBody:s,isRetryable:r==null?void 0:r(n)})};try{const l=await vm({text:s,schema:e});return{responseHeaders:i,value:new $e({message:t(l),url:a,requestBodyValues:o,statusCode:n.status,responseHeaders:i,responseBody:s,data:l,isRetryable:r==null?void 0:r(n,l)})}}catch{return{responseHeaders:i,value:new $e({message:n.statusText,url:a,requestBodyValues:o,statusCode:n.status,responseHeaders:i,responseBody:s,isRetryable:r==null?void 0:r(n)})}}},bm=e=>async({response:t})=>{const r=Ar(t);if(t.body==null)throw new _u({});return{responseHeaders:r,value:_m({stream:t.body,schema:e})}},yr=e=>async({response:t,url:r,requestBodyValues:n})=>{const a=await t.text(),o=await We({text:a,schema:e}),s=Ar(t);if(!o.success)throw new $e({message:"Invalid JSON response",cause:o.error,statusCode:t.status,responseHeaders:s,responseBody:a,url:r,requestBodyValues:n});return{responseHeaders:s,value:o.value,rawValue:o.rawValue}};function Em(e){return e==null?void 0:e.replace(/\/$/,"")}function Im(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}async function*Sm({execute:e,input:t,options:r}){const n=e(t,r);if(Im(n)){let a;for await(const o of n)a=o,yield{type:"preliminary",output:o};yield{type:"final",output:a}}else yield{type:"final",output:await n}}var Nn,go;function Am(){if(go)return Nn;go=1;var e=Object.defineProperty,t=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,n=Object.prototype.hasOwnProperty,a=(c,p)=>{for(var d in p)e(c,d,{get:p[d],enumerable:!0})},o=(c,p,d,v)=>{if(p&&typeof p=="object"||typeof p=="function")for(let E of r(p))!n.call(c,E)&&E!==d&&e(c,E,{get:()=>p[E],enumerable:!(v=t(p,E))||v.enumerable});return c},s=c=>o(e({},"__esModule",{value:!0}),c),i={};a(i,{SYMBOL_FOR_REQ_CONTEXT:()=>l,getContext:()=>u}),Nn=s(i);const l=Symbol.for("@vercel/request-context");function u(){var p,d;return((d=(p=globalThis[l])==null?void 0:p.get)==null?void 0:d.call(p))??{}}return Nn}var On,mo;function Nm(){if(mo)return On;mo=1;var e=Object.defineProperty,t=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,n=Object.prototype.hasOwnProperty,a=(p,d)=>{for(var v in d)e(p,v,{get:d[v],enumerable:!0})},o=(p,d,v,E)=>{if(d&&typeof d=="object"||typeof d=="function")for(let w of r(d))!n.call(p,w)&&w!==v&&e(p,w,{get:()=>d[w],enumerable:!(E=t(d,w))||E.enumerable});return p},s=p=>o(e({},"__esModule",{value:!0}),p),i={};a(i,{getContext:()=>l.getContext,getVercelOidcToken:()=>u,getVercelOidcTokenSync:()=>c}),On=s(i);var l=Am();async function u(){return""}function c(){return""}return On}var ki=Nm(),Om="vercel.ai.gateway.error",Rn=Symbol.for(Om),ho,yo,qe=class Pi extends(yo=Error,ho=Rn,yo){constructor({message:t,statusCode:r=500,cause:n}){super(t),this[ho]=!0,this.statusCode=r,this.cause=n}static isInstance(t){return Pi.hasMarker(t)}static hasMarker(t){return typeof t=="object"&&t!==null&&Rn in t&&t[Rn]===!0}},Ci="GatewayAuthenticationError",Rm=`vercel.ai.gateway.error.${Ci}`,vo=Symbol.for(Rm),_o,wo,ia=class zi extends(wo=qe,_o=vo,wo){constructor({message:t="Authentication failed",statusCode:r=401,cause:n}={}){super({message:t,statusCode:r,cause:n}),this[_o]=!0,this.name=Ci,this.type="authentication_error"}static isInstance(t){return qe.hasMarker(t)&&vo in t}static createContextualError({apiKeyProvided:t,oidcTokenProvided:r,message:n="Authentication failed",statusCode:a=401,cause:o}){let s;return t?s=`AI Gateway authentication failed: Invalid API key.
|
|
50
50
|
|
|
51
51
|
Create a new API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys
|
|
52
52
|
|
|
@@ -61,7 +61,7 @@ Create an API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys
|
|
|
61
61
|
Provide via 'apiKey' option or 'AI_GATEWAY_API_KEY' environment variable.
|
|
62
62
|
|
|
63
63
|
Option 2 - OIDC token:
|
|
64
|
-
Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.`,new Ci({message:s,statusCode:a,cause:o})}},Di="GatewayInvalidRequestError",xm=`vercel.ai.gateway.error.${Di}`,wo=Symbol.for(xm),To,bo,Rm=class extends(bo=qe,To=wo,bo){constructor({message:e="Invalid request",statusCode:t=400,cause:r}={}){super({message:e,statusCode:t,cause:r}),this[To]=!0,this.name=Di,this.type="invalid_request_error"}static isInstance(e){return qe.hasMarker(e)&&wo in e}},zi="GatewayRateLimitError",km=`vercel.ai.gateway.error.${zi}`,Eo=Symbol.for(km),Io,So,Pm=class extends(So=qe,Io=Eo,So){constructor({message:e="Rate limit exceeded",statusCode:t=429,cause:r}={}){super({message:e,statusCode:t,cause:r}),this[Io]=!0,this.name=zi,this.type="rate_limit_exceeded"}static isInstance(e){return qe.hasMarker(e)&&Eo in e}},$i="GatewayModelNotFoundError",Cm=`vercel.ai.gateway.error.${$i}`,No=Symbol.for(Cm),Dm=Xt(()=>Ct(G({modelId:R()}))),Ao,Oo,zm=class extends(Oo=qe,Ao=No,Oo){constructor({message:e="Model not found",statusCode:t=404,modelId:r,cause:n}={}){super({message:e,statusCode:t,cause:n}),this[Ao]=!0,this.name=$i,this.type="model_not_found",this.modelId=r}static isInstance(e){return qe.hasMarker(e)&&No in e}},Mi="GatewayInternalServerError",$m=`vercel.ai.gateway.error.${Mi}`,xo=Symbol.for($m),Ro,ko,Po=class extends(ko=qe,Ro=xo,ko){constructor({message:e="Internal server error",statusCode:t=500,cause:r}={}){super({message:e,statusCode:t,cause:r}),this[Ro]=!0,this.name=Mi,this.type="internal_server_error"}static isInstance(e){return qe.hasMarker(e)&&xo in e}},Fi="GatewayResponseError",Mm=`vercel.ai.gateway.error.${Fi}`,Co=Symbol.for(Mm),Do,zo,Fm=class extends(zo=qe,Do=Co,zo){constructor({message:e="Invalid response from Gateway",statusCode:t=502,response:r,validationError:n,cause:a}={}){super({message:e,statusCode:t,cause:a}),this[Do]=!0,this.name=Fi,this.type="response_error",this.response=r,this.validationError=n}static isInstance(e){return qe.hasMarker(e)&&Co in e}};async function $o({response:e,statusCode:t,defaultMessage:r="Gateway request failed",cause:n,authMethod:a}){const o=await rt({value:e,schema:Lm});if(!o.success)return new Fm({message:`Invalid error response format: ${r}`,statusCode:t,response:e,validationError:o.error,cause:n});const s=o.value,i=s.error.type,l=s.error.message;switch(i){case"authentication_error":return sa.createContextualError({apiKeyProvided:a==="api-key",oidcTokenProvided:a==="oidc",statusCode:t,cause:n});case"invalid_request_error":return new Rm({message:l,statusCode:t,cause:n});case"rate_limit_exceeded":return new Pm({message:l,statusCode:t,cause:n});case"model_not_found":{const u=await rt({value:s.error.param,schema:Dm});return new zm({message:l,statusCode:t,modelId:u.success?u.value.modelId:void 0,cause:n})}case"internal_server_error":return new Po({message:l,statusCode:t,cause:n});default:return new Po({message:l,statusCode:t,cause:n})}}var Lm=Xt(()=>Ct(G({error:G({message:R(),type:R().nullish(),param:Rt().nullish(),code:Pe([R(),Yr()]).nullish()})})));function Tt(e,t){var r;return qe.isInstance(e)?e:$e.isInstance(e)?$o({response:Um(e),statusCode:(r=e.statusCode)!=null?r:500,defaultMessage:"Gateway request failed",cause:e,authMethod:t}):$o({response:{},statusCode:500,defaultMessage:e instanceof Error?`Gateway request failed: ${e.message}`:"Unknown Gateway error",cause:e,authMethod:t})}function Um(e){if(e.data!==void 0)return e.data;if(e.responseBody!=null)try{return JSON.parse(e.responseBody)}catch{return e.responseBody}return{}}var Li="ai-gateway-auth-method";async function Yt(e){const t=await rt({value:e[Li],schema:jm});return t.success?t.value:void 0}var jm=Xt(()=>Ct(Pe([ee("api-key"),ee("oidc")]))),Mo=class{constructor(e){this.config=e}async getAvailableModels(){try{const{value:e}=await lo({url:`${this.config.baseURL}/config`,headers:await Ge(this.config.headers()),successfulResponseHandler:hr(qm),failedResponseHandler:Jt({errorSchema:ht(),errorToMessage:t=>t}),fetch:this.config.fetch});return e}catch(e){throw await Tt(e)}}async getCredits(){try{const e=new URL(this.config.baseURL),{value:t}=await lo({url:`${e.origin}/v1/credits`,headers:await Ge(this.config.headers()),successfulResponseHandler:hr(Zm),failedResponseHandler:Jt({errorSchema:ht(),errorToMessage:r=>r}),fetch:this.config.fetch});return t}catch(e){throw await Tt(e)}}},qm=Xt(()=>Ct(G({models:Ue(G({id:R(),name:R(),description:R().nullish(),pricing:G({input:R(),output:R(),input_cache_read:R().nullish(),input_cache_write:R().nullish()}).transform(({input:e,output:t,input_cache_read:r,input_cache_write:n})=>({input:e,output:t,...r?{cachedInputTokens:r}:{},...n?{cacheCreationInputTokens:n}:{}})).nullish(),specification:G({specificationVersion:ee("v3"),provider:R(),modelId:R()}),modelType:yi(["language","embedding","image"]).nullish()}))}))),Zm=Xt(()=>Ct(G({balance:R(),total_used:R()}).transform(({balance:e,total_used:t})=>({balance:e,totalUsed:t})))),Gm=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v3",this.supportedUrls={"*/*":[/.*/]}}get provider(){return this.config.provider}async getArgs(e){const{abortSignal:t,...r}=e;return{args:this.maybeEncodeFileParts(r),warnings:[]}}async doGenerate(e){const{args:t,warnings:r}=await this.getArgs(e),{abortSignal:n}=e,a=await Ge(this.config.headers());try{const{responseHeaders:o,value:s,rawValue:i}=await en({url:this.getUrl(),headers:Xr(a,e.headers,this.getModelConfigHeaders(this.modelId,!1),await Ge(this.config.o11yHeaders)),body:t,successfulResponseHandler:hr(ht()),failedResponseHandler:Jt({errorSchema:ht(),errorToMessage:l=>l}),...n&&{abortSignal:n},fetch:this.config.fetch});return{...s,request:{body:t},response:{headers:o,body:i},warnings:r}}catch(o){throw await Tt(o,await Yt(a))}}async doStream(e){const{args:t,warnings:r}=await this.getArgs(e),{abortSignal:n}=e,a=await Ge(this.config.headers());try{const{value:o,responseHeaders:s}=await en({url:this.getUrl(),headers:Xr(a,e.headers,this.getModelConfigHeaders(this.modelId,!0),await Ge(this.config.o11yHeaders)),body:t,successfulResponseHandler:Tm(ht()),failedResponseHandler:Jt({errorSchema:ht(),errorToMessage:i=>i}),...n&&{abortSignal:n},fetch:this.config.fetch});return{stream:o.pipeThrough(new TransformStream({start(i){r.length>0&&i.enqueue({type:"stream-start",warnings:r})},transform(i,l){if(i.success){const u=i.value;if(u.type==="raw"&&!e.includeRawChunks)return;u.type==="response-metadata"&&u.timestamp&&typeof u.timestamp=="string"&&(u.timestamp=new Date(u.timestamp)),l.enqueue(u)}else l.error(i.error)}})),request:{body:t},response:{headers:s}}}catch(o){throw await Tt(o,await Yt(a))}}isFilePart(e){return e&&typeof e=="object"&&"type"in e&&e.type==="file"}maybeEncodeFileParts(e){for(const t of e.prompt)for(const r of t.content)if(this.isFilePart(r)){const n=r;if(n.data instanceof Uint8Array){const a=Uint8Array.from(n.data),o=Buffer.from(a).toString("base64");n.data=new URL(`data:${n.mediaType||"application/octet-stream"};base64,${o}`)}}return e}getUrl(){return`${this.config.baseURL}/language-model`}getModelConfigHeaders(e,t){return{"ai-language-model-specification-version":"3","ai-language-model-id":e,"ai-language-model-streaming":String(t)}}},Bm=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v3",this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0}get provider(){return this.config.provider}async doEmbed({values:e,headers:t,abortSignal:r,providerOptions:n}){var a;const o=await Ge(this.config.headers());try{const{responseHeaders:s,value:i,rawValue:l}=await en({url:this.getUrl(),headers:Xr(o,t??{},this.getModelConfigHeaders(),await Ge(this.config.o11yHeaders)),body:{values:e,...n?{providerOptions:n}:{}},successfulResponseHandler:hr(Vm),failedResponseHandler:Jt({errorSchema:ht(),errorToMessage:u=>u}),...r&&{abortSignal:r},fetch:this.config.fetch});return{embeddings:i.embeddings,usage:(a=i.usage)!=null?a:void 0,providerMetadata:i.providerMetadata,response:{headers:s,body:l},warnings:[]}}catch(s){throw await Tt(s,await Yt(o))}}getUrl(){return`${this.config.baseURL}/embedding-model`}getModelConfigHeaders(){return{"ai-embedding-model-specification-version":"3","ai-model-id":this.modelId}}},Vm=Xt(()=>Ct(G({embeddings:Ue(Ue(Yr())),usage:G({tokens:Yr()}).nullish(),providerMetadata:wt(R(),wt(R(),Rt())).optional()}))),Hm=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v3",this.maxImagesPerCall=Number.MAX_SAFE_INTEGER}get provider(){return this.config.provider}async doGenerate({prompt:e,n:t,size:r,aspectRatio:n,seed:a,files:o,mask:s,providerOptions:i,headers:l,abortSignal:u}){var c;const p=await Ge(this.config.headers());try{const{responseHeaders:d,value:v,rawValue:E}=await en({url:this.getUrl(),headers:Xr(p,l??{},this.getModelConfigHeaders(),await Ge(this.config.o11yHeaders)),body:{prompt:e,n:t,...r&&{size:r},...n&&{aspectRatio:n},...a&&{seed:a},...i&&{providerOptions:i},...o&&{files:o.map(w=>Fo(w))},...s&&{mask:Fo(s)}},successfulResponseHandler:hr(Ym),failedResponseHandler:Jt({errorSchema:ht(),errorToMessage:w=>w}),...u&&{abortSignal:u},fetch:this.config.fetch});return{images:v.images,warnings:(c=v.warnings)!=null?c:[],providerMetadata:v.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:d}}}catch(d){throw Tt(d,await Yt(p))}}getUrl(){return`${this.config.baseURL}/image-model`}getModelConfigHeaders(){return{"ai-image-model-specification-version":"3","ai-model-id":this.modelId}}};function Fo(e){return e.type==="file"&&e.data instanceof Uint8Array?{...e,data:Qr(e.data)}:e}var Jm=G({images:Ue(Rt()).optional()}).catchall(Rt()),Ym=G({images:Ue(R()),warnings:Ue(G({type:ee("other"),message:R()})).optional(),providerMetadata:wt(R(),Jm).optional()});async function Wm(){var e;return(e=Ri.getContext().headers)==null?void 0:e["x-vercel-id"]}var Km="3.0.8",Xm="0.0.1";function Qm(e={}){var t,r;let n=null,a=null;const o=(t=e.metadataCacheRefreshMillis)!=null?t:1e3*60*5;let s=0;const i=(r=bm(e.baseURL))!=null?r:"https://ai-gateway.vercel.sh/v3/ai",l=async()=>{try{const w=await th(e);return Ar({Authorization:`Bearer ${w.token}`,"ai-gateway-protocol-version":Xm,[Li]:w.authMethod,...e.headers},`ai-sdk/gateway/${Km}`)}catch(w){throw sa.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:w})}},u=()=>{const w=jr({settingValue:void 0,environmentVariableName:"VERCEL_DEPLOYMENT_ID"}),I=jr({settingValue:void 0,environmentVariableName:"VERCEL_ENV"}),P=jr({settingValue:void 0,environmentVariableName:"VERCEL_REGION"});return async()=>{const C=await Wm();return{...w&&{"ai-o11y-deployment-id":w},...I&&{"ai-o11y-environment":I},...P&&{"ai-o11y-region":P},...C&&{"ai-o11y-request-id":C}}}},c=w=>new Gm(w,{provider:"gateway",baseURL:i,headers:l,fetch:e.fetch,o11yHeaders:u()}),p=async()=>{var w,I,P;const C=(P=(I=(w=e._internal)==null?void 0:w.currentDate)==null?void 0:I.call(w).getTime())!=null?P:Date.now();return(!n||C-s>o)&&(s=C,n=new Mo({baseURL:i,headers:l,fetch:e.fetch}).getAvailableModels().then(h=>(a=h,h)).catch(async h=>{throw await Tt(h,await Yt(await l()))})),a?Promise.resolve(a):n},d=async()=>new Mo({baseURL:i,headers:l,fetch:e.fetch}).getCredits().catch(async w=>{throw await Tt(w,await Yt(await l()))}),v=function(w){if(new.target)throw new Error("The Gateway Provider model function cannot be called with the new keyword.");return c(w)};v.specificationVersion="v3",v.getAvailableModels=p,v.getCredits=d,v.imageModel=w=>new Hm(w,{provider:"gateway",baseURL:i,headers:l,fetch:e.fetch,o11yHeaders:u()}),v.languageModel=c;const E=w=>new Bm(w,{provider:"gateway",baseURL:i,headers:l,fetch:e.fetch,o11yHeaders:u()});return v.embeddingModel=E,v.textEmbeddingModel=E,v}var eh=Qm();async function th(e){const t=jr({settingValue:e.apiKey,environmentVariableName:"AI_GATEWAY_API_KEY"});return t?{token:t,authMethod:"api-key"}:{token:await Ri.getVercelOidcToken(),authMethod:"oidc"}}var rh=typeof globalThis=="object"?globalThis:typeof self=="object"?self:typeof window=="object"?window:typeof global=="object"?global:{},Ot="1.9.0",Lo=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;function nh(e){var t=new Set([e]),r=new Set,n=e.match(Lo);if(!n)return function(){return!1};var a={major:+n[1],minor:+n[2],patch:+n[3],prerelease:n[4]};if(a.prerelease!=null)return function(l){return l===e};function o(i){return r.add(i),!1}function s(i){return t.add(i),!0}return function(l){if(t.has(l))return!0;if(r.has(l))return!1;var u=l.match(Lo);if(!u)return o(l);var c={major:+u[1],minor:+u[2],patch:+u[3],prerelease:u[4]};return c.prerelease!=null||a.major!==c.major?o(l):a.major===0?a.minor===c.minor&&a.patch<=c.patch?s(l):o(l):a.minor<=c.minor?s(l):o(l)}}var ah=nh(Ot),oh=Ot.split(".")[0],yr=Symbol.for("opentelemetry.js.api."+oh),vr=rh;function ia(e,t,r,n){var a;n===void 0&&(n=!1);var o=vr[yr]=(a=vr[yr])!==null&&a!==void 0?a:{version:Ot};if(!n&&o[e]){var s=new Error("@opentelemetry/api: Attempted duplicate registration of API: "+e);return r.error(s.stack||s.message),!1}if(o.version!==Ot){var s=new Error("@opentelemetry/api: Registration of version v"+o.version+" for "+e+" does not match previously registered API v"+Ot);return r.error(s.stack||s.message),!1}return o[e]=t,r.debug("@opentelemetry/api: Registered a global for "+e+" v"+Ot+"."),!0}function _r(e){var t,r,n=(t=vr[yr])===null||t===void 0?void 0:t.version;if(!(!n||!ah(n)))return(r=vr[yr])===null||r===void 0?void 0:r[e]}function la(e,t){t.debug("@opentelemetry/api: Unregistering a global for "+e+" v"+Ot+".");var r=vr[yr];r&&delete r[e]}var sh=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],s;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(i){s={error:i}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return o},ih=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n<a;n++)(o||!(n in t))&&(o||(o=Array.prototype.slice.call(t,0,n)),o[n]=t[n]);return e.concat(o||Array.prototype.slice.call(t))},lh=(function(){function e(t){this._namespace=t.namespace||"DiagComponentLogger"}return e.prototype.debug=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return lr("debug",this._namespace,t)},e.prototype.error=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return lr("error",this._namespace,t)},e.prototype.info=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return lr("info",this._namespace,t)},e.prototype.warn=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return lr("warn",this._namespace,t)},e.prototype.verbose=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return lr("verbose",this._namespace,t)},e})();function lr(e,t,r){var n=_r("diag");if(n)return r.unshift(t),n[e].apply(n,ih([],sh(r),!1))}var Le;(function(e){e[e.NONE=0]="NONE",e[e.ERROR=30]="ERROR",e[e.WARN=50]="WARN",e[e.INFO=60]="INFO",e[e.DEBUG=70]="DEBUG",e[e.VERBOSE=80]="VERBOSE",e[e.ALL=9999]="ALL"})(Le||(Le={}));function uh(e,t){e<Le.NONE?e=Le.NONE:e>Le.ALL&&(e=Le.ALL),t=t||{};function r(n,a){var o=t[n];return typeof o=="function"&&e>=a?o.bind(t):function(){}}return{error:r("error",Le.ERROR),warn:r("warn",Le.WARN),info:r("info",Le.INFO),debug:r("debug",Le.DEBUG),verbose:r("verbose",Le.VERBOSE)}}var ch=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],s;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(i){s={error:i}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return o},dh=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n<a;n++)(o||!(n in t))&&(o||(o=Array.prototype.slice.call(t,0,n)),o[n]=t[n]);return e.concat(o||Array.prototype.slice.call(t))},ph="diag",tn=(function(){function e(){function t(a){return function(){for(var o=[],s=0;s<arguments.length;s++)o[s]=arguments[s];var i=_r("diag");if(i)return i[a].apply(i,dh([],ch(o),!1))}}var r=this,n=function(a,o){var s,i,l;if(o===void 0&&(o={logLevel:Le.INFO}),a===r){var u=new Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");return r.error((s=u.stack)!==null&&s!==void 0?s:u.message),!1}typeof o=="number"&&(o={logLevel:o});var c=_r("diag"),p=uh((i=o.logLevel)!==null&&i!==void 0?i:Le.INFO,a);if(c&&!o.suppressOverrideMessage){var d=(l=new Error().stack)!==null&&l!==void 0?l:"<failed to generate stacktrace>";c.warn("Current logger will be overwritten from "+d),p.warn("Current logger will overwrite one already registered from "+d)}return ia("diag",p,r,!0)};r.setLogger=n,r.disable=function(){la(ph,r)},r.createComponentLogger=function(a){return new lh(a)},r.verbose=t("verbose"),r.debug=t("debug"),r.info=t("info"),r.warn=t("warn"),r.error=t("error")}return e.instance=function(){return this._instance||(this._instance=new e),this._instance},e})();function fh(e){return Symbol.for(e)}var gh=(function(){function e(t){var r=this;r._currentContext=t?new Map(t):new Map,r.getValue=function(n){return r._currentContext.get(n)},r.setValue=function(n,a){var o=new e(r._currentContext);return o._currentContext.set(n,a),o},r.deleteValue=function(n){var a=new e(r._currentContext);return a._currentContext.delete(n),a}}return e})(),mh=new gh,hh=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],s;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(i){s={error:i}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return o},yh=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n<a;n++)(o||!(n in t))&&(o||(o=Array.prototype.slice.call(t,0,n)),o[n]=t[n]);return e.concat(o||Array.prototype.slice.call(t))},vh=(function(){function e(){}return e.prototype.active=function(){return mh},e.prototype.with=function(t,r,n){for(var a=[],o=3;o<arguments.length;o++)a[o-3]=arguments[o];return r.call.apply(r,yh([n],hh(a),!1))},e.prototype.bind=function(t,r){return r},e.prototype.enable=function(){return this},e.prototype.disable=function(){return this},e})(),_h=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],s;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(i){s={error:i}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return o},wh=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n<a;n++)(o||!(n in t))&&(o||(o=Array.prototype.slice.call(t,0,n)),o[n]=t[n]);return e.concat(o||Array.prototype.slice.call(t))},xn="context",Th=new vh,Ui=(function(){function e(){}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalContextManager=function(t){return ia(xn,t,tn.instance())},e.prototype.active=function(){return this._getContextManager().active()},e.prototype.with=function(t,r,n){for(var a,o=[],s=3;s<arguments.length;s++)o[s-3]=arguments[s];return(a=this._getContextManager()).with.apply(a,wh([t,r,n],_h(o),!1))},e.prototype.bind=function(t,r){return this._getContextManager().bind(t,r)},e.prototype._getContextManager=function(){return _r(xn)||Th},e.prototype.disable=function(){this._getContextManager().disable(),la(xn,tn.instance())},e})(),qn;(function(e){e[e.NONE=0]="NONE",e[e.SAMPLED=1]="SAMPLED"})(qn||(qn={}));var ji="0000000000000000",qi="00000000000000000000000000000000",bh={traceId:qi,spanId:ji,traceFlags:qn.NONE},cr=(function(){function e(t){t===void 0&&(t=bh),this._spanContext=t}return e.prototype.spanContext=function(){return this._spanContext},e.prototype.setAttribute=function(t,r){return this},e.prototype.setAttributes=function(t){return this},e.prototype.addEvent=function(t,r){return this},e.prototype.addLink=function(t){return this},e.prototype.addLinks=function(t){return this},e.prototype.setStatus=function(t){return this},e.prototype.updateName=function(t){return this},e.prototype.end=function(t){},e.prototype.isRecording=function(){return!1},e.prototype.recordException=function(t,r){},e})(),ua=fh("OpenTelemetry Context Key SPAN");function ca(e){return e.getValue(ua)||void 0}function Eh(){return ca(Ui.getInstance().active())}function da(e,t){return e.setValue(ua,t)}function Ih(e){return e.deleteValue(ua)}function Sh(e,t){return da(e,new cr(t))}function Zi(e){var t;return(t=ca(e))===null||t===void 0?void 0:t.spanContext()}var Nh=/^([0-9a-f]{32})$/i,Ah=/^[0-9a-f]{16}$/i;function Oh(e){return Nh.test(e)&&e!==qi}function xh(e){return Ah.test(e)&&e!==ji}function Gi(e){return Oh(e.traceId)&&xh(e.spanId)}function Rh(e){return new cr(e)}var Rn=Ui.getInstance(),Bi=(function(){function e(){}return e.prototype.startSpan=function(t,r,n){n===void 0&&(n=Rn.active());var a=!!(r!=null&&r.root);if(a)return new cr;var o=n&&Zi(n);return kh(o)&&Gi(o)?new cr(o):new cr},e.prototype.startActiveSpan=function(t,r,n,a){var o,s,i;if(!(arguments.length<2)){arguments.length===2?i=r:arguments.length===3?(o=r,i=n):(o=r,s=n,i=a);var l=s??Rn.active(),u=this.startSpan(t,o,l),c=da(l,u);return Rn.with(c,i,void 0,u)}},e})();function kh(e){return typeof e=="object"&&typeof e.spanId=="string"&&typeof e.traceId=="string"&&typeof e.traceFlags=="number"}var Ph=new Bi,Ch=(function(){function e(t,r,n,a){this._provider=t,this.name=r,this.version=n,this.options=a}return e.prototype.startSpan=function(t,r,n){return this._getTracer().startSpan(t,r,n)},e.prototype.startActiveSpan=function(t,r,n,a){var o=this._getTracer();return Reflect.apply(o.startActiveSpan,o,arguments)},e.prototype._getTracer=function(){if(this._delegate)return this._delegate;var t=this._provider.getDelegateTracer(this.name,this.version,this.options);return t?(this._delegate=t,this._delegate):Ph},e})(),Dh=(function(){function e(){}return e.prototype.getTracer=function(t,r,n){return new Bi},e})(),zh=new Dh,Uo=(function(){function e(){}return e.prototype.getTracer=function(t,r,n){var a;return(a=this.getDelegateTracer(t,r,n))!==null&&a!==void 0?a:new Ch(this,t,r,n)},e.prototype.getDelegate=function(){var t;return(t=this._delegate)!==null&&t!==void 0?t:zh},e.prototype.setDelegate=function(t){this._delegate=t},e.prototype.getDelegateTracer=function(t,r,n){var a;return(a=this._delegate)===null||a===void 0?void 0:a.getTracer(t,r,n)},e})(),rn;(function(e){e[e.UNSET=0]="UNSET",e[e.OK=1]="OK",e[e.ERROR=2]="ERROR"})(rn||(rn={}));var kn="trace",$h=(function(){function e(){this._proxyTracerProvider=new Uo,this.wrapSpanContext=Rh,this.isSpanContextValid=Gi,this.deleteSpan=Ih,this.getSpan=ca,this.getActiveSpan=Eh,this.getSpanContext=Zi,this.setSpan=da,this.setSpanContext=Sh}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalTracerProvider=function(t){var r=ia(kn,this._proxyTracerProvider,tn.instance());return r&&this._proxyTracerProvider.setDelegate(t),r},e.prototype.getTracerProvider=function(){return _r(kn)||this._proxyTracerProvider},e.prototype.getTracer=function(t,r){return this.getTracerProvider().getTracer(t,r)},e.prototype.disable=function(){la(kn,tn.instance()),this._proxyTracerProvider=new Uo},e})(),Mh=$h.getInstance(),Fh=Object.defineProperty,Lh=(e,t)=>{for(var r in t)Fh(e,r,{get:t[r],enumerable:!0})},Vi="AI_InvalidArgumentError",Hi=`vercel.ai.error.${Vi}`,Uh=Symbol.for(Hi),Ji,et=class extends H{constructor({parameter:e,value:t,message:r}){super({name:Vi,message:`Invalid argument for parameter ${e}: ${r}`}),this[Ji]=!0,this.parameter=e,this.value=t}static isInstance(e){return H.hasMarker(e,Hi)}};Ji=Uh;var Yi="AI_InvalidToolApprovalError",Wi=`vercel.ai.error.${Yi}`,jh=Symbol.for(Wi),Ki,qh=class extends H{constructor({approvalId:e}){super({name:Yi,message:`Tool approval response references unknown approvalId: "${e}". No matching tool-approval-request found in message history.`}),this[Ki]=!0,this.approvalId=e}static isInstance(e){return H.hasMarker(e,Wi)}};Ki=jh;var Xi="AI_InvalidToolInputError",Qi=`vercel.ai.error.${Xi}`,Zh=Symbol.for(Qi),el,pa=class extends H{constructor({toolInput:e,toolName:t,cause:r,message:n=`Invalid input for tool ${t}: ${Wt(r)}`}){super({name:Xi,message:n,cause:r}),this[el]=!0,this.toolInput=e,this.toolName=t}static isInstance(e){return H.hasMarker(e,Qi)}};el=Zh;var tl="AI_ToolCallNotFoundForApprovalError",rl=`vercel.ai.error.${tl}`,Gh=Symbol.for(rl),nl,fa=class extends H{constructor({toolCallId:e,approvalId:t}){super({name:tl,message:`Tool call "${e}" not found for approval request "${t}".`}),this[nl]=!0,this.toolCallId=e,this.approvalId=t}static isInstance(e){return H.hasMarker(e,rl)}};nl=Gh;var al="AI_NoObjectGeneratedError",ol=`vercel.ai.error.${al}`,Bh=Symbol.for(ol),sl,yt=class extends H{constructor({message:e="No object generated.",cause:t,text:r,response:n,usage:a,finishReason:o}){super({name:al,message:e,cause:t}),this[sl]=!0,this.text=r,this.response=n,this.usage=a,this.finishReason=o}static isInstance(e){return H.hasMarker(e,ol)}};sl=Bh;var il="AI_NoOutputGeneratedError",ll=`vercel.ai.error.${il}`,Vh=Symbol.for(ll),ul,cl=class extends H{constructor({message:e="No output generated.",cause:t}={}){super({name:il,message:e,cause:t}),this[ul]=!0}static isInstance(e){return H.hasMarker(e,ll)}};ul=Vh;var dl="AI_NoSuchToolError",pl=`vercel.ai.error.${dl}`,Hh=Symbol.for(pl),fl,Zn=class extends H{constructor({toolName:e,availableTools:t=void 0,message:r=`Model tried to call unavailable tool '${e}'. ${t===void 0?"No tools are available.":`Available tools: ${t.join(", ")}.`}`}){super({name:dl,message:r}),this[fl]=!0,this.toolName=e,this.availableTools=t}static isInstance(e){return H.hasMarker(e,pl)}};fl=Hh;var gl="AI_ToolCallRepairError",ml=`vercel.ai.error.${gl}`,Jh=Symbol.for(ml),hl,Yh=class extends H{constructor({cause:e,originalError:t,message:r=`Error repairing tool call: ${Wt(e)}`}){super({name:gl,message:r,cause:e}),this[hl]=!0,this.originalError=t}static isInstance(e){return H.hasMarker(e,ml)}};hl=Jh;var Wh=class extends H{constructor(e){super({name:"AI_UnsupportedModelVersionError",message:`Unsupported model version ${e.version} for provider "${e.provider}" and model "${e.modelId}". AI SDK 5 only supports models that implement specification version "v2".`}),this.version=e.version,this.provider=e.provider,this.modelId=e.modelId}},yl="AI_InvalidMessageRoleError",vl=`vercel.ai.error.${yl}`,Kh=Symbol.for(vl),_l,Xh=class extends H{constructor({role:e,message:t=`Invalid message role: '${e}'. Must be one of: "system", "user", "assistant", "tool".`}){super({name:yl,message:t}),this[_l]=!0,this.role=e}static isInstance(e){return H.hasMarker(e,vl)}};_l=Kh;var wl="AI_RetryError",Tl=`vercel.ai.error.${wl}`,Qh=Symbol.for(Tl),bl,jo=class extends H{constructor({message:e,reason:t,errors:r}){super({name:wl,message:e}),this[bl]=!0,this.reason=t,this.errors=r,this.lastError=r[r.length-1]}static isInstance(e){return H.hasMarker(e,Tl)}};bl=Qh;function ey({warning:e,provider:t,model:r}){const n=`AI SDK Warning (${t} / ${r}):`;switch(e.type){case"unsupported":{let a=`${n} The feature "${e.feature}" is not supported.`;return e.details&&(a+=` ${e.details}`),a}case"compatibility":{let a=`${n} The feature "${e.feature}" is used in a compatibility mode.`;return e.details&&(a+=` ${e.details}`),a}case"other":return`${n} ${e.message}`;default:return`${n} ${JSON.stringify(e,null,2)}`}}var ty="AI SDK Warning System: To turn off warning logging, set the AI_SDK_LOG_WARNINGS global to false.",qo=!1,ga=e=>{if(e.warnings.length===0)return;const t=globalThis.AI_SDK_LOG_WARNINGS;if(t!==!1){if(typeof t=="function"){t(e);return}qo||(qo=!0,console.info(ty));for(const r of e.warnings)console.warn(ey({warning:r,provider:e.provider,model:e.model}))}};function ry({provider:e,modelId:t}){ga({warnings:[{type:"compatibility",feature:"specificationVersion",details:"Using v2 specification compatibility mode. Some features may not be available."}],provider:e,model:t})}function ny(e){return e.specificationVersion==="v3"?e:(ry({provider:e.provider,modelId:e.modelId}),new Proxy(e,{get(t,r){switch(r){case"specificationVersion":return"v3";case"doGenerate":return async(...n)=>{const a=await t.doGenerate(...n);return{...a,finishReason:El(a.finishReason),usage:Il(a.usage)}};case"doStream":return async(...n)=>{const a=await t.doStream(...n);return{...a,stream:ay(a.stream)}};default:return t[r]}}}))}function ay(e){return e.pipeThrough(new TransformStream({transform(t,r){switch(t.type){case"finish":r.enqueue({...t,finishReason:El(t.finishReason),usage:Il(t.usage)});break;default:r.enqueue(t);break}}}))}function El(e){return{unified:e==="unknown"?"other":e,raw:void 0}}function Il(e){return{inputTokens:{total:e.inputTokens,noCache:void 0,cacheRead:e.cachedInputTokens,cacheWrite:void 0},outputTokens:{total:e.outputTokens,text:void 0,reasoning:e.reasoningTokens}}}function nn(e){if(typeof e!="string"){if(e.specificationVersion!=="v3"&&e.specificationVersion!=="v2"){const t=e;throw new Wh({version:t.specificationVersion,provider:t.provider,modelId:t.modelId})}return ny(e)}return oy().languageModel(e)}function oy(){var e;return(e=globalThis.AI_SDK_DEFAULT_PROVIDER)!=null?e:eh}var sy=[{mediaType:"image/gif",bytesPrefix:[71,73,70]},{mediaType:"image/png",bytesPrefix:[137,80,78,71]},{mediaType:"image/jpeg",bytesPrefix:[255,216]},{mediaType:"image/webp",bytesPrefix:[82,73,70,70,null,null,null,null,87,69,66,80]},{mediaType:"image/bmp",bytesPrefix:[66,77]},{mediaType:"image/tiff",bytesPrefix:[73,73,42,0]},{mediaType:"image/tiff",bytesPrefix:[77,77,0,42]},{mediaType:"image/avif",bytesPrefix:[0,0,0,32,102,116,121,112,97,118,105,102]},{mediaType:"image/heic",bytesPrefix:[0,0,0,32,102,116,121,112,104,101,105,99]}],iy=e=>{const t=typeof e=="string"?na(e):e,r=(t[6]&127)<<21|(t[7]&127)<<14|(t[8]&127)<<7|t[9]&127;return t.slice(r+10)};function ly(e){return typeof e=="string"&&e.startsWith("SUQz")||typeof e!="string"&&e.length>10&&e[0]===73&&e[1]===68&&e[2]===51?iy(e):e}function uy({data:e,signatures:t}){const r=ly(e),n=typeof r=="string"?na(r.substring(0,Math.min(r.length,24))):r;for(const a of t)if(n.length>=a.bytesPrefix.length&&a.bytesPrefix.every((o,s)=>o===null||n[s]===o))return a.mediaType}var Sl="6.0.11",cy=async({url:e})=>{var t;const r=e.toString();try{const n=await fetch(r,{headers:Ar({},`ai-sdk/${Sl}`,oa())});if(!n.ok)throw new En({url:r,statusCode:n.status,statusText:n.statusText});return{data:new Uint8Array(await n.arrayBuffer()),mediaType:(t=n.headers.get("content-type"))!=null?t:void 0}}catch(n){throw En.isInstance(n)?n:new En({url:r,cause:n})}},dy=(e=cy)=>t=>Promise.all(t.map(async r=>r.isUrlSupportedByModel?null:e(r)));function py(e){try{const[t,r]=e.split(",");return{mediaType:t.split(";")[0].split(":")[1],base64Content:r}}catch{return{mediaType:void 0,base64Content:void 0}}}var Nl=Pe([R(),Wr(Uint8Array),Wr(ArrayBuffer),ug(e=>{var t,r;return(r=(t=globalThis.Buffer)==null?void 0:t.isBuffer(e))!=null?r:!1},{message:"Must be a Buffer"})]);function Al(e){if(e instanceof Uint8Array)return{data:e,mediaType:void 0};if(e instanceof ArrayBuffer)return{data:new Uint8Array(e),mediaType:void 0};if(typeof e=="string")try{e=new URL(e)}catch{}if(e instanceof URL&&e.protocol==="data:"){const{mediaType:t,base64Content:r}=py(e.toString());if(t==null||r==null)throw new H({name:"InvalidDataContentError",message:`Invalid data URL format in content ${e.toString()}`});return{data:r,mediaType:t}}return{data:e,mediaType:void 0}}function fy(e){return typeof e=="string"?e:e instanceof ArrayBuffer?Qr(new Uint8Array(e)):Qr(e)}function wr(e){return e===void 0?[]:Array.isArray(e)?e:[e]}async function Ol({prompt:e,supportedUrls:t,download:r=dy()}){const n=await my(e.messages,r,t),a=[...e.system!=null?typeof e.system=="string"?[{role:"system",content:e.system}]:wr(e.system).map(s=>({role:"system",content:s.content,providerOptions:s.providerOptions})):[],...e.messages.map(s=>gy({message:s,downloadedAssets:n}))],o=[];for(const s of a){if(s.role!=="tool"){o.push(s);continue}const i=o.at(-1);(i==null?void 0:i.role)==="tool"?i.content.push(...s.content):o.push(s)}return o}function gy({message:e,downloadedAssets:t}){const r=e.role;switch(r){case"system":return{role:"system",content:e.content,providerOptions:e.providerOptions};case"user":return typeof e.content=="string"?{role:"user",content:[{type:"text",text:e.content}],providerOptions:e.providerOptions}:{role:"user",content:e.content.map(n=>hy(n,t)).filter(n=>n.type!=="text"||n.text!==""),providerOptions:e.providerOptions};case"assistant":return typeof e.content=="string"?{role:"assistant",content:[{type:"text",text:e.content}],providerOptions:e.providerOptions}:{role:"assistant",content:e.content.filter(n=>n.type!=="text"||n.text!==""||n.providerOptions!=null).filter(n=>n.type!=="tool-approval-request").map(n=>{const a=n.providerOptions;switch(n.type){case"file":{const{data:o,mediaType:s}=Al(n.data);return{type:"file",data:o,filename:n.filename,mediaType:s??n.mediaType,providerOptions:a}}case"reasoning":return{type:"reasoning",text:n.text,providerOptions:a};case"text":return{type:"text",text:n.text,providerOptions:a};case"tool-call":return{type:"tool-call",toolCallId:n.toolCallId,toolName:n.toolName,input:n.input,providerExecuted:n.providerExecuted,providerOptions:a};case"tool-result":return{type:"tool-result",toolCallId:n.toolCallId,toolName:n.toolName,output:Zo(n.output),providerOptions:a}}}),providerOptions:e.providerOptions};case"tool":return{role:"tool",content:e.content.filter(n=>n.type!=="tool-approval-response"||n.providerExecuted).map(n=>{switch(n.type){case"tool-result":return{type:"tool-result",toolCallId:n.toolCallId,toolName:n.toolName,output:Zo(n.output),providerOptions:n.providerOptions};case"tool-approval-response":return{type:"tool-approval-response",approvalId:n.approvalId,approved:n.approved,reason:n.reason}}}),providerOptions:e.providerOptions};default:{const n=r;throw new Xh({role:n})}}}async function my(e,t,r){const n=e.filter(o=>o.role==="user").map(o=>o.content).filter(o=>Array.isArray(o)).flat().filter(o=>o.type==="image"||o.type==="file").map(o=>{var s;const i=(s=o.mediaType)!=null?s:o.type==="image"?"image/*":void 0;let l=o.type==="image"?o.image:o.data;if(typeof l=="string")try{l=new URL(l)}catch{}return{mediaType:i,data:l}}).filter(o=>o.data instanceof URL).map(o=>({url:o.data,isUrlSupportedByModel:o.mediaType!=null&&bg({url:o.data.toString(),mediaType:o.mediaType,supportedUrls:r})})),a=await t(n);return Object.fromEntries(a.map((o,s)=>o==null?null:[n[s].url.toString(),{data:o.data,mediaType:o.mediaType}]).filter(o=>o!=null))}function hy(e,t){var r;if(e.type==="text")return{type:"text",text:e.text,providerOptions:e.providerOptions};let n;const a=e.type;switch(a){case"image":n=e.image;break;case"file":n=e.data;break;default:throw new Error(`Unsupported part type: ${a}`)}const{data:o,mediaType:s}=Al(n);let i=s??e.mediaType,l=o;if(l instanceof URL){const u=t[l.toString()];u&&(l=u.data,i??(i=u.mediaType))}switch(a){case"image":return(l instanceof Uint8Array||typeof l=="string")&&(i=(r=uy({data:l,signatures:sy}))!=null?r:i),{type:"file",mediaType:i??"image/*",filename:void 0,data:l,providerOptions:e.providerOptions};case"file":{if(i==null)throw new Error("Media type is missing for file part");return{type:"file",mediaType:i,filename:e.filename,data:l,providerOptions:e.providerOptions}}}}function Zo(e){return e.type!=="content"?e:{type:"content",value:e.value.map(t=>t.type!=="media"?t:t.mediaType.startsWith("image/")?{type:"image-data",data:t.data,mediaType:t.mediaType}:{type:"file-data",data:t.data,mediaType:t.mediaType})}}async function dr({toolCallId:e,input:t,output:r,tool:n,errorMode:a}){return a==="text"?{type:"error-text",value:Wt(r)}:a==="json"?{type:"error-json",value:Go(r)}:n!=null&&n.toModelOutput?await n.toModelOutput({toolCallId:e,input:t,output:r}):typeof r=="string"?{type:"text",value:r}:{type:"json",value:Go(r)}}function Go(e){return e===void 0?null:e}function Gn({maxOutputTokens:e,temperature:t,topP:r,topK:n,presencePenalty:a,frequencyPenalty:o,seed:s,stopSequences:i}){if(e!=null){if(!Number.isInteger(e))throw new et({parameter:"maxOutputTokens",value:e,message:"maxOutputTokens must be an integer"});if(e<1)throw new et({parameter:"maxOutputTokens",value:e,message:"maxOutputTokens must be >= 1"})}if(t!=null&&typeof t!="number")throw new et({parameter:"temperature",value:t,message:"temperature must be a number"});if(r!=null&&typeof r!="number")throw new et({parameter:"topP",value:r,message:"topP must be a number"});if(n!=null&&typeof n!="number")throw new et({parameter:"topK",value:n,message:"topK must be a number"});if(a!=null&&typeof a!="number")throw new et({parameter:"presencePenalty",value:a,message:"presencePenalty must be a number"});if(o!=null&&typeof o!="number")throw new et({parameter:"frequencyPenalty",value:o,message:"frequencyPenalty must be a number"});if(s!=null&&!Number.isInteger(s))throw new et({parameter:"seed",value:s,message:"seed must be an integer"});return{maxOutputTokens:e,temperature:t,topP:r,topK:n,presencePenalty:a,frequencyPenalty:o,stopSequences:i,seed:s}}function yy(e){return e!=null&&Object.keys(e).length>0}async function xl({tools:e,toolChoice:t,activeTools:r}){if(!yy(e))return{tools:void 0,toolChoice:void 0};const n=r!=null?Object.entries(e).filter(([o])=>r.includes(o)):Object.entries(e),a=[];for(const[o,s]of n){const i=s.type;switch(i){case void 0:case"dynamic":case"function":a.push({type:"function",name:o,description:s.description,inputSchema:await Qt(s.inputSchema).jsonSchema,...s.inputExamples!=null?{inputExamples:s.inputExamples}:{},providerOptions:s.providerOptions,...s.strict!=null?{strict:s.strict}:{}});break;case"provider":a.push({type:"provider",name:o,id:s.id,args:s.args});break;default:{const l=i;throw new Error(`Unsupported tool type: ${l}`)}}}return{tools:a,toolChoice:t==null?{type:"auto"}:typeof t=="string"?{type:t}:{type:"tool",toolName:t.toolName}}}var Tr=lg(()=>Pe([Cf(),R(),Yr(),ta(),wt(R(),Tr.optional()),Ue(Tr)])),ye=wt(R(),wt(R(),Tr.optional())),Rl=G({type:ee("text"),text:R(),providerOptions:ye.optional()}),vy=G({type:ee("image"),image:Pe([Nl,Wr(URL)]),mediaType:R().optional(),providerOptions:ye.optional()}),kl=G({type:ee("file"),data:Pe([Nl,Wr(URL)]),filename:R().optional(),mediaType:R(),providerOptions:ye.optional()}),_y=G({type:ee("reasoning"),text:R(),providerOptions:ye.optional()}),wy=G({type:ee("tool-call"),toolCallId:R(),toolName:R(),input:Rt(),providerOptions:ye.optional(),providerExecuted:ta().optional()}),Ty=jf("type",[G({type:ee("text"),value:R(),providerOptions:ye.optional()}),G({type:ee("json"),value:Tr,providerOptions:ye.optional()}),G({type:ee("execution-denied"),reason:R().optional(),providerOptions:ye.optional()}),G({type:ee("error-text"),value:R(),providerOptions:ye.optional()}),G({type:ee("error-json"),value:Tr,providerOptions:ye.optional()}),G({type:ee("content"),value:Ue(Pe([G({type:ee("text"),text:R(),providerOptions:ye.optional()}),G({type:ee("media"),data:R(),mediaType:R()}),G({type:ee("file-data"),data:R(),mediaType:R(),filename:R().optional(),providerOptions:ye.optional()}),G({type:ee("file-url"),url:R(),providerOptions:ye.optional()}),G({type:ee("file-id"),fileId:Pe([R(),wt(R(),R())]),providerOptions:ye.optional()}),G({type:ee("image-data"),data:R(),mediaType:R(),providerOptions:ye.optional()}),G({type:ee("image-url"),url:R(),providerOptions:ye.optional()}),G({type:ee("image-file-id"),fileId:Pe([R(),wt(R(),R())]),providerOptions:ye.optional()}),G({type:ee("custom"),providerOptions:ye.optional()})]))})]),Pl=G({type:ee("tool-result"),toolCallId:R(),toolName:R(),output:Ty,providerOptions:ye.optional()}),by=G({type:ee("tool-approval-request"),approvalId:R(),toolCallId:R()}),Ey=G({type:ee("tool-approval-response"),approvalId:R(),approved:ta(),reason:R().optional()}),Iy=G({role:ee("system"),content:R(),providerOptions:ye.optional()}),Sy=G({role:ee("user"),content:Pe([R(),Ue(Pe([Rl,vy,kl]))]),providerOptions:ye.optional()}),Ny=G({role:ee("assistant"),content:Pe([R(),Ue(Pe([Rl,kl,_y,wy,Pl,by]))]),providerOptions:ye.optional()}),Ay=G({role:ee("tool"),content:Ue(Pe([Pl,Ey])),providerOptions:ye.optional()}),Oy=Pe([Iy,Sy,Ny,Ay]);async function Cl(e){if(e.prompt==null&&e.messages==null)throw new qt({prompt:e,message:"prompt or messages must be defined"});if(e.prompt!=null&&e.messages!=null)throw new qt({prompt:e,message:"prompt and messages cannot be defined at the same time"});if(e.system!=null&&typeof e.system!="string"&&!wr(e.system).every(n=>typeof n=="object"&&n!==null&&"role"in n&&n.role==="system"))throw new qt({prompt:e,message:"system must be a string, SystemModelMessage, or array of SystemModelMessage"});let t;if(e.prompt!=null&&typeof e.prompt=="string")t=[{role:"user",content:e.prompt}];else if(e.prompt!=null&&Array.isArray(e.prompt))t=e.prompt;else if(e.messages!=null)t=e.messages;else throw new qt({prompt:e,message:"prompt or messages must be defined"});if(t.length===0)throw new qt({prompt:e,message:"messages must not be empty"});const r=await rt({value:t,schema:Ue(Oy)});if(!r.success)throw new qt({prompt:e,message:"The messages do not match the ModelMessage[] schema.",cause:r.error});return{messages:t,system:e.system}}function Dl(e){if(!sa.isInstance(e))return e;const t=(process==null?void 0:process.env.NODE_ENV)==="production",r="https://ai-sdk.dev/unauthenticated-ai-gateway";return t?new H({name:"GatewayError",message:`Unauthenticated. Configure AI_GATEWAY_API_KEY or use a provider module. Learn more: ${r}`}):Object.assign(new Error(`\x1B[1m\x1B[31mUnauthenticated request to AI Gateway.\x1B[0m
|
|
64
|
+
Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.`,new zi({message:s,statusCode:a,cause:o})}},Di="GatewayInvalidRequestError",xm=`vercel.ai.gateway.error.${Di}`,To=Symbol.for(xm),bo,Eo,km=class extends(Eo=qe,bo=To,Eo){constructor({message:e="Invalid request",statusCode:t=400,cause:r}={}){super({message:e,statusCode:t,cause:r}),this[bo]=!0,this.name=Di,this.type="invalid_request_error"}static isInstance(e){return qe.hasMarker(e)&&To in e}},$i="GatewayRateLimitError",Pm=`vercel.ai.gateway.error.${$i}`,Io=Symbol.for(Pm),So,Ao,Cm=class extends(Ao=qe,So=Io,Ao){constructor({message:e="Rate limit exceeded",statusCode:t=429,cause:r}={}){super({message:e,statusCode:t,cause:r}),this[So]=!0,this.name=$i,this.type="rate_limit_exceeded"}static isInstance(e){return qe.hasMarker(e)&&Io in e}},Mi="GatewayModelNotFoundError",zm=`vercel.ai.gateway.error.${Mi}`,No=Symbol.for(zm),Dm=Xt(()=>Ct(G({modelId:x()}))),Oo,Ro,$m=class extends(Ro=qe,Oo=No,Ro){constructor({message:e="Model not found",statusCode:t=404,modelId:r,cause:n}={}){super({message:e,statusCode:t,cause:n}),this[Oo]=!0,this.name=Mi,this.type="model_not_found",this.modelId=r}static isInstance(e){return qe.hasMarker(e)&&No in e}},Fi="GatewayInternalServerError",Mm=`vercel.ai.gateway.error.${Fi}`,xo=Symbol.for(Mm),ko,Po,Co=class extends(Po=qe,ko=xo,Po){constructor({message:e="Internal server error",statusCode:t=500,cause:r}={}){super({message:e,statusCode:t,cause:r}),this[ko]=!0,this.name=Fi,this.type="internal_server_error"}static isInstance(e){return qe.hasMarker(e)&&xo in e}},Li="GatewayResponseError",Fm=`vercel.ai.gateway.error.${Li}`,zo=Symbol.for(Fm),Do,$o,Lm=class extends($o=qe,Do=zo,$o){constructor({message:e="Invalid response from Gateway",statusCode:t=502,response:r,validationError:n,cause:a}={}){super({message:e,statusCode:t,cause:a}),this[Do]=!0,this.name=Li,this.type="response_error",this.response=r,this.validationError=n}static isInstance(e){return qe.hasMarker(e)&&zo in e}};async function Mo({response:e,statusCode:t,defaultMessage:r="Gateway request failed",cause:n,authMethod:a}){const o=await rt({value:e,schema:Um});if(!o.success)return new Lm({message:`Invalid error response format: ${r}`,statusCode:t,response:e,validationError:o.error,cause:n});const s=o.value,i=s.error.type,l=s.error.message;switch(i){case"authentication_error":return ia.createContextualError({apiKeyProvided:a==="api-key",oidcTokenProvided:a==="oidc",statusCode:t,cause:n});case"invalid_request_error":return new km({message:l,statusCode:t,cause:n});case"rate_limit_exceeded":return new Cm({message:l,statusCode:t,cause:n});case"model_not_found":{const u=await rt({value:s.error.param,schema:Dm});return new $m({message:l,statusCode:t,modelId:u.success?u.value.modelId:void 0,cause:n})}case"internal_server_error":return new Co({message:l,statusCode:t,cause:n});default:return new Co({message:l,statusCode:t,cause:n})}}var Um=Xt(()=>Ct(G({error:G({message:x(),type:x().nullish(),param:xt().nullish(),code:Pe([x(),Wr()]).nullish()})})));function Tt(e,t){var r;return qe.isInstance(e)?e:$e.isInstance(e)?Mo({response:jm(e),statusCode:(r=e.statusCode)!=null?r:500,defaultMessage:"Gateway request failed",cause:e,authMethod:t}):Mo({response:{},statusCode:500,defaultMessage:e instanceof Error?`Gateway request failed: ${e.message}`:"Unknown Gateway error",cause:e,authMethod:t})}function jm(e){if(e.data!==void 0)return e.data;if(e.responseBody!=null)try{return JSON.parse(e.responseBody)}catch{return e.responseBody}return{}}var Ui="ai-gateway-auth-method";async function Yt(e){const t=await rt({value:e[Ui],schema:qm});return t.success?t.value:void 0}var qm=Xt(()=>Ct(Pe([ee("api-key"),ee("oidc")]))),Fo=class{constructor(e){this.config=e}async getAvailableModels(){try{const{value:e}=await uo({url:`${this.config.baseURL}/config`,headers:await Ge(this.config.headers()),successfulResponseHandler:yr(Zm),failedResponseHandler:Jt({errorSchema:ht(),errorToMessage:t=>t}),fetch:this.config.fetch});return e}catch(e){throw await Tt(e)}}async getCredits(){try{const e=new URL(this.config.baseURL),{value:t}=await uo({url:`${e.origin}/v1/credits`,headers:await Ge(this.config.headers()),successfulResponseHandler:yr(Gm),failedResponseHandler:Jt({errorSchema:ht(),errorToMessage:r=>r}),fetch:this.config.fetch});return t}catch(e){throw await Tt(e)}}},Zm=Xt(()=>Ct(G({models:Ue(G({id:x(),name:x(),description:x().nullish(),pricing:G({input:x(),output:x(),input_cache_read:x().nullish(),input_cache_write:x().nullish()}).transform(({input:e,output:t,input_cache_read:r,input_cache_write:n})=>({input:e,output:t,...r?{cachedInputTokens:r}:{},...n?{cacheCreationInputTokens:n}:{}})).nullish(),specification:G({specificationVersion:ee("v3"),provider:x(),modelId:x()}),modelType:vi(["language","embedding","image"]).nullish()}))}))),Gm=Xt(()=>Ct(G({balance:x(),total_used:x()}).transform(({balance:e,total_used:t})=>({balance:e,totalUsed:t})))),Bm=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v3",this.supportedUrls={"*/*":[/.*/]}}get provider(){return this.config.provider}async getArgs(e){const{abortSignal:t,...r}=e;return{args:this.maybeEncodeFileParts(r),warnings:[]}}async doGenerate(e){const{args:t,warnings:r}=await this.getArgs(e),{abortSignal:n}=e,a=await Ge(this.config.headers());try{const{responseHeaders:o,value:s,rawValue:i}=await tn({url:this.getUrl(),headers:Qr(a,e.headers,this.getModelConfigHeaders(this.modelId,!1),await Ge(this.config.o11yHeaders)),body:t,successfulResponseHandler:yr(ht()),failedResponseHandler:Jt({errorSchema:ht(),errorToMessage:l=>l}),...n&&{abortSignal:n},fetch:this.config.fetch});return{...s,request:{body:t},response:{headers:o,body:i},warnings:r}}catch(o){throw await Tt(o,await Yt(a))}}async doStream(e){const{args:t,warnings:r}=await this.getArgs(e),{abortSignal:n}=e,a=await Ge(this.config.headers());try{const{value:o,responseHeaders:s}=await tn({url:this.getUrl(),headers:Qr(a,e.headers,this.getModelConfigHeaders(this.modelId,!0),await Ge(this.config.o11yHeaders)),body:t,successfulResponseHandler:bm(ht()),failedResponseHandler:Jt({errorSchema:ht(),errorToMessage:i=>i}),...n&&{abortSignal:n},fetch:this.config.fetch});return{stream:o.pipeThrough(new TransformStream({start(i){r.length>0&&i.enqueue({type:"stream-start",warnings:r})},transform(i,l){if(i.success){const u=i.value;if(u.type==="raw"&&!e.includeRawChunks)return;u.type==="response-metadata"&&u.timestamp&&typeof u.timestamp=="string"&&(u.timestamp=new Date(u.timestamp)),l.enqueue(u)}else l.error(i.error)}})),request:{body:t},response:{headers:s}}}catch(o){throw await Tt(o,await Yt(a))}}isFilePart(e){return e&&typeof e=="object"&&"type"in e&&e.type==="file"}maybeEncodeFileParts(e){for(const t of e.prompt)for(const r of t.content)if(this.isFilePart(r)){const n=r;if(n.data instanceof Uint8Array){const a=Uint8Array.from(n.data),o=Buffer.from(a).toString("base64");n.data=new URL(`data:${n.mediaType||"application/octet-stream"};base64,${o}`)}}return e}getUrl(){return`${this.config.baseURL}/language-model`}getModelConfigHeaders(e,t){return{"ai-language-model-specification-version":"3","ai-language-model-id":e,"ai-language-model-streaming":String(t)}}},Vm=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v3",this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0}get provider(){return this.config.provider}async doEmbed({values:e,headers:t,abortSignal:r,providerOptions:n}){var a;const o=await Ge(this.config.headers());try{const{responseHeaders:s,value:i,rawValue:l}=await tn({url:this.getUrl(),headers:Qr(o,t??{},this.getModelConfigHeaders(),await Ge(this.config.o11yHeaders)),body:{values:e,...n?{providerOptions:n}:{}},successfulResponseHandler:yr(Hm),failedResponseHandler:Jt({errorSchema:ht(),errorToMessage:u=>u}),...r&&{abortSignal:r},fetch:this.config.fetch});return{embeddings:i.embeddings,usage:(a=i.usage)!=null?a:void 0,providerMetadata:i.providerMetadata,response:{headers:s,body:l},warnings:[]}}catch(s){throw await Tt(s,await Yt(o))}}getUrl(){return`${this.config.baseURL}/embedding-model`}getModelConfigHeaders(){return{"ai-embedding-model-specification-version":"3","ai-model-id":this.modelId}}},Hm=Xt(()=>Ct(G({embeddings:Ue(Ue(Wr())),usage:G({tokens:Wr()}).nullish(),providerMetadata:wt(x(),wt(x(),xt())).optional()}))),Jm=class{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion="v3",this.maxImagesPerCall=Number.MAX_SAFE_INTEGER}get provider(){return this.config.provider}async doGenerate({prompt:e,n:t,size:r,aspectRatio:n,seed:a,files:o,mask:s,providerOptions:i,headers:l,abortSignal:u}){var c;const p=await Ge(this.config.headers());try{const{responseHeaders:d,value:v,rawValue:E}=await tn({url:this.getUrl(),headers:Qr(p,l??{},this.getModelConfigHeaders(),await Ge(this.config.o11yHeaders)),body:{prompt:e,n:t,...r&&{size:r},...n&&{aspectRatio:n},...a&&{seed:a},...i&&{providerOptions:i},...o&&{files:o.map(w=>Lo(w))},...s&&{mask:Lo(s)}},successfulResponseHandler:yr(Wm),failedResponseHandler:Jt({errorSchema:ht(),errorToMessage:w=>w}),...u&&{abortSignal:u},fetch:this.config.fetch});return{images:v.images,warnings:(c=v.warnings)!=null?c:[],providerMetadata:v.providerMetadata,response:{timestamp:new Date,modelId:this.modelId,headers:d}}}catch(d){throw Tt(d,await Yt(p))}}getUrl(){return`${this.config.baseURL}/image-model`}getModelConfigHeaders(){return{"ai-image-model-specification-version":"3","ai-model-id":this.modelId}}};function Lo(e){return e.type==="file"&&e.data instanceof Uint8Array?{...e,data:en(e.data)}:e}var Ym=G({images:Ue(xt()).optional()}).catchall(xt()),Wm=G({images:Ue(x()),warnings:Ue(G({type:ee("other"),message:x()})).optional(),providerMetadata:wt(x(),Ym).optional()});async function Km(){var e;return(e=ki.getContext().headers)==null?void 0:e["x-vercel-id"]}var Xm="3.0.8",Qm="0.0.1";function eh(e={}){var t,r;let n=null,a=null;const o=(t=e.metadataCacheRefreshMillis)!=null?t:1e3*60*5;let s=0;const i=(r=Em(e.baseURL))!=null?r:"https://ai-gateway.vercel.sh/v3/ai",l=async()=>{try{const w=await rh(e);return Or({Authorization:`Bearer ${w.token}`,"ai-gateway-protocol-version":Qm,[Ui]:w.authMethod,...e.headers},`ai-sdk/gateway/${Xm}`)}catch(w){throw ia.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:w})}},u=()=>{const w=qr({settingValue:void 0,environmentVariableName:"VERCEL_DEPLOYMENT_ID"}),I=qr({settingValue:void 0,environmentVariableName:"VERCEL_ENV"}),P=qr({settingValue:void 0,environmentVariableName:"VERCEL_REGION"});return async()=>{const C=await Km();return{...w&&{"ai-o11y-deployment-id":w},...I&&{"ai-o11y-environment":I},...P&&{"ai-o11y-region":P},...C&&{"ai-o11y-request-id":C}}}},c=w=>new Bm(w,{provider:"gateway",baseURL:i,headers:l,fetch:e.fetch,o11yHeaders:u()}),p=async()=>{var w,I,P;const C=(P=(I=(w=e._internal)==null?void 0:w.currentDate)==null?void 0:I.call(w).getTime())!=null?P:Date.now();return(!n||C-s>o)&&(s=C,n=new Fo({baseURL:i,headers:l,fetch:e.fetch}).getAvailableModels().then(h=>(a=h,h)).catch(async h=>{throw await Tt(h,await Yt(await l()))})),a?Promise.resolve(a):n},d=async()=>new Fo({baseURL:i,headers:l,fetch:e.fetch}).getCredits().catch(async w=>{throw await Tt(w,await Yt(await l()))}),v=function(w){if(new.target)throw new Error("The Gateway Provider model function cannot be called with the new keyword.");return c(w)};v.specificationVersion="v3",v.getAvailableModels=p,v.getCredits=d,v.imageModel=w=>new Jm(w,{provider:"gateway",baseURL:i,headers:l,fetch:e.fetch,o11yHeaders:u()}),v.languageModel=c;const E=w=>new Vm(w,{provider:"gateway",baseURL:i,headers:l,fetch:e.fetch,o11yHeaders:u()});return v.embeddingModel=E,v.textEmbeddingModel=E,v}var th=eh();async function rh(e){const t=qr({settingValue:e.apiKey,environmentVariableName:"AI_GATEWAY_API_KEY"});return t?{token:t,authMethod:"api-key"}:{token:await ki.getVercelOidcToken(),authMethod:"oidc"}}var nh=typeof globalThis=="object"?globalThis:typeof self=="object"?self:typeof window=="object"?window:typeof global=="object"?global:{},Ot="1.9.0",Uo=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;function ah(e){var t=new Set([e]),r=new Set,n=e.match(Uo);if(!n)return function(){return!1};var a={major:+n[1],minor:+n[2],patch:+n[3],prerelease:n[4]};if(a.prerelease!=null)return function(l){return l===e};function o(i){return r.add(i),!1}function s(i){return t.add(i),!0}return function(l){if(t.has(l))return!0;if(r.has(l))return!1;var u=l.match(Uo);if(!u)return o(l);var c={major:+u[1],minor:+u[2],patch:+u[3],prerelease:u[4]};return c.prerelease!=null||a.major!==c.major?o(l):a.major===0?a.minor===c.minor&&a.patch<=c.patch?s(l):o(l):a.minor<=c.minor?s(l):o(l)}}var oh=ah(Ot),sh=Ot.split(".")[0],vr=Symbol.for("opentelemetry.js.api."+sh),_r=nh;function la(e,t,r,n){var a;n===void 0&&(n=!1);var o=_r[vr]=(a=_r[vr])!==null&&a!==void 0?a:{version:Ot};if(!n&&o[e]){var s=new Error("@opentelemetry/api: Attempted duplicate registration of API: "+e);return r.error(s.stack||s.message),!1}if(o.version!==Ot){var s=new Error("@opentelemetry/api: Registration of version v"+o.version+" for "+e+" does not match previously registered API v"+Ot);return r.error(s.stack||s.message),!1}return o[e]=t,r.debug("@opentelemetry/api: Registered a global for "+e+" v"+Ot+"."),!0}function wr(e){var t,r,n=(t=_r[vr])===null||t===void 0?void 0:t.version;if(!(!n||!oh(n)))return(r=_r[vr])===null||r===void 0?void 0:r[e]}function ua(e,t){t.debug("@opentelemetry/api: Unregistering a global for "+e+" v"+Ot+".");var r=_r[vr];r&&delete r[e]}var ih=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],s;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(i){s={error:i}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return o},lh=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n<a;n++)(o||!(n in t))&&(o||(o=Array.prototype.slice.call(t,0,n)),o[n]=t[n]);return e.concat(o||Array.prototype.slice.call(t))},uh=(function(){function e(t){this._namespace=t.namespace||"DiagComponentLogger"}return e.prototype.debug=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return lr("debug",this._namespace,t)},e.prototype.error=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return lr("error",this._namespace,t)},e.prototype.info=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return lr("info",this._namespace,t)},e.prototype.warn=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return lr("warn",this._namespace,t)},e.prototype.verbose=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return lr("verbose",this._namespace,t)},e})();function lr(e,t,r){var n=wr("diag");if(n)return r.unshift(t),n[e].apply(n,lh([],ih(r),!1))}var Le;(function(e){e[e.NONE=0]="NONE",e[e.ERROR=30]="ERROR",e[e.WARN=50]="WARN",e[e.INFO=60]="INFO",e[e.DEBUG=70]="DEBUG",e[e.VERBOSE=80]="VERBOSE",e[e.ALL=9999]="ALL"})(Le||(Le={}));function ch(e,t){e<Le.NONE?e=Le.NONE:e>Le.ALL&&(e=Le.ALL),t=t||{};function r(n,a){var o=t[n];return typeof o=="function"&&e>=a?o.bind(t):function(){}}return{error:r("error",Le.ERROR),warn:r("warn",Le.WARN),info:r("info",Le.INFO),debug:r("debug",Le.DEBUG),verbose:r("verbose",Le.VERBOSE)}}var dh=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],s;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(i){s={error:i}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return o},ph=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n<a;n++)(o||!(n in t))&&(o||(o=Array.prototype.slice.call(t,0,n)),o[n]=t[n]);return e.concat(o||Array.prototype.slice.call(t))},fh="diag",rn=(function(){function e(){function t(a){return function(){for(var o=[],s=0;s<arguments.length;s++)o[s]=arguments[s];var i=wr("diag");if(i)return i[a].apply(i,ph([],dh(o),!1))}}var r=this,n=function(a,o){var s,i,l;if(o===void 0&&(o={logLevel:Le.INFO}),a===r){var u=new Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");return r.error((s=u.stack)!==null&&s!==void 0?s:u.message),!1}typeof o=="number"&&(o={logLevel:o});var c=wr("diag"),p=ch((i=o.logLevel)!==null&&i!==void 0?i:Le.INFO,a);if(c&&!o.suppressOverrideMessage){var d=(l=new Error().stack)!==null&&l!==void 0?l:"<failed to generate stacktrace>";c.warn("Current logger will be overwritten from "+d),p.warn("Current logger will overwrite one already registered from "+d)}return la("diag",p,r,!0)};r.setLogger=n,r.disable=function(){ua(fh,r)},r.createComponentLogger=function(a){return new uh(a)},r.verbose=t("verbose"),r.debug=t("debug"),r.info=t("info"),r.warn=t("warn"),r.error=t("error")}return e.instance=function(){return this._instance||(this._instance=new e),this._instance},e})();function gh(e){return Symbol.for(e)}var mh=(function(){function e(t){var r=this;r._currentContext=t?new Map(t):new Map,r.getValue=function(n){return r._currentContext.get(n)},r.setValue=function(n,a){var o=new e(r._currentContext);return o._currentContext.set(n,a),o},r.deleteValue=function(n){var a=new e(r._currentContext);return a._currentContext.delete(n),a}}return e})(),hh=new mh,yh=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],s;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(i){s={error:i}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return o},vh=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n<a;n++)(o||!(n in t))&&(o||(o=Array.prototype.slice.call(t,0,n)),o[n]=t[n]);return e.concat(o||Array.prototype.slice.call(t))},_h=(function(){function e(){}return e.prototype.active=function(){return hh},e.prototype.with=function(t,r,n){for(var a=[],o=3;o<arguments.length;o++)a[o-3]=arguments[o];return r.call.apply(r,vh([n],yh(a),!1))},e.prototype.bind=function(t,r){return r},e.prototype.enable=function(){return this},e.prototype.disable=function(){return this},e})(),wh=function(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),a,o=[],s;try{for(;(t===void 0||t-- >0)&&!(a=n.next()).done;)o.push(a.value)}catch(i){s={error:i}}finally{try{a&&!a.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return o},Th=function(e,t,r){if(r||arguments.length===2)for(var n=0,a=t.length,o;n<a;n++)(o||!(n in t))&&(o||(o=Array.prototype.slice.call(t,0,n)),o[n]=t[n]);return e.concat(o||Array.prototype.slice.call(t))},xn="context",bh=new _h,ji=(function(){function e(){}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalContextManager=function(t){return la(xn,t,rn.instance())},e.prototype.active=function(){return this._getContextManager().active()},e.prototype.with=function(t,r,n){for(var a,o=[],s=3;s<arguments.length;s++)o[s-3]=arguments[s];return(a=this._getContextManager()).with.apply(a,Th([t,r,n],wh(o),!1))},e.prototype.bind=function(t,r){return this._getContextManager().bind(t,r)},e.prototype._getContextManager=function(){return wr(xn)||bh},e.prototype.disable=function(){this._getContextManager().disable(),ua(xn,rn.instance())},e})(),Zn;(function(e){e[e.NONE=0]="NONE",e[e.SAMPLED=1]="SAMPLED"})(Zn||(Zn={}));var qi="0000000000000000",Zi="00000000000000000000000000000000",Eh={traceId:Zi,spanId:qi,traceFlags:Zn.NONE},dr=(function(){function e(t){t===void 0&&(t=Eh),this._spanContext=t}return e.prototype.spanContext=function(){return this._spanContext},e.prototype.setAttribute=function(t,r){return this},e.prototype.setAttributes=function(t){return this},e.prototype.addEvent=function(t,r){return this},e.prototype.addLink=function(t){return this},e.prototype.addLinks=function(t){return this},e.prototype.setStatus=function(t){return this},e.prototype.updateName=function(t){return this},e.prototype.end=function(t){},e.prototype.isRecording=function(){return!1},e.prototype.recordException=function(t,r){},e})(),ca=gh("OpenTelemetry Context Key SPAN");function da(e){return e.getValue(ca)||void 0}function Ih(){return da(ji.getInstance().active())}function pa(e,t){return e.setValue(ca,t)}function Sh(e){return e.deleteValue(ca)}function Ah(e,t){return pa(e,new dr(t))}function Gi(e){var t;return(t=da(e))===null||t===void 0?void 0:t.spanContext()}var Nh=/^([0-9a-f]{32})$/i,Oh=/^[0-9a-f]{16}$/i;function Rh(e){return Nh.test(e)&&e!==Zi}function xh(e){return Oh.test(e)&&e!==qi}function Bi(e){return Rh(e.traceId)&&xh(e.spanId)}function kh(e){return new dr(e)}var kn=ji.getInstance(),Vi=(function(){function e(){}return e.prototype.startSpan=function(t,r,n){n===void 0&&(n=kn.active());var a=!!(r!=null&&r.root);if(a)return new dr;var o=n&&Gi(n);return Ph(o)&&Bi(o)?new dr(o):new dr},e.prototype.startActiveSpan=function(t,r,n,a){var o,s,i;if(!(arguments.length<2)){arguments.length===2?i=r:arguments.length===3?(o=r,i=n):(o=r,s=n,i=a);var l=s??kn.active(),u=this.startSpan(t,o,l),c=pa(l,u);return kn.with(c,i,void 0,u)}},e})();function Ph(e){return typeof e=="object"&&typeof e.spanId=="string"&&typeof e.traceId=="string"&&typeof e.traceFlags=="number"}var Ch=new Vi,zh=(function(){function e(t,r,n,a){this._provider=t,this.name=r,this.version=n,this.options=a}return e.prototype.startSpan=function(t,r,n){return this._getTracer().startSpan(t,r,n)},e.prototype.startActiveSpan=function(t,r,n,a){var o=this._getTracer();return Reflect.apply(o.startActiveSpan,o,arguments)},e.prototype._getTracer=function(){if(this._delegate)return this._delegate;var t=this._provider.getDelegateTracer(this.name,this.version,this.options);return t?(this._delegate=t,this._delegate):Ch},e})(),Dh=(function(){function e(){}return e.prototype.getTracer=function(t,r,n){return new Vi},e})(),$h=new Dh,jo=(function(){function e(){}return e.prototype.getTracer=function(t,r,n){var a;return(a=this.getDelegateTracer(t,r,n))!==null&&a!==void 0?a:new zh(this,t,r,n)},e.prototype.getDelegate=function(){var t;return(t=this._delegate)!==null&&t!==void 0?t:$h},e.prototype.setDelegate=function(t){this._delegate=t},e.prototype.getDelegateTracer=function(t,r,n){var a;return(a=this._delegate)===null||a===void 0?void 0:a.getTracer(t,r,n)},e})(),nn;(function(e){e[e.UNSET=0]="UNSET",e[e.OK=1]="OK",e[e.ERROR=2]="ERROR"})(nn||(nn={}));var Pn="trace",Mh=(function(){function e(){this._proxyTracerProvider=new jo,this.wrapSpanContext=kh,this.isSpanContextValid=Bi,this.deleteSpan=Sh,this.getSpan=da,this.getActiveSpan=Ih,this.getSpanContext=Gi,this.setSpan=pa,this.setSpanContext=Ah}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalTracerProvider=function(t){var r=la(Pn,this._proxyTracerProvider,rn.instance());return r&&this._proxyTracerProvider.setDelegate(t),r},e.prototype.getTracerProvider=function(){return wr(Pn)||this._proxyTracerProvider},e.prototype.getTracer=function(t,r){return this.getTracerProvider().getTracer(t,r)},e.prototype.disable=function(){ua(Pn,rn.instance()),this._proxyTracerProvider=new jo},e})(),Fh=Mh.getInstance(),Lh=Object.defineProperty,Uh=(e,t)=>{for(var r in t)Lh(e,r,{get:t[r],enumerable:!0})},Hi="AI_InvalidArgumentError",Ji=`vercel.ai.error.${Hi}`,jh=Symbol.for(Ji),Yi,et=class extends H{constructor({parameter:e,value:t,message:r}){super({name:Hi,message:`Invalid argument for parameter ${e}: ${r}`}),this[Yi]=!0,this.parameter=e,this.value=t}static isInstance(e){return H.hasMarker(e,Ji)}};Yi=jh;var Wi="AI_InvalidToolApprovalError",Ki=`vercel.ai.error.${Wi}`,qh=Symbol.for(Ki),Xi,Zh=class extends H{constructor({approvalId:e}){super({name:Wi,message:`Tool approval response references unknown approvalId: "${e}". No matching tool-approval-request found in message history.`}),this[Xi]=!0,this.approvalId=e}static isInstance(e){return H.hasMarker(e,Ki)}};Xi=qh;var Qi="AI_InvalidToolInputError",el=`vercel.ai.error.${Qi}`,Gh=Symbol.for(el),tl,fa=class extends H{constructor({toolInput:e,toolName:t,cause:r,message:n=`Invalid input for tool ${t}: ${Wt(r)}`}){super({name:Qi,message:n,cause:r}),this[tl]=!0,this.toolInput=e,this.toolName=t}static isInstance(e){return H.hasMarker(e,el)}};tl=Gh;var rl="AI_ToolCallNotFoundForApprovalError",nl=`vercel.ai.error.${rl}`,Bh=Symbol.for(nl),al,ga=class extends H{constructor({toolCallId:e,approvalId:t}){super({name:rl,message:`Tool call "${e}" not found for approval request "${t}".`}),this[al]=!0,this.toolCallId=e,this.approvalId=t}static isInstance(e){return H.hasMarker(e,nl)}};al=Bh;var ol="AI_NoObjectGeneratedError",sl=`vercel.ai.error.${ol}`,Vh=Symbol.for(sl),il,yt=class extends H{constructor({message:e="No object generated.",cause:t,text:r,response:n,usage:a,finishReason:o}){super({name:ol,message:e,cause:t}),this[il]=!0,this.text=r,this.response=n,this.usage=a,this.finishReason=o}static isInstance(e){return H.hasMarker(e,sl)}};il=Vh;var ll="AI_NoOutputGeneratedError",ul=`vercel.ai.error.${ll}`,Hh=Symbol.for(ul),cl,dl=class extends H{constructor({message:e="No output generated.",cause:t}={}){super({name:ll,message:e,cause:t}),this[cl]=!0}static isInstance(e){return H.hasMarker(e,ul)}};cl=Hh;var pl="AI_NoSuchToolError",fl=`vercel.ai.error.${pl}`,Jh=Symbol.for(fl),gl,Gn=class extends H{constructor({toolName:e,availableTools:t=void 0,message:r=`Model tried to call unavailable tool '${e}'. ${t===void 0?"No tools are available.":`Available tools: ${t.join(", ")}.`}`}){super({name:pl,message:r}),this[gl]=!0,this.toolName=e,this.availableTools=t}static isInstance(e){return H.hasMarker(e,fl)}};gl=Jh;var ml="AI_ToolCallRepairError",hl=`vercel.ai.error.${ml}`,Yh=Symbol.for(hl),yl,Wh=class extends H{constructor({cause:e,originalError:t,message:r=`Error repairing tool call: ${Wt(e)}`}){super({name:ml,message:r,cause:e}),this[yl]=!0,this.originalError=t}static isInstance(e){return H.hasMarker(e,hl)}};yl=Yh;var Kh=class extends H{constructor(e){super({name:"AI_UnsupportedModelVersionError",message:`Unsupported model version ${e.version} for provider "${e.provider}" and model "${e.modelId}". AI SDK 5 only supports models that implement specification version "v2".`}),this.version=e.version,this.provider=e.provider,this.modelId=e.modelId}},vl="AI_InvalidMessageRoleError",_l=`vercel.ai.error.${vl}`,Xh=Symbol.for(_l),wl,Qh=class extends H{constructor({role:e,message:t=`Invalid message role: '${e}'. Must be one of: "system", "user", "assistant", "tool".`}){super({name:vl,message:t}),this[wl]=!0,this.role=e}static isInstance(e){return H.hasMarker(e,_l)}};wl=Xh;var Tl="AI_RetryError",bl=`vercel.ai.error.${Tl}`,ey=Symbol.for(bl),El,qo=class extends H{constructor({message:e,reason:t,errors:r}){super({name:Tl,message:e}),this[El]=!0,this.reason=t,this.errors=r,this.lastError=r[r.length-1]}static isInstance(e){return H.hasMarker(e,bl)}};El=ey;function ty({warning:e,provider:t,model:r}){const n=`AI SDK Warning (${t} / ${r}):`;switch(e.type){case"unsupported":{let a=`${n} The feature "${e.feature}" is not supported.`;return e.details&&(a+=` ${e.details}`),a}case"compatibility":{let a=`${n} The feature "${e.feature}" is used in a compatibility mode.`;return e.details&&(a+=` ${e.details}`),a}case"other":return`${n} ${e.message}`;default:return`${n} ${JSON.stringify(e,null,2)}`}}var ry="AI SDK Warning System: To turn off warning logging, set the AI_SDK_LOG_WARNINGS global to false.",Zo=!1,ma=e=>{if(e.warnings.length===0)return;const t=globalThis.AI_SDK_LOG_WARNINGS;if(t!==!1){if(typeof t=="function"){t(e);return}Zo||(Zo=!0,console.info(ry));for(const r of e.warnings)console.warn(ty({warning:r,provider:e.provider,model:e.model}))}};function ny({provider:e,modelId:t}){ma({warnings:[{type:"compatibility",feature:"specificationVersion",details:"Using v2 specification compatibility mode. Some features may not be available."}],provider:e,model:t})}function ay(e){return e.specificationVersion==="v3"?e:(ny({provider:e.provider,modelId:e.modelId}),new Proxy(e,{get(t,r){switch(r){case"specificationVersion":return"v3";case"doGenerate":return async(...n)=>{const a=await t.doGenerate(...n);return{...a,finishReason:Il(a.finishReason),usage:Sl(a.usage)}};case"doStream":return async(...n)=>{const a=await t.doStream(...n);return{...a,stream:oy(a.stream)}};default:return t[r]}}}))}function oy(e){return e.pipeThrough(new TransformStream({transform(t,r){switch(t.type){case"finish":r.enqueue({...t,finishReason:Il(t.finishReason),usage:Sl(t.usage)});break;default:r.enqueue(t);break}}}))}function Il(e){return{unified:e==="unknown"?"other":e,raw:void 0}}function Sl(e){return{inputTokens:{total:e.inputTokens,noCache:void 0,cacheRead:e.cachedInputTokens,cacheWrite:void 0},outputTokens:{total:e.outputTokens,text:void 0,reasoning:e.reasoningTokens}}}function an(e){if(typeof e!="string"){if(e.specificationVersion!=="v3"&&e.specificationVersion!=="v2"){const t=e;throw new Kh({version:t.specificationVersion,provider:t.provider,modelId:t.modelId})}return ay(e)}return sy().languageModel(e)}function sy(){var e;return(e=globalThis.AI_SDK_DEFAULT_PROVIDER)!=null?e:th}var iy=[{mediaType:"image/gif",bytesPrefix:[71,73,70]},{mediaType:"image/png",bytesPrefix:[137,80,78,71]},{mediaType:"image/jpeg",bytesPrefix:[255,216]},{mediaType:"image/webp",bytesPrefix:[82,73,70,70,null,null,null,null,87,69,66,80]},{mediaType:"image/bmp",bytesPrefix:[66,77]},{mediaType:"image/tiff",bytesPrefix:[73,73,42,0]},{mediaType:"image/tiff",bytesPrefix:[77,77,0,42]},{mediaType:"image/avif",bytesPrefix:[0,0,0,32,102,116,121,112,97,118,105,102]},{mediaType:"image/heic",bytesPrefix:[0,0,0,32,102,116,121,112,104,101,105,99]}],ly=e=>{const t=typeof e=="string"?aa(e):e,r=(t[6]&127)<<21|(t[7]&127)<<14|(t[8]&127)<<7|t[9]&127;return t.slice(r+10)};function uy(e){return typeof e=="string"&&e.startsWith("SUQz")||typeof e!="string"&&e.length>10&&e[0]===73&&e[1]===68&&e[2]===51?ly(e):e}function cy({data:e,signatures:t}){const r=uy(e),n=typeof r=="string"?aa(r.substring(0,Math.min(r.length,24))):r;for(const a of t)if(n.length>=a.bytesPrefix.length&&a.bytesPrefix.every((o,s)=>o===null||n[s]===o))return a.mediaType}var Al="6.0.11",dy=async({url:e})=>{var t;const r=e.toString();try{const n=await fetch(r,{headers:Or({},`ai-sdk/${Al}`,sa())});if(!n.ok)throw new In({url:r,statusCode:n.status,statusText:n.statusText});return{data:new Uint8Array(await n.arrayBuffer()),mediaType:(t=n.headers.get("content-type"))!=null?t:void 0}}catch(n){throw In.isInstance(n)?n:new In({url:r,cause:n})}},py=(e=dy)=>t=>Promise.all(t.map(async r=>r.isUrlSupportedByModel?null:e(r)));function fy(e){try{const[t,r]=e.split(",");return{mediaType:t.split(";")[0].split(":")[1],base64Content:r}}catch{return{mediaType:void 0,base64Content:void 0}}}var Nl=Pe([x(),Kr(Uint8Array),Kr(ArrayBuffer),cg(e=>{var t,r;return(r=(t=globalThis.Buffer)==null?void 0:t.isBuffer(e))!=null?r:!1},{message:"Must be a Buffer"})]);function Ol(e){if(e instanceof Uint8Array)return{data:e,mediaType:void 0};if(e instanceof ArrayBuffer)return{data:new Uint8Array(e),mediaType:void 0};if(typeof e=="string")try{e=new URL(e)}catch{}if(e instanceof URL&&e.protocol==="data:"){const{mediaType:t,base64Content:r}=fy(e.toString());if(t==null||r==null)throw new H({name:"InvalidDataContentError",message:`Invalid data URL format in content ${e.toString()}`});return{data:r,mediaType:t}}return{data:e,mediaType:void 0}}function gy(e){return typeof e=="string"?e:e instanceof ArrayBuffer?en(new Uint8Array(e)):en(e)}function Tr(e){return e===void 0?[]:Array.isArray(e)?e:[e]}async function Rl({prompt:e,supportedUrls:t,download:r=py()}){const n=await hy(e.messages,r,t),a=[...e.system!=null?typeof e.system=="string"?[{role:"system",content:e.system}]:Tr(e.system).map(s=>({role:"system",content:s.content,providerOptions:s.providerOptions})):[],...e.messages.map(s=>my({message:s,downloadedAssets:n}))],o=[];for(const s of a){if(s.role!=="tool"){o.push(s);continue}const i=o.at(-1);(i==null?void 0:i.role)==="tool"?i.content.push(...s.content):o.push(s)}return o}function my({message:e,downloadedAssets:t}){const r=e.role;switch(r){case"system":return{role:"system",content:e.content,providerOptions:e.providerOptions};case"user":return typeof e.content=="string"?{role:"user",content:[{type:"text",text:e.content}],providerOptions:e.providerOptions}:{role:"user",content:e.content.map(n=>yy(n,t)).filter(n=>n.type!=="text"||n.text!==""),providerOptions:e.providerOptions};case"assistant":return typeof e.content=="string"?{role:"assistant",content:[{type:"text",text:e.content}],providerOptions:e.providerOptions}:{role:"assistant",content:e.content.filter(n=>n.type!=="text"||n.text!==""||n.providerOptions!=null).filter(n=>n.type!=="tool-approval-request").map(n=>{const a=n.providerOptions;switch(n.type){case"file":{const{data:o,mediaType:s}=Ol(n.data);return{type:"file",data:o,filename:n.filename,mediaType:s??n.mediaType,providerOptions:a}}case"reasoning":return{type:"reasoning",text:n.text,providerOptions:a};case"text":return{type:"text",text:n.text,providerOptions:a};case"tool-call":return{type:"tool-call",toolCallId:n.toolCallId,toolName:n.toolName,input:n.input,providerExecuted:n.providerExecuted,providerOptions:a};case"tool-result":return{type:"tool-result",toolCallId:n.toolCallId,toolName:n.toolName,output:Go(n.output),providerOptions:a}}}),providerOptions:e.providerOptions};case"tool":return{role:"tool",content:e.content.filter(n=>n.type!=="tool-approval-response"||n.providerExecuted).map(n=>{switch(n.type){case"tool-result":return{type:"tool-result",toolCallId:n.toolCallId,toolName:n.toolName,output:Go(n.output),providerOptions:n.providerOptions};case"tool-approval-response":return{type:"tool-approval-response",approvalId:n.approvalId,approved:n.approved,reason:n.reason}}}),providerOptions:e.providerOptions};default:{const n=r;throw new Qh({role:n})}}}async function hy(e,t,r){const n=e.filter(o=>o.role==="user").map(o=>o.content).filter(o=>Array.isArray(o)).flat().filter(o=>o.type==="image"||o.type==="file").map(o=>{var s;const i=(s=o.mediaType)!=null?s:o.type==="image"?"image/*":void 0;let l=o.type==="image"?o.image:o.data;if(typeof l=="string")try{l=new URL(l)}catch{}return{mediaType:i,data:l}}).filter(o=>o.data instanceof URL).map(o=>({url:o.data,isUrlSupportedByModel:o.mediaType!=null&&Eg({url:o.data.toString(),mediaType:o.mediaType,supportedUrls:r})})),a=await t(n);return Object.fromEntries(a.map((o,s)=>o==null?null:[n[s].url.toString(),{data:o.data,mediaType:o.mediaType}]).filter(o=>o!=null))}function yy(e,t){var r;if(e.type==="text")return{type:"text",text:e.text,providerOptions:e.providerOptions};let n;const a=e.type;switch(a){case"image":n=e.image;break;case"file":n=e.data;break;default:throw new Error(`Unsupported part type: ${a}`)}const{data:o,mediaType:s}=Ol(n);let i=s??e.mediaType,l=o;if(l instanceof URL){const u=t[l.toString()];u&&(l=u.data,i??(i=u.mediaType))}switch(a){case"image":return(l instanceof Uint8Array||typeof l=="string")&&(i=(r=cy({data:l,signatures:iy}))!=null?r:i),{type:"file",mediaType:i??"image/*",filename:void 0,data:l,providerOptions:e.providerOptions};case"file":{if(i==null)throw new Error("Media type is missing for file part");return{type:"file",mediaType:i,filename:e.filename,data:l,providerOptions:e.providerOptions}}}}function Go(e){return e.type!=="content"?e:{type:"content",value:e.value.map(t=>t.type!=="media"?t:t.mediaType.startsWith("image/")?{type:"image-data",data:t.data,mediaType:t.mediaType}:{type:"file-data",data:t.data,mediaType:t.mediaType})}}async function pr({toolCallId:e,input:t,output:r,tool:n,errorMode:a}){return a==="text"?{type:"error-text",value:Wt(r)}:a==="json"?{type:"error-json",value:Bo(r)}:n!=null&&n.toModelOutput?await n.toModelOutput({toolCallId:e,input:t,output:r}):typeof r=="string"?{type:"text",value:r}:{type:"json",value:Bo(r)}}function Bo(e){return e===void 0?null:e}function Bn({maxOutputTokens:e,temperature:t,topP:r,topK:n,presencePenalty:a,frequencyPenalty:o,seed:s,stopSequences:i}){if(e!=null){if(!Number.isInteger(e))throw new et({parameter:"maxOutputTokens",value:e,message:"maxOutputTokens must be an integer"});if(e<1)throw new et({parameter:"maxOutputTokens",value:e,message:"maxOutputTokens must be >= 1"})}if(t!=null&&typeof t!="number")throw new et({parameter:"temperature",value:t,message:"temperature must be a number"});if(r!=null&&typeof r!="number")throw new et({parameter:"topP",value:r,message:"topP must be a number"});if(n!=null&&typeof n!="number")throw new et({parameter:"topK",value:n,message:"topK must be a number"});if(a!=null&&typeof a!="number")throw new et({parameter:"presencePenalty",value:a,message:"presencePenalty must be a number"});if(o!=null&&typeof o!="number")throw new et({parameter:"frequencyPenalty",value:o,message:"frequencyPenalty must be a number"});if(s!=null&&!Number.isInteger(s))throw new et({parameter:"seed",value:s,message:"seed must be an integer"});return{maxOutputTokens:e,temperature:t,topP:r,topK:n,presencePenalty:a,frequencyPenalty:o,stopSequences:i,seed:s}}function vy(e){return e!=null&&Object.keys(e).length>0}async function xl({tools:e,toolChoice:t,activeTools:r}){if(!vy(e))return{tools:void 0,toolChoice:void 0};const n=r!=null?Object.entries(e).filter(([o])=>r.includes(o)):Object.entries(e),a=[];for(const[o,s]of n){const i=s.type;switch(i){case void 0:case"dynamic":case"function":a.push({type:"function",name:o,description:s.description,inputSchema:await Qt(s.inputSchema).jsonSchema,...s.inputExamples!=null?{inputExamples:s.inputExamples}:{},providerOptions:s.providerOptions,...s.strict!=null?{strict:s.strict}:{}});break;case"provider":a.push({type:"provider",name:o,id:s.id,args:s.args});break;default:{const l=i;throw new Error(`Unsupported tool type: ${l}`)}}}return{tools:a,toolChoice:t==null?{type:"auto"}:typeof t=="string"?{type:t}:{type:"tool",toolName:t.toolName}}}var br=ug(()=>Pe([zf(),x(),Wr(),ra(),wt(x(),br.optional()),Ue(br)])),he=wt(x(),wt(x(),br.optional())),kl=G({type:ee("text"),text:x(),providerOptions:he.optional()}),_y=G({type:ee("image"),image:Pe([Nl,Kr(URL)]),mediaType:x().optional(),providerOptions:he.optional()}),Pl=G({type:ee("file"),data:Pe([Nl,Kr(URL)]),filename:x().optional(),mediaType:x(),providerOptions:he.optional()}),wy=G({type:ee("reasoning"),text:x(),providerOptions:he.optional()}),Ty=G({type:ee("tool-call"),toolCallId:x(),toolName:x(),input:xt(),providerOptions:he.optional(),providerExecuted:ra().optional()}),by=qf("type",[G({type:ee("text"),value:x(),providerOptions:he.optional()}),G({type:ee("json"),value:br,providerOptions:he.optional()}),G({type:ee("execution-denied"),reason:x().optional(),providerOptions:he.optional()}),G({type:ee("error-text"),value:x(),providerOptions:he.optional()}),G({type:ee("error-json"),value:br,providerOptions:he.optional()}),G({type:ee("content"),value:Ue(Pe([G({type:ee("text"),text:x(),providerOptions:he.optional()}),G({type:ee("media"),data:x(),mediaType:x()}),G({type:ee("file-data"),data:x(),mediaType:x(),filename:x().optional(),providerOptions:he.optional()}),G({type:ee("file-url"),url:x(),providerOptions:he.optional()}),G({type:ee("file-id"),fileId:Pe([x(),wt(x(),x())]),providerOptions:he.optional()}),G({type:ee("image-data"),data:x(),mediaType:x(),providerOptions:he.optional()}),G({type:ee("image-url"),url:x(),providerOptions:he.optional()}),G({type:ee("image-file-id"),fileId:Pe([x(),wt(x(),x())]),providerOptions:he.optional()}),G({type:ee("custom"),providerOptions:he.optional()})]))})]),Cl=G({type:ee("tool-result"),toolCallId:x(),toolName:x(),output:by,providerOptions:he.optional()}),Ey=G({type:ee("tool-approval-request"),approvalId:x(),toolCallId:x()}),Iy=G({type:ee("tool-approval-response"),approvalId:x(),approved:ra(),reason:x().optional()}),Sy=G({role:ee("system"),content:x(),providerOptions:he.optional()}),Ay=G({role:ee("user"),content:Pe([x(),Ue(Pe([kl,_y,Pl]))]),providerOptions:he.optional()}),Ny=G({role:ee("assistant"),content:Pe([x(),Ue(Pe([kl,Pl,wy,Ty,Cl,Ey]))]),providerOptions:he.optional()}),Oy=G({role:ee("tool"),content:Ue(Pe([Cl,Iy])),providerOptions:he.optional()}),Ry=Pe([Sy,Ay,Ny,Oy]);async function zl(e){if(e.prompt==null&&e.messages==null)throw new qt({prompt:e,message:"prompt or messages must be defined"});if(e.prompt!=null&&e.messages!=null)throw new qt({prompt:e,message:"prompt and messages cannot be defined at the same time"});if(e.system!=null&&typeof e.system!="string"&&!Tr(e.system).every(n=>typeof n=="object"&&n!==null&&"role"in n&&n.role==="system"))throw new qt({prompt:e,message:"system must be a string, SystemModelMessage, or array of SystemModelMessage"});let t;if(e.prompt!=null&&typeof e.prompt=="string")t=[{role:"user",content:e.prompt}];else if(e.prompt!=null&&Array.isArray(e.prompt))t=e.prompt;else if(e.messages!=null)t=e.messages;else throw new qt({prompt:e,message:"prompt or messages must be defined"});if(t.length===0)throw new qt({prompt:e,message:"messages must not be empty"});const r=await rt({value:t,schema:Ue(Ry)});if(!r.success)throw new qt({prompt:e,message:"The messages do not match the ModelMessage[] schema.",cause:r.error});return{messages:t,system:e.system}}function Dl(e){if(!ia.isInstance(e))return e;const t=(process==null?void 0:process.env.NODE_ENV)==="production",r="https://ai-sdk.dev/unauthenticated-ai-gateway";return t?new H({name:"GatewayError",message:`Unauthenticated. Configure AI_GATEWAY_API_KEY or use a provider module. Learn more: ${r}`}):Object.assign(new Error(`\x1B[1m\x1B[31mUnauthenticated request to AI Gateway.\x1B[0m
|
|
65
65
|
|
|
66
66
|
To authenticate, set the \x1B[33mAI_GATEWAY_API_KEY\x1B[0m environment variable with your API key.
|
|
67
67
|
|
|
@@ -69,11 +69,11 @@ Alternatively, you can use a provider module instead of the AI Gateway.
|
|
|
69
69
|
|
|
70
70
|
Learn more: \x1B[34m${r}\x1B[0m
|
|
71
71
|
|
|
72
|
-
`),{name:"GatewayAuthenticationError"})}function br({operationId:e,telemetry:t}){return{"operation.name":`${e}${(t==null?void 0:t.functionId)!=null?` ${t.functionId}`:""}`,"resource.name":t==null?void 0:t.functionId,"ai.operationId":e,"ai.telemetry.functionId":t==null?void 0:t.functionId}}function zl({model:e,settings:t,telemetry:r,headers:n}){var a;return{"ai.model.provider":e.provider,"ai.model.id":e.modelId,...Object.entries(t).reduce((o,[s,i])=>(o[`ai.settings.${s}`]=i,o),{}),...Object.entries((a=r==null?void 0:r.metadata)!=null?a:{}).reduce((o,[s,i])=>(o[`ai.telemetry.metadata.${s}`]=i,o),{}),...Object.entries(n??{}).reduce((o,[s,i])=>(i!==void 0&&(o[`ai.request.headers.${s}`]=i),o),{})}}var xy={startSpan(){return Lr},startActiveSpan(e,t,r,n){if(typeof t=="function")return t(Lr);if(typeof r=="function")return r(Lr);if(typeof n=="function")return n(Lr)}},Lr={spanContext(){return Ry},setAttribute(){return this},setAttributes(){return this},addEvent(){return this},addLink(){return this},addLinks(){return this},setStatus(){return this},updateName(){return this},end(){return this},isRecording(){return!1},recordException(){return this}},Ry={traceId:"",spanId:"",traceFlags:0};function $l({isEnabled:e=!1,tracer:t}={}){return e?t||Mh.getTracer("ai"):xy}async function Er({name:e,tracer:t,attributes:r,fn:n,endWhenDone:a=!0}){return t.startActiveSpan(e,{attributes:await r},async o=>{try{const s=await n(o);return a&&o.end(),s}catch(s){try{Ml(o,s)}finally{o.end()}throw s}})}function Ml(e,t){t instanceof Error?(e.recordException({name:t.name,message:t.message,stack:t.stack}),e.setStatus({code:rn.ERROR,message:t.message})):e.setStatus({code:rn.ERROR})}async function tt({telemetry:e,attributes:t}){if((e==null?void 0:e.isEnabled)!==!0)return{};const r={};for(const[n,a]of Object.entries(t))if(a!=null){if(typeof a=="object"&&"input"in a&&typeof a.input=="function"){if((e==null?void 0:e.recordInputs)===!1)continue;const o=await a.input();o!=null&&(r[n]=o);continue}if(typeof a=="object"&&"output"in a&&typeof a.output=="function"){if((e==null?void 0:e.recordOutputs)===!1)continue;const o=await a.output();o!=null&&(r[n]=o);continue}r[n]=a}return r}function Fl(e){return JSON.stringify(e.map(t=>({...t,content:typeof t.content=="string"?t.content:t.content.map(r=>r.type==="file"?{...r,data:r.data instanceof Uint8Array?fy(r.data):r.data}:r)})))}function Ll(e){return{inputTokens:e.inputTokens.total,inputTokenDetails:{noCacheTokens:e.inputTokens.noCache,cacheReadTokens:e.inputTokens.cacheRead,cacheWriteTokens:e.inputTokens.cacheWrite},outputTokens:e.outputTokens.total,outputTokenDetails:{textTokens:e.outputTokens.text,reasoningTokens:e.outputTokens.reasoning},totalTokens:Ye(e.inputTokens.total,e.outputTokens.total),raw:e.raw,reasoningTokens:e.outputTokens.reasoning,cachedInputTokens:e.inputTokens.cacheRead}}function Pn(){return{inputTokens:void 0,inputTokenDetails:{noCacheTokens:void 0,cacheReadTokens:void 0,cacheWriteTokens:void 0},outputTokens:void 0,outputTokenDetails:{textTokens:void 0,reasoningTokens:void 0},totalTokens:void 0,raw:void 0}}function Ul(e,t){var r,n,a,o,s,i,l,u,c,p;return{inputTokens:Ye(e.inputTokens,t.inputTokens),inputTokenDetails:{noCacheTokens:Ye((r=e.inputTokenDetails)==null?void 0:r.noCacheTokens,(n=t.inputTokenDetails)==null?void 0:n.noCacheTokens),cacheReadTokens:Ye((a=e.inputTokenDetails)==null?void 0:a.cacheReadTokens,(o=t.inputTokenDetails)==null?void 0:o.cacheReadTokens),cacheWriteTokens:Ye((s=e.inputTokenDetails)==null?void 0:s.cacheWriteTokens,(i=t.inputTokenDetails)==null?void 0:i.cacheWriteTokens)},outputTokens:Ye(e.outputTokens,t.outputTokens),outputTokenDetails:{textTokens:Ye((l=e.outputTokenDetails)==null?void 0:l.textTokens,(u=t.outputTokenDetails)==null?void 0:u.textTokens),reasoningTokens:Ye((c=e.outputTokenDetails)==null?void 0:c.reasoningTokens,(p=t.outputTokenDetails)==null?void 0:p.reasoningTokens)},totalTokens:Ye(e.totalTokens,t.totalTokens),reasoningTokens:Ye(e.reasoningTokens,t.reasoningTokens),cachedInputTokens:Ye(e.cachedInputTokens,t.cachedInputTokens)}}function Ye(e,t){return e==null&&t==null?void 0:(e??0)+(t??0)}function pn(e,t){if(e===void 0&&t===void 0)return;if(e===void 0)return t;if(t===void 0)return e;const r={...e};for(const n in t)if(Object.prototype.hasOwnProperty.call(t,n)){const a=t[n];if(a===void 0)continue;const o=n in e?e[n]:void 0,s=a!==null&&typeof a=="object"&&!Array.isArray(a)&&!(a instanceof Date)&&!(a instanceof RegExp),i=o!=null&&typeof o=="object"&&!Array.isArray(o)&&!(o instanceof Date)&&!(o instanceof RegExp);s&&i?r[n]=pn(o,a):r[n]=a}return r}function ky({error:e,exponentialBackoffDelay:t}){const r=e.responseHeaders;if(!r)return t;let n;const a=r["retry-after-ms"];if(a){const s=parseFloat(a);Number.isNaN(s)||(n=s)}const o=r["retry-after"];if(o&&n===void 0){const s=parseFloat(o);Number.isNaN(s)?n=Date.parse(o)-Date.now():n=s*1e3}return n!=null&&!Number.isNaN(n)&&0<=n&&(n<60*1e3||n<t)?n:t}var Py=({maxRetries:e=2,initialDelayInMs:t=2e3,backoffFactor:r=2,abortSignal:n}={})=>async a=>jl(a,{maxRetries:e,delayInMs:t,backoffFactor:r,abortSignal:n});async function jl(e,{maxRetries:t,delayInMs:r,backoffFactor:n,abortSignal:a},o=[]){try{return await e()}catch(s){if(kt(s)||t===0)throw s;const i=aa(s),l=[...o,s],u=l.length;if(u>t)throw new jo({message:`Failed after ${u} attempts. Last error: ${i}`,reason:"maxRetriesExceeded",errors:l});if(s instanceof Error&&$e.isInstance(s)&&s.isRetryable===!0&&u<=t)return await mg(ky({error:s,exponentialBackoffDelay:r}),{abortSignal:a}),jl(e,{maxRetries:t,delayInMs:n*r,backoffFactor:n,abortSignal:a},l);throw u===1?s:new jo({message:`Failed after ${u} attempts with non-retryable error: '${i}'`,reason:"errorNotRetryable",errors:l})}}function ql({maxRetries:e,abortSignal:t}){if(e!=null){if(!Number.isInteger(e))throw new et({parameter:"maxRetries",value:e,message:"maxRetries must be an integer"});if(e<0)throw new et({parameter:"maxRetries",value:e,message:"maxRetries must be >= 0"})}const r=e??2;return{maxRetries:r,retry:Py({maxRetries:r,abortSignal:t})}}function Zl({messages:e}){const t=e.at(-1);if((t==null?void 0:t.role)!="tool")return{approvedToolApprovals:[],deniedToolApprovals:[]};const r={};for(const l of e)if(l.role==="assistant"&&typeof l.content!="string"){const u=l.content;for(const c of u)c.type==="tool-call"&&(r[c.toolCallId]=c)}const n={};for(const l of e)if(l.role==="assistant"&&typeof l.content!="string"){const u=l.content;for(const c of u)c.type==="tool-approval-request"&&(n[c.approvalId]=c)}const a={};for(const l of t.content)l.type==="tool-result"&&(a[l.toolCallId]=l);const o=[],s=[],i=t.content.filter(l=>l.type==="tool-approval-response");for(const l of i){const u=n[l.approvalId];if(u==null)throw new qh({approvalId:l.approvalId});if(a[u.toolCallId]!=null)continue;const c=r[u.toolCallId];if(c==null)throw new fa({toolCallId:u.toolCallId,approvalId:u.approvalId});const p={approvalRequest:u,approvalResponse:l,toolCall:c};l.approved?o.push(p):s.push(p)}return{approvedToolApprovals:o,deniedToolApprovals:s}}async function ma({toolCall:e,tools:t,tracer:r,telemetry:n,messages:a,abortSignal:o,experimental_context:s,onPreliminaryToolResult:i}){const{toolName:l,toolCallId:u,input:c}=e,p=t==null?void 0:t[l];if((p==null?void 0:p.execute)!=null)return Er({name:"ai.toolCall",attributes:tt({telemetry:n,attributes:{...br({operationId:"ai.toolCall",telemetry:n}),"ai.toolCall.name":l,"ai.toolCall.id":u,"ai.toolCall.args":{output:()=>JSON.stringify(c)}}}),tracer:r,fn:async d=>{let v;try{const E=Im({execute:p.execute.bind(p),input:c,options:{toolCallId:u,messages:a,abortSignal:o,experimental_context:s}});for await(const w of E)w.type==="preliminary"?i==null||i({...e,type:"tool-result",output:w.output,preliminary:!0}):v=w.output}catch(E){return Ml(d,E),{type:"tool-error",toolCallId:u,toolName:l,input:c,error:E,dynamic:p.type==="dynamic",...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}}}try{d.setAttributes(await tt({telemetry:n,attributes:{"ai.toolCall.result":{output:()=>JSON.stringify(v)}}}))}catch{}return{type:"tool-result",toolCallId:u,toolName:l,input:c,output:v,dynamic:p.type==="dynamic",...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}}}})}function Bo(e){const t=e.filter(r=>r.type==="text");if(t.length!==0)return t.map(r=>r.text).join("")}var Gl=class{constructor({data:e,mediaType:t}){const r=e instanceof Uint8Array;this.base64Data=r?void 0:e,this.uint8ArrayData=r?e:void 0,this.mediaType=t}get base64(){return this.base64Data==null&&(this.base64Data=Qr(this.uint8ArrayData)),this.base64Data}get uint8Array(){return this.uint8ArrayData==null&&(this.uint8ArrayData=na(this.base64Data)),this.uint8ArrayData}},Cy=class extends Gl{constructor(e){super(e),this.type="file"}};async function Bl({tool:e,toolCall:t,messages:r,experimental_context:n}){return e.needsApproval==null?!1:typeof e.needsApproval=="boolean"?e.needsApproval:await e.needsApproval(t.input,{toolCallId:t.toolCallId,messages:r,experimental_context:n})}var Dy={};Lh(Dy,{array:()=>My,choice:()=>Fy,json:()=>Ly,object:()=>$y,text:()=>an});function zy(e){const t=["ROOT"];let r=-1,n=null;function a(l,u,c){switch(l){case'"':{r=u,t.pop(),t.push(c),t.push("INSIDE_STRING");break}case"f":case"t":case"n":{r=u,n=u,t.pop(),t.push(c),t.push("INSIDE_LITERAL");break}case"-":{t.pop(),t.push(c),t.push("INSIDE_NUMBER");break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{r=u,t.pop(),t.push(c),t.push("INSIDE_NUMBER");break}case"{":{r=u,t.pop(),t.push(c),t.push("INSIDE_OBJECT_START");break}case"[":{r=u,t.pop(),t.push(c),t.push("INSIDE_ARRAY_START");break}}}function o(l,u){switch(l){case",":{t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break}case"}":{r=u,t.pop();break}}}function s(l,u){switch(l){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{r=u,t.pop();break}}}for(let l=0;l<e.length;l++){const u=e[l];switch(t[t.length-1]){case"ROOT":a(u,l,"FINISH");break;case"INSIDE_OBJECT_START":{switch(u){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}case"}":{r=l,t.pop();break}}break}case"INSIDE_OBJECT_AFTER_COMMA":{switch(u){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}}break}case"INSIDE_OBJECT_KEY":{switch(u){case'"':{t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY");break}}break}case"INSIDE_OBJECT_AFTER_KEY":{switch(u){case":":{t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE");break}}break}case"INSIDE_OBJECT_BEFORE_VALUE":{a(u,l,"INSIDE_OBJECT_AFTER_VALUE");break}case"INSIDE_OBJECT_AFTER_VALUE":{o(u,l);break}case"INSIDE_STRING":{switch(u){case'"':{t.pop(),r=l;break}case"\\":{t.push("INSIDE_STRING_ESCAPE");break}default:r=l}break}case"INSIDE_ARRAY_START":{switch(u){case"]":{r=l,t.pop();break}default:{r=l,a(u,l,"INSIDE_ARRAY_AFTER_VALUE");break}}break}case"INSIDE_ARRAY_AFTER_VALUE":{switch(u){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{r=l,t.pop();break}default:{r=l;break}}break}case"INSIDE_ARRAY_AFTER_COMMA":{a(u,l,"INSIDE_ARRAY_AFTER_VALUE");break}case"INSIDE_STRING_ESCAPE":{t.pop(),r=l;break}case"INSIDE_NUMBER":{switch(u){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{r=l;break}case"e":case"E":case"-":case".":break;case",":{t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&s(u,l),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&o(u,l);break}case"}":{t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&o(u,l);break}case"]":{t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&s(u,l);break}default:{t.pop();break}}break}case"INSIDE_LITERAL":{const p=e.substring(n,l+1);!"false".startsWith(p)&&!"true".startsWith(p)&&!"null".startsWith(p)?(t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"?o(u,l):t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&s(u,l)):r=l;break}}}let i=e.slice(0,r+1);for(let l=t.length-1;l>=0;l--)switch(t[l]){case"INSIDE_STRING":{i+='"';break}case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":{i+="}";break}case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":{i+="]";break}case"INSIDE_LITERAL":{const c=e.substring(n,e.length);"true".startsWith(c)?i+="true".slice(c.length):"false".startsWith(c)?i+="false".slice(c.length):"null".startsWith(c)&&(i+="null".slice(c.length))}}return i}async function Or(e){if(e===void 0)return{value:void 0,state:"undefined-input"};let t=await We({text:e});return t.success?{value:t.value,state:"successful-parse"}:(t=await We({text:zy(e)}),t.success?{value:t.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"})}var an=()=>({responseFormat:Promise.resolve({type:"text"}),async parseCompleteOutput({text:e}){return e},async parsePartialOutput({text:e}){return{partial:e}}}),$y=({schema:e,name:t,description:r})=>{const n=Qt(e);return{responseFormat:Ge(n.jsonSchema).then(a=>({type:"json",schema:a,...t!=null&&{name:t},...r!=null&&{description:r}})),async parseCompleteOutput({text:a},o){const s=await We({text:a});if(!s.success)throw new yt({message:"No object generated: could not parse the response.",cause:s.error,text:a,response:o.response,usage:o.usage,finishReason:o.finishReason});const i=await rt({value:s.value,schema:n});if(!i.success)throw new yt({message:"No object generated: response did not match schema.",cause:i.error,text:a,response:o.response,usage:o.usage,finishReason:o.finishReason});return i.value},async parsePartialOutput({text:a}){const o=await Or(a);switch(o.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:o.value}}}}},My=({element:e,name:t,description:r})=>{const n=Qt(e);return{responseFormat:Ge(n.jsonSchema).then(a=>{const{$schema:o,...s}=a;return{type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{elements:{type:"array",items:s}},required:["elements"],additionalProperties:!1},...t!=null&&{name:t},...r!=null&&{description:r}}}),async parseCompleteOutput({text:a},o){const s=await We({text:a});if(!s.success)throw new yt({message:"No object generated: could not parse the response.",cause:s.error,text:a,response:o.response,usage:o.usage,finishReason:o.finishReason});const i=s.value;if(i==null||typeof i!="object"||!("elements"in i)||!Array.isArray(i.elements))throw new yt({message:"No object generated: response did not match schema.",cause:new xt({value:i,cause:"response must be an object with an elements array"}),text:a,response:o.response,usage:o.usage,finishReason:o.finishReason});for(const l of i.elements){const u=await rt({value:l,schema:n});if(!u.success)throw new yt({message:"No object generated: response did not match schema.",cause:u.error,text:a,response:o.response,usage:o.usage,finishReason:o.finishReason})}return i.elements},async parsePartialOutput({text:a}){const o=await Or(a);switch(o.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{const s=o.value;if(s==null||typeof s!="object"||!("elements"in s)||!Array.isArray(s.elements))return;const i=o.state==="repaired-parse"&&s.elements.length>0?s.elements.slice(0,-1):s.elements,l=[];for(const u of i){const c=await rt({value:u,schema:n});c.success&&l.push(c.value)}return{partial:l}}}}}},Fy=({options:e,name:t,description:r})=>({responseFormat:Promise.resolve({type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{result:{type:"string",enum:e}},required:["result"],additionalProperties:!1},...t!=null&&{name:t},...r!=null&&{description:r}}),async parseCompleteOutput({text:n},a){const o=await We({text:n});if(!o.success)throw new yt({message:"No object generated: could not parse the response.",cause:o.error,text:n,response:a.response,usage:a.usage,finishReason:a.finishReason});const s=o.value;if(s==null||typeof s!="object"||!("result"in s)||typeof s.result!="string"||!e.includes(s.result))throw new yt({message:"No object generated: response did not match schema.",cause:new xt({value:s,cause:"response must be an object that contains a choice value."}),text:n,response:a.response,usage:a.usage,finishReason:a.finishReason});return s.result},async parsePartialOutput({text:n}){const a=await Or(n);switch(a.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{const o=a.value;if(o==null||typeof o!="object"||!("result"in o)||typeof o.result!="string")return;const s=e.filter(i=>i.startsWith(o.result));return a.state==="successful-parse"?s.includes(o.result)?{partial:o.result}:void 0:s.length===1?{partial:s[0]}:void 0}}}}),Ly=({name:e,description:t}={})=>({responseFormat:Promise.resolve({type:"json",...e!=null&&{name:e},...t!=null&&{description:t}}),async parseCompleteOutput({text:r},n){const a=await We({text:r});if(!a.success)throw new yt({message:"No object generated: could not parse the response.",cause:a.error,text:r,response:n.response,usage:n.usage,finishReason:n.finishReason});return a.value},async parsePartialOutput({text:r}){const n=await Or(r);switch(n.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return n.value===void 0?void 0:{partial:n.value}}}});async function Vl({toolCall:e,tools:t,repairToolCall:r,system:n,messages:a}){var o;try{if(t==null){if(e.providerExecuted&&e.dynamic)return await Hl(e);throw new Zn({toolName:e.toolName})}try{return await Vo({toolCall:e,tools:t})}catch(s){if(r==null||!(Zn.isInstance(s)||pa.isInstance(s)))throw s;let i=null;try{i=await r({toolCall:e,tools:t,inputSchema:async({toolName:l})=>{const{inputSchema:u}=t[l];return await Qt(u).jsonSchema},system:n,messages:a,error:s})}catch(l){throw new Yh({cause:l,originalError:s})}if(i==null)throw s;return await Vo({toolCall:i,tools:t})}}catch(s){const i=await We({text:e.input}),l=i.success?i.value:e.input;return{type:"tool-call",toolCallId:e.toolCallId,toolName:e.toolName,input:l,dynamic:!0,invalid:!0,error:s,title:(o=t==null?void 0:t[e.toolName])==null?void 0:o.title,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}}}async function Hl(e){const t=e.input.trim()===""?{success:!0,value:{}}:await We({text:e.input});if(t.success===!1)throw new pa({toolName:e.toolName,toolInput:e.input,cause:t.error});return{type:"tool-call",toolCallId:e.toolCallId,toolName:e.toolName,input:t.value,providerExecuted:!0,dynamic:!0,providerMetadata:e.providerMetadata}}async function Vo({toolCall:e,tools:t}){const r=e.toolName,n=t[r];if(n==null){if(e.providerExecuted&&e.dynamic)return await Hl(e);throw new Zn({toolName:e.toolName,availableTools:Object.keys(t)})}const a=Qt(n.inputSchema),o=e.input.trim()===""?await rt({value:{},schema:a}):await We({text:e.input,schema:a});if(o.success===!1)throw new pa({toolName:r,toolInput:e.input,cause:o.error});return n.type==="dynamic"?{type:"tool-call",toolCallId:e.toolCallId,toolName:e.toolName,input:o.value,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,dynamic:!0,title:n.title}:{type:"tool-call",toolCallId:e.toolCallId,toolName:r,input:o.value,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:n.title}}var Jl=class{constructor({content:e,finishReason:t,rawFinishReason:r,usage:n,warnings:a,request:o,response:s,providerMetadata:i}){this.content=e,this.finishReason=t,this.rawFinishReason=r,this.usage=n,this.warnings=a,this.request=o,this.response=s,this.providerMetadata=i}get text(){return this.content.filter(e=>e.type==="text").map(e=>e.text).join("")}get reasoning(){return this.content.filter(e=>e.type==="reasoning")}get reasoningText(){return this.reasoning.length===0?void 0:this.reasoning.map(e=>e.text).join("")}get files(){return this.content.filter(e=>e.type==="file").map(e=>e.file)}get sources(){return this.content.filter(e=>e.type==="source")}get toolCalls(){return this.content.filter(e=>e.type==="tool-call")}get staticToolCalls(){return this.toolCalls.filter(e=>e.dynamic!==!0)}get dynamicToolCalls(){return this.toolCalls.filter(e=>e.dynamic===!0)}get toolResults(){return this.content.filter(e=>e.type==="tool-result")}get staticToolResults(){return this.toolResults.filter(e=>e.dynamic!==!0)}get dynamicToolResults(){return this.toolResults.filter(e=>e.dynamic===!0)}};function Yl(e){return({steps:t})=>t.length===e}async function Wl({stopConditions:e,steps:t}){return(await Promise.all(e.map(r=>r({steps:t})))).some(r=>r)}async function Bn({content:e,tools:t}){const r=[],n=[];for(const o of e)if(o.type!=="source"&&!((o.type==="tool-result"||o.type==="tool-error")&&!o.providerExecuted)&&!(o.type==="text"&&o.text.length===0))switch(o.type){case"text":n.push({type:"text",text:o.text,providerOptions:o.providerMetadata});break;case"reasoning":n.push({type:"reasoning",text:o.text,providerOptions:o.providerMetadata});break;case"file":n.push({type:"file",data:o.file.base64,mediaType:o.file.mediaType,providerOptions:o.providerMetadata});break;case"tool-call":n.push({type:"tool-call",toolCallId:o.toolCallId,toolName:o.toolName,input:o.input,providerExecuted:o.providerExecuted,providerOptions:o.providerMetadata});break;case"tool-result":{const s=await dr({toolCallId:o.toolCallId,input:o.input,tool:t==null?void 0:t[o.toolName],output:o.output,errorMode:"none"});n.push({type:"tool-result",toolCallId:o.toolCallId,toolName:o.toolName,output:s,providerOptions:o.providerMetadata});break}case"tool-error":{const s=await dr({toolCallId:o.toolCallId,input:o.input,tool:t==null?void 0:t[o.toolName],output:o.error,errorMode:"json"});n.push({type:"tool-result",toolCallId:o.toolCallId,toolName:o.toolName,output:s,providerOptions:o.providerMetadata});break}case"tool-approval-request":n.push({type:"tool-approval-request",approvalId:o.approvalId,toolCallId:o.toolCall.toolCallId});break}n.length>0&&r.push({role:"assistant",content:n});const a=[];for(const o of e){if(!(o.type==="tool-result"||o.type==="tool-error")||o.providerExecuted)continue;const s=await dr({toolCallId:o.toolCallId,input:o.input,tool:t==null?void 0:t[o.toolName],output:o.type==="tool-result"?o.output:o.error,errorMode:o.type==="tool-error"?"text":"none"});a.push({type:"tool-result",toolCallId:o.toolCallId,toolName:o.toolName,output:s,...o.providerMetadata!=null?{providerOptions:o.providerMetadata}:{}})}return a.length>0&&r.push({role:"tool",content:a}),r}var Uy=Nr({prefix:"aitxt",size:24});async function Vn({model:e,tools:t,toolChoice:r,system:n,prompt:a,messages:o,maxRetries:s,abortSignal:i,headers:l,stopWhen:u=Yl(1),experimental_output:c,output:p=c,experimental_telemetry:d,providerOptions:v,experimental_activeTools:E,activeTools:w=E,experimental_prepareStep:I,prepareStep:P=I,experimental_repairToolCall:C,experimental_download:h,experimental_context:z,_internal:{generateId:x=Uy,currentDate:y=()=>new Date}={},onStepFinish:O,onFinish:D,...F}){const ie=nn(e),L=wr(u),{maxRetries:X,retry:Q}=ql({maxRetries:s,abortSignal:i}),le=Gn(F),Oe=Ar(l??{},`ai/${Sl}`),Te=zl({model:ie,telemetry:d,headers:Oe,settings:{...le,maxRetries:X}}),ct=await Cl({system:n,prompt:a,messages:o}),Fe=$l(d);try{return await Er({name:"ai.generateText",attributes:tt({telemetry:d,attributes:{...br({operationId:"ai.generateText",telemetry:d}),...Te,"ai.model.provider":ie.provider,"ai.model.id":ie.modelId,"ai.prompt":{input:()=>JSON.stringify({system:n,prompt:a,messages:o})}}}),tracer:Fe,fn:async Dt=>{var zt,Ce,$t,Mt,nt,at,xr,dt;const er=ct.messages,ot=[],{approvedToolApprovals:Rr,deniedToolApprovals:tr}=Zl({messages:er}),It=Rr.filter(U=>!U.toolCall.providerExecuted);if(tr.length>0||It.length>0){const U=await Ho({toolCalls:It.map(W=>W.toolCall),tools:t,tracer:Fe,telemetry:d,messages:er,abortSignal:i,experimental_context:z}),oe=[];for(const W of U){const st=await dr({toolCallId:W.toolCallId,input:W.input,tool:t==null?void 0:t[W.toolName],output:W.type==="tool-result"?W.output:W.error,errorMode:W.type==="tool-error"?"json":"none"});oe.push({type:"tool-result",toolCallId:W.toolCallId,toolName:W.toolName,output:st})}for(const W of tr)oe.push({type:"tool-result",toolCallId:W.toolCall.toolCallId,toolName:W.toolCall.toolName,output:{type:"execution-denied",reason:W.approvalResponse.reason,...W.toolCall.providerExecuted&&{providerOptions:{openai:{approvalId:W.approvalResponse.approvalId}}}}});ot.push({role:"tool",content:oe})}const Ze=[...Rr,...tr].filter(U=>U.toolCall.providerExecuted);Ze.length>0&&ot.push({role:"tool",content:Ze.map(U=>({type:"tool-approval-response",approvalId:U.approvalResponse.approvalId,approved:U.approvalResponse.approved,reason:U.approvalResponse.reason,providerExecuted:!0}))});const kr=Gn(F);let J,pe=[],fe=[];const ae=[],V=new Map;do{const U=[...er,...ot],oe=await(P==null?void 0:P({model:ie,steps:ae,stepNumber:ae.length,messages:U,experimental_context:z})),W=nn((zt=oe==null?void 0:oe.model)!=null?zt:ie),st=await Ol({prompt:{system:(Ce=oe==null?void 0:oe.system)!=null?Ce:ct.system,messages:($t=oe==null?void 0:oe.messages)!=null?$t:U},supportedUrls:await W.supportedUrls,download:h});z=(Mt=oe==null?void 0:oe.experimental_context)!=null?Mt:z;const{toolChoice:ke,tools:pt}=await xl({tools:t,toolChoice:(nt=oe==null?void 0:oe.toolChoice)!=null?nt:r,activeTools:(at=oe==null?void 0:oe.activeTools)!=null?at:w});J=await Q(()=>{var $;return Er({name:"ai.generateText.doGenerate",attributes:tt({telemetry:d,attributes:{...br({operationId:"ai.generateText.doGenerate",telemetry:d}),...Te,"ai.model.provider":W.provider,"ai.model.id":W.modelId,"ai.prompt.messages":{input:()=>Fl(st)},"ai.prompt.tools":{input:()=>pt==null?void 0:pt.map(be=>JSON.stringify(be))},"ai.prompt.toolChoice":{input:()=>ke!=null?JSON.stringify(ke):void 0},"gen_ai.system":W.provider,"gen_ai.request.model":W.modelId,"gen_ai.request.frequency_penalty":F.frequencyPenalty,"gen_ai.request.max_tokens":F.maxOutputTokens,"gen_ai.request.presence_penalty":F.presencePenalty,"gen_ai.request.stop_sequences":F.stopSequences,"gen_ai.request.temperature":($=F.temperature)!=null?$:void 0,"gen_ai.request.top_k":F.topK,"gen_ai.request.top_p":F.topP}}),tracer:Fe,fn:async be=>{var Ft,it,Lt,Pr,Cr,rr,nr,lt;const Dr=pn(v,oe==null?void 0:oe.providerOptions),xe=await W.doGenerate({...kr,tools:pt,toolChoice:ke,responseFormat:await(p==null?void 0:p.responseFormat),prompt:st,providerOptions:Dr,abortSignal:i,headers:Oe}),gt={id:(it=(Ft=xe.response)==null?void 0:Ft.id)!=null?it:x(),timestamp:(Pr=(Lt=xe.response)==null?void 0:Lt.timestamp)!=null?Pr:y(),modelId:(rr=(Cr=xe.response)==null?void 0:Cr.modelId)!=null?rr:W.modelId,headers:(nr=xe.response)==null?void 0:nr.headers,body:(lt=xe.response)==null?void 0:lt.body};return be.setAttributes(await tt({telemetry:d,attributes:{"ai.response.finishReason":xe.finishReason.unified,"ai.response.text":{output:()=>Bo(xe.content)},"ai.response.toolCalls":{output:()=>{const mt=Jo(xe.content);return mt==null?void 0:JSON.stringify(mt)}},"ai.response.id":gt.id,"ai.response.model":gt.modelId,"ai.response.timestamp":gt.timestamp.toISOString(),"ai.response.providerMetadata":JSON.stringify(xe.providerMetadata),"ai.usage.promptTokens":xe.usage.inputTokens.total,"ai.usage.completionTokens":xe.usage.outputTokens.total,"gen_ai.response.finish_reasons":[xe.finishReason.unified],"gen_ai.response.id":gt.id,"gen_ai.response.model":gt.modelId,"gen_ai.usage.input_tokens":xe.usage.inputTokens.total,"gen_ai.usage.output_tokens":xe.usage.outputTokens.total}})),{...xe,response:gt}}})});const _e=await Promise.all(J.content.filter($=>$.type==="tool-call").map($=>Vl({toolCall:$,tools:t,repairToolCall:C,system:n,messages:U}))),Ne={};for(const $ of _e){if($.invalid)continue;const be=t==null?void 0:t[$.toolName];be!=null&&((be==null?void 0:be.onInputAvailable)!=null&&await be.onInputAvailable({input:$.input,toolCallId:$.toolCallId,messages:U,abortSignal:i,experimental_context:z}),await Bl({tool:be,toolCall:$,messages:U,experimental_context:z})&&(Ne[$.toolCallId]={type:"tool-approval-request",approvalId:x(),toolCall:$}))}const we=_e.filter($=>$.invalid&&$.dynamic);fe=[];for(const $ of we)fe.push({type:"tool-error",toolCallId:$.toolCallId,toolName:$.toolName,input:$.input,error:aa($.error),dynamic:!0});pe=_e.filter($=>!$.providerExecuted),t!=null&&fe.push(...await Ho({toolCalls:pe.filter($=>!$.invalid&&Ne[$.toolCallId]==null),tools:t,tracer:Fe,telemetry:d,messages:U,abortSignal:i,experimental_context:z}));for(const $ of _e){if(!$.providerExecuted)continue;const be=t==null?void 0:t[$.toolName];(be==null?void 0:be.type)==="provider"&&be.supportsDeferredResults&&(J.content.some(it=>it.type==="tool-result"&&it.toolCallId===$.toolCallId)||V.set($.toolCallId,{toolName:$.toolName}))}for(const $ of J.content)$.type==="tool-result"&&V.delete($.toolCallId);const St=qy({content:J.content,toolCalls:_e,toolOutputs:fe,toolApprovalRequests:Object.values(Ne),tools:t});ot.push(...await Bn({content:St,tools:t}));const ft=new Jl({content:St,finishReason:J.finishReason.unified,rawFinishReason:J.finishReason.raw,usage:Ll(J.usage),warnings:J.warnings,providerMetadata:J.providerMetadata,request:(xr=J.request)!=null?xr:{},response:{...J.response,messages:structuredClone(ot)}});ga({warnings:(dt=J.warnings)!=null?dt:[],provider:W.provider,model:W.modelId}),ae.push(ft),await(O==null?void 0:O(ft))}while((pe.length>0&&fe.length===pe.length||V.size>0)&&!await Wl({stopConditions:L,steps:ae}));Dt.setAttributes(await tt({telemetry:d,attributes:{"ai.response.finishReason":J.finishReason.unified,"ai.response.text":{output:()=>Bo(J.content)},"ai.response.toolCalls":{output:()=>{const U=Jo(J.content);return U==null?void 0:JSON.stringify(U)}},"ai.response.providerMetadata":JSON.stringify(J.providerMetadata),"ai.usage.promptTokens":J.usage.inputTokens.total,"ai.usage.completionTokens":J.usage.outputTokens.total}}));const B=ae[ae.length-1],Ke=ae.reduce((U,oe)=>Ul(U,oe.usage),{inputTokens:void 0,outputTokens:void 0,totalTokens:void 0,reasoningTokens:void 0,cachedInputTokens:void 0});await(D==null?void 0:D({finishReason:B.finishReason,rawFinishReason:B.rawFinishReason,usage:B.usage,content:B.content,text:B.text,reasoningText:B.reasoningText,reasoning:B.reasoning,files:B.files,sources:B.sources,toolCalls:B.toolCalls,staticToolCalls:B.staticToolCalls,dynamicToolCalls:B.dynamicToolCalls,toolResults:B.toolResults,staticToolResults:B.staticToolResults,dynamicToolResults:B.dynamicToolResults,request:B.request,response:B.response,warnings:B.warnings,providerMetadata:B.providerMetadata,steps:ae,totalUsage:Ke,experimental_context:z}));let A;return B.finishReason==="stop"&&(A=await(p??an()).parseCompleteOutput({text:B.text},{response:B.response,usage:B.usage,finishReason:B.finishReason})),new jy({steps:ae,totalUsage:Ke,output:A})}})}catch(Dt){throw Dl(Dt)}}async function Ho({toolCalls:e,tools:t,tracer:r,telemetry:n,messages:a,abortSignal:o,experimental_context:s}){return(await Promise.all(e.map(async l=>ma({toolCall:l,tools:t,tracer:r,telemetry:n,messages:a,abortSignal:o,experimental_context:s})))).filter(l=>l!=null)}var jy=class{constructor(e){this.steps=e.steps,this._output=e.output,this.totalUsage=e.totalUsage}get finalStep(){return this.steps[this.steps.length-1]}get content(){return this.finalStep.content}get text(){return this.finalStep.text}get files(){return this.finalStep.files}get reasoningText(){return this.finalStep.reasoningText}get reasoning(){return this.finalStep.reasoning}get toolCalls(){return this.finalStep.toolCalls}get staticToolCalls(){return this.finalStep.staticToolCalls}get dynamicToolCalls(){return this.finalStep.dynamicToolCalls}get toolResults(){return this.finalStep.toolResults}get staticToolResults(){return this.finalStep.staticToolResults}get dynamicToolResults(){return this.finalStep.dynamicToolResults}get sources(){return this.finalStep.sources}get finishReason(){return this.finalStep.finishReason}get rawFinishReason(){return this.finalStep.rawFinishReason}get warnings(){return this.finalStep.warnings}get providerMetadata(){return this.finalStep.providerMetadata}get response(){return this.finalStep.response}get request(){return this.finalStep.request}get usage(){return this.finalStep.usage}get experimental_output(){return this.output}get output(){if(this._output==null)throw new cl;return this._output}};function Jo(e){const t=e.filter(r=>r.type==="tool-call");if(t.length!==0)return t.map(r=>({toolCallId:r.toolCallId,toolName:r.toolName,input:r.input}))}function qy({content:e,toolCalls:t,toolOutputs:r,toolApprovalRequests:n,tools:a}){const o=[];for(const s of e)switch(s.type){case"text":case"reasoning":case"source":o.push(s);break;case"file":{o.push({type:"file",file:new Gl(s),...s.providerMetadata!=null?{providerMetadata:s.providerMetadata}:{}});break}case"tool-call":{o.push(t.find(i=>i.toolCallId===s.toolCallId));break}case"tool-result":{const i=t.find(l=>l.toolCallId===s.toolCallId);if(i==null){const l=a==null?void 0:a[s.toolName];if(!((l==null?void 0:l.type)==="provider"&&l.supportsDeferredResults))throw new Error(`Tool call ${s.toolCallId} not found.`);s.isError?o.push({type:"tool-error",toolCallId:s.toolCallId,toolName:s.toolName,input:void 0,error:s.result,providerExecuted:!0,dynamic:s.dynamic}):o.push({type:"tool-result",toolCallId:s.toolCallId,toolName:s.toolName,input:void 0,output:s.result,providerExecuted:!0,dynamic:s.dynamic});break}s.isError?o.push({type:"tool-error",toolCallId:s.toolCallId,toolName:s.toolName,input:i.input,error:s.result,providerExecuted:!0,dynamic:i.dynamic}):o.push({type:"tool-result",toolCallId:s.toolCallId,toolName:s.toolName,input:i.input,output:s.result,providerExecuted:!0,dynamic:i.dynamic});break}case"tool-approval-request":{const i=t.find(l=>l.toolCallId===s.toolCallId);if(i==null)throw new fa({toolCallId:s.toolCallId,approvalId:s.approvalId});o.push({type:"tool-approval-request",approvalId:s.approvalId,toolCall:i});break}}return[...o,...r,...n]}function fn(e,t){const r=new Headers(e??{});for(const[n,a]of Object.entries(t))r.has(n)||r.set(n,a);return r}function Zy({status:e,statusText:t,headers:r,textStream:n}){return new Response(n.pipeThrough(new TextEncoderStream),{status:e??200,statusText:t,headers:fn(r,{"content-type":"text/plain; charset=utf-8"})})}function Kl({response:e,status:t,statusText:r,headers:n,stream:a}){const o=t??200;r!==void 0?e.writeHead(o,r,n):e.writeHead(o,n);const s=a.getReader();(async()=>{try{for(;;){const{done:l,value:u}=await s.read();if(l)break;e.write(u)||await new Promise(p=>{e.once("drain",p)})}}catch(l){throw l}finally{e.end()}})()}function Gy({response:e,status:t,statusText:r,headers:n,textStream:a}){Kl({response:e,status:t,statusText:r,headers:Object.fromEntries(fn(n,{"content-type":"text/plain; charset=utf-8"}).entries()),stream:a.pipeThrough(new TextEncoderStream)})}var Xl=class extends TransformStream{constructor(){super({transform(e,t){t.enqueue(`data: ${JSON.stringify(e)}
|
|
72
|
+
`),{name:"GatewayAuthenticationError"})}function Er({operationId:e,telemetry:t}){return{"operation.name":`${e}${(t==null?void 0:t.functionId)!=null?` ${t.functionId}`:""}`,"resource.name":t==null?void 0:t.functionId,"ai.operationId":e,"ai.telemetry.functionId":t==null?void 0:t.functionId}}function $l({model:e,settings:t,telemetry:r,headers:n}){var a;return{"ai.model.provider":e.provider,"ai.model.id":e.modelId,...Object.entries(t).reduce((o,[s,i])=>(o[`ai.settings.${s}`]=i,o),{}),...Object.entries((a=r==null?void 0:r.metadata)!=null?a:{}).reduce((o,[s,i])=>(o[`ai.telemetry.metadata.${s}`]=i,o),{}),...Object.entries(n??{}).reduce((o,[s,i])=>(i!==void 0&&(o[`ai.request.headers.${s}`]=i),o),{})}}var xy={startSpan(){return Ur},startActiveSpan(e,t,r,n){if(typeof t=="function")return t(Ur);if(typeof r=="function")return r(Ur);if(typeof n=="function")return n(Ur)}},Ur={spanContext(){return ky},setAttribute(){return this},setAttributes(){return this},addEvent(){return this},addLink(){return this},addLinks(){return this},setStatus(){return this},updateName(){return this},end(){return this},isRecording(){return!1},recordException(){return this}},ky={traceId:"",spanId:"",traceFlags:0};function Ml({isEnabled:e=!1,tracer:t}={}){return e?t||Fh.getTracer("ai"):xy}async function Ir({name:e,tracer:t,attributes:r,fn:n,endWhenDone:a=!0}){return t.startActiveSpan(e,{attributes:await r},async o=>{try{const s=await n(o);return a&&o.end(),s}catch(s){try{Fl(o,s)}finally{o.end()}throw s}})}function Fl(e,t){t instanceof Error?(e.recordException({name:t.name,message:t.message,stack:t.stack}),e.setStatus({code:nn.ERROR,message:t.message})):e.setStatus({code:nn.ERROR})}async function tt({telemetry:e,attributes:t}){if((e==null?void 0:e.isEnabled)!==!0)return{};const r={};for(const[n,a]of Object.entries(t))if(a!=null){if(typeof a=="object"&&"input"in a&&typeof a.input=="function"){if((e==null?void 0:e.recordInputs)===!1)continue;const o=await a.input();o!=null&&(r[n]=o);continue}if(typeof a=="object"&&"output"in a&&typeof a.output=="function"){if((e==null?void 0:e.recordOutputs)===!1)continue;const o=await a.output();o!=null&&(r[n]=o);continue}r[n]=a}return r}function Ll(e){return JSON.stringify(e.map(t=>({...t,content:typeof t.content=="string"?t.content:t.content.map(r=>r.type==="file"?{...r,data:r.data instanceof Uint8Array?gy(r.data):r.data}:r)})))}function Ul(e){return{inputTokens:e.inputTokens.total,inputTokenDetails:{noCacheTokens:e.inputTokens.noCache,cacheReadTokens:e.inputTokens.cacheRead,cacheWriteTokens:e.inputTokens.cacheWrite},outputTokens:e.outputTokens.total,outputTokenDetails:{textTokens:e.outputTokens.text,reasoningTokens:e.outputTokens.reasoning},totalTokens:Ye(e.inputTokens.total,e.outputTokens.total),raw:e.raw,reasoningTokens:e.outputTokens.reasoning,cachedInputTokens:e.inputTokens.cacheRead}}function Cn(){return{inputTokens:void 0,inputTokenDetails:{noCacheTokens:void 0,cacheReadTokens:void 0,cacheWriteTokens:void 0},outputTokens:void 0,outputTokenDetails:{textTokens:void 0,reasoningTokens:void 0},totalTokens:void 0,raw:void 0}}function jl(e,t){var r,n,a,o,s,i,l,u,c,p;return{inputTokens:Ye(e.inputTokens,t.inputTokens),inputTokenDetails:{noCacheTokens:Ye((r=e.inputTokenDetails)==null?void 0:r.noCacheTokens,(n=t.inputTokenDetails)==null?void 0:n.noCacheTokens),cacheReadTokens:Ye((a=e.inputTokenDetails)==null?void 0:a.cacheReadTokens,(o=t.inputTokenDetails)==null?void 0:o.cacheReadTokens),cacheWriteTokens:Ye((s=e.inputTokenDetails)==null?void 0:s.cacheWriteTokens,(i=t.inputTokenDetails)==null?void 0:i.cacheWriteTokens)},outputTokens:Ye(e.outputTokens,t.outputTokens),outputTokenDetails:{textTokens:Ye((l=e.outputTokenDetails)==null?void 0:l.textTokens,(u=t.outputTokenDetails)==null?void 0:u.textTokens),reasoningTokens:Ye((c=e.outputTokenDetails)==null?void 0:c.reasoningTokens,(p=t.outputTokenDetails)==null?void 0:p.reasoningTokens)},totalTokens:Ye(e.totalTokens,t.totalTokens),reasoningTokens:Ye(e.reasoningTokens,t.reasoningTokens),cachedInputTokens:Ye(e.cachedInputTokens,t.cachedInputTokens)}}function Ye(e,t){return e==null&&t==null?void 0:(e??0)+(t??0)}function fn(e,t){if(e===void 0&&t===void 0)return;if(e===void 0)return t;if(t===void 0)return e;const r={...e};for(const n in t)if(Object.prototype.hasOwnProperty.call(t,n)){const a=t[n];if(a===void 0)continue;const o=n in e?e[n]:void 0,s=a!==null&&typeof a=="object"&&!Array.isArray(a)&&!(a instanceof Date)&&!(a instanceof RegExp),i=o!=null&&typeof o=="object"&&!Array.isArray(o)&&!(o instanceof Date)&&!(o instanceof RegExp);s&&i?r[n]=fn(o,a):r[n]=a}return r}function Py({error:e,exponentialBackoffDelay:t}){const r=e.responseHeaders;if(!r)return t;let n;const a=r["retry-after-ms"];if(a){const s=parseFloat(a);Number.isNaN(s)||(n=s)}const o=r["retry-after"];if(o&&n===void 0){const s=parseFloat(o);Number.isNaN(s)?n=Date.parse(o)-Date.now():n=s*1e3}return n!=null&&!Number.isNaN(n)&&0<=n&&(n<60*1e3||n<t)?n:t}var Cy=({maxRetries:e=2,initialDelayInMs:t=2e3,backoffFactor:r=2,abortSignal:n}={})=>async a=>ql(a,{maxRetries:e,delayInMs:t,backoffFactor:r,abortSignal:n});async function ql(e,{maxRetries:t,delayInMs:r,backoffFactor:n,abortSignal:a},o=[]){try{return await e()}catch(s){if(kt(s)||t===0)throw s;const i=oa(s),l=[...o,s],u=l.length;if(u>t)throw new qo({message:`Failed after ${u} attempts. Last error: ${i}`,reason:"maxRetriesExceeded",errors:l});if(s instanceof Error&&$e.isInstance(s)&&s.isRetryable===!0&&u<=t)return await hg(Py({error:s,exponentialBackoffDelay:r}),{abortSignal:a}),ql(e,{maxRetries:t,delayInMs:n*r,backoffFactor:n,abortSignal:a},l);throw u===1?s:new qo({message:`Failed after ${u} attempts with non-retryable error: '${i}'`,reason:"errorNotRetryable",errors:l})}}function Zl({maxRetries:e,abortSignal:t}){if(e!=null){if(!Number.isInteger(e))throw new et({parameter:"maxRetries",value:e,message:"maxRetries must be an integer"});if(e<0)throw new et({parameter:"maxRetries",value:e,message:"maxRetries must be >= 0"})}const r=e??2;return{maxRetries:r,retry:Cy({maxRetries:r,abortSignal:t})}}function Gl({messages:e}){const t=e.at(-1);if((t==null?void 0:t.role)!="tool")return{approvedToolApprovals:[],deniedToolApprovals:[]};const r={};for(const l of e)if(l.role==="assistant"&&typeof l.content!="string"){const u=l.content;for(const c of u)c.type==="tool-call"&&(r[c.toolCallId]=c)}const n={};for(const l of e)if(l.role==="assistant"&&typeof l.content!="string"){const u=l.content;for(const c of u)c.type==="tool-approval-request"&&(n[c.approvalId]=c)}const a={};for(const l of t.content)l.type==="tool-result"&&(a[l.toolCallId]=l);const o=[],s=[],i=t.content.filter(l=>l.type==="tool-approval-response");for(const l of i){const u=n[l.approvalId];if(u==null)throw new Zh({approvalId:l.approvalId});if(a[u.toolCallId]!=null)continue;const c=r[u.toolCallId];if(c==null)throw new ga({toolCallId:u.toolCallId,approvalId:u.approvalId});const p={approvalRequest:u,approvalResponse:l,toolCall:c};l.approved?o.push(p):s.push(p)}return{approvedToolApprovals:o,deniedToolApprovals:s}}async function ha({toolCall:e,tools:t,tracer:r,telemetry:n,messages:a,abortSignal:o,experimental_context:s,onPreliminaryToolResult:i}){const{toolName:l,toolCallId:u,input:c}=e,p=t==null?void 0:t[l];if((p==null?void 0:p.execute)!=null)return Ir({name:"ai.toolCall",attributes:tt({telemetry:n,attributes:{...Er({operationId:"ai.toolCall",telemetry:n}),"ai.toolCall.name":l,"ai.toolCall.id":u,"ai.toolCall.args":{output:()=>JSON.stringify(c)}}}),tracer:r,fn:async d=>{let v;try{const E=Sm({execute:p.execute.bind(p),input:c,options:{toolCallId:u,messages:a,abortSignal:o,experimental_context:s}});for await(const w of E)w.type==="preliminary"?i==null||i({...e,type:"tool-result",output:w.output,preliminary:!0}):v=w.output}catch(E){return Fl(d,E),{type:"tool-error",toolCallId:u,toolName:l,input:c,error:E,dynamic:p.type==="dynamic",...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}}}try{d.setAttributes(await tt({telemetry:n,attributes:{"ai.toolCall.result":{output:()=>JSON.stringify(v)}}}))}catch{}return{type:"tool-result",toolCallId:u,toolName:l,input:c,output:v,dynamic:p.type==="dynamic",...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}}}})}function Vo(e){const t=e.filter(r=>r.type==="text");if(t.length!==0)return t.map(r=>r.text).join("")}var Bl=class{constructor({data:e,mediaType:t}){const r=e instanceof Uint8Array;this.base64Data=r?void 0:e,this.uint8ArrayData=r?e:void 0,this.mediaType=t}get base64(){return this.base64Data==null&&(this.base64Data=en(this.uint8ArrayData)),this.base64Data}get uint8Array(){return this.uint8ArrayData==null&&(this.uint8ArrayData=aa(this.base64Data)),this.uint8ArrayData}},zy=class extends Bl{constructor(e){super(e),this.type="file"}};async function Vl({tool:e,toolCall:t,messages:r,experimental_context:n}){return e.needsApproval==null?!1:typeof e.needsApproval=="boolean"?e.needsApproval:await e.needsApproval(t.input,{toolCallId:t.toolCallId,messages:r,experimental_context:n})}var Dy={};Uh(Dy,{array:()=>Fy,choice:()=>Ly,json:()=>Uy,object:()=>My,text:()=>on});function $y(e){const t=["ROOT"];let r=-1,n=null;function a(l,u,c){switch(l){case'"':{r=u,t.pop(),t.push(c),t.push("INSIDE_STRING");break}case"f":case"t":case"n":{r=u,n=u,t.pop(),t.push(c),t.push("INSIDE_LITERAL");break}case"-":{t.pop(),t.push(c),t.push("INSIDE_NUMBER");break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{r=u,t.pop(),t.push(c),t.push("INSIDE_NUMBER");break}case"{":{r=u,t.pop(),t.push(c),t.push("INSIDE_OBJECT_START");break}case"[":{r=u,t.pop(),t.push(c),t.push("INSIDE_ARRAY_START");break}}}function o(l,u){switch(l){case",":{t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break}case"}":{r=u,t.pop();break}}}function s(l,u){switch(l){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{r=u,t.pop();break}}}for(let l=0;l<e.length;l++){const u=e[l];switch(t[t.length-1]){case"ROOT":a(u,l,"FINISH");break;case"INSIDE_OBJECT_START":{switch(u){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}case"}":{r=l,t.pop();break}}break}case"INSIDE_OBJECT_AFTER_COMMA":{switch(u){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}}break}case"INSIDE_OBJECT_KEY":{switch(u){case'"':{t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY");break}}break}case"INSIDE_OBJECT_AFTER_KEY":{switch(u){case":":{t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE");break}}break}case"INSIDE_OBJECT_BEFORE_VALUE":{a(u,l,"INSIDE_OBJECT_AFTER_VALUE");break}case"INSIDE_OBJECT_AFTER_VALUE":{o(u,l);break}case"INSIDE_STRING":{switch(u){case'"':{t.pop(),r=l;break}case"\\":{t.push("INSIDE_STRING_ESCAPE");break}default:r=l}break}case"INSIDE_ARRAY_START":{switch(u){case"]":{r=l,t.pop();break}default:{r=l,a(u,l,"INSIDE_ARRAY_AFTER_VALUE");break}}break}case"INSIDE_ARRAY_AFTER_VALUE":{switch(u){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{r=l,t.pop();break}default:{r=l;break}}break}case"INSIDE_ARRAY_AFTER_COMMA":{a(u,l,"INSIDE_ARRAY_AFTER_VALUE");break}case"INSIDE_STRING_ESCAPE":{t.pop(),r=l;break}case"INSIDE_NUMBER":{switch(u){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{r=l;break}case"e":case"E":case"-":case".":break;case",":{t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&s(u,l),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&o(u,l);break}case"}":{t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&o(u,l);break}case"]":{t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&s(u,l);break}default:{t.pop();break}}break}case"INSIDE_LITERAL":{const p=e.substring(n,l+1);!"false".startsWith(p)&&!"true".startsWith(p)&&!"null".startsWith(p)?(t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"?o(u,l):t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&s(u,l)):r=l;break}}}let i=e.slice(0,r+1);for(let l=t.length-1;l>=0;l--)switch(t[l]){case"INSIDE_STRING":{i+='"';break}case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":{i+="}";break}case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":{i+="]";break}case"INSIDE_LITERAL":{const c=e.substring(n,e.length);"true".startsWith(c)?i+="true".slice(c.length):"false".startsWith(c)?i+="false".slice(c.length):"null".startsWith(c)&&(i+="null".slice(c.length))}}return i}async function Rr(e){if(e===void 0)return{value:void 0,state:"undefined-input"};let t=await We({text:e});return t.success?{value:t.value,state:"successful-parse"}:(t=await We({text:$y(e)}),t.success?{value:t.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"})}var on=()=>({responseFormat:Promise.resolve({type:"text"}),async parseCompleteOutput({text:e}){return e},async parsePartialOutput({text:e}){return{partial:e}}}),My=({schema:e,name:t,description:r})=>{const n=Qt(e);return{responseFormat:Ge(n.jsonSchema).then(a=>({type:"json",schema:a,...t!=null&&{name:t},...r!=null&&{description:r}})),async parseCompleteOutput({text:a},o){const s=await We({text:a});if(!s.success)throw new yt({message:"No object generated: could not parse the response.",cause:s.error,text:a,response:o.response,usage:o.usage,finishReason:o.finishReason});const i=await rt({value:s.value,schema:n});if(!i.success)throw new yt({message:"No object generated: response did not match schema.",cause:i.error,text:a,response:o.response,usage:o.usage,finishReason:o.finishReason});return i.value},async parsePartialOutput({text:a}){const o=await Rr(a);switch(o.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:o.value}}}}},Fy=({element:e,name:t,description:r})=>{const n=Qt(e);return{responseFormat:Ge(n.jsonSchema).then(a=>{const{$schema:o,...s}=a;return{type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{elements:{type:"array",items:s}},required:["elements"],additionalProperties:!1},...t!=null&&{name:t},...r!=null&&{description:r}}}),async parseCompleteOutput({text:a},o){const s=await We({text:a});if(!s.success)throw new yt({message:"No object generated: could not parse the response.",cause:s.error,text:a,response:o.response,usage:o.usage,finishReason:o.finishReason});const i=s.value;if(i==null||typeof i!="object"||!("elements"in i)||!Array.isArray(i.elements))throw new yt({message:"No object generated: response did not match schema.",cause:new Rt({value:i,cause:"response must be an object with an elements array"}),text:a,response:o.response,usage:o.usage,finishReason:o.finishReason});for(const l of i.elements){const u=await rt({value:l,schema:n});if(!u.success)throw new yt({message:"No object generated: response did not match schema.",cause:u.error,text:a,response:o.response,usage:o.usage,finishReason:o.finishReason})}return i.elements},async parsePartialOutput({text:a}){const o=await Rr(a);switch(o.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{const s=o.value;if(s==null||typeof s!="object"||!("elements"in s)||!Array.isArray(s.elements))return;const i=o.state==="repaired-parse"&&s.elements.length>0?s.elements.slice(0,-1):s.elements,l=[];for(const u of i){const c=await rt({value:u,schema:n});c.success&&l.push(c.value)}return{partial:l}}}}}},Ly=({options:e,name:t,description:r})=>({responseFormat:Promise.resolve({type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{result:{type:"string",enum:e}},required:["result"],additionalProperties:!1},...t!=null&&{name:t},...r!=null&&{description:r}}),async parseCompleteOutput({text:n},a){const o=await We({text:n});if(!o.success)throw new yt({message:"No object generated: could not parse the response.",cause:o.error,text:n,response:a.response,usage:a.usage,finishReason:a.finishReason});const s=o.value;if(s==null||typeof s!="object"||!("result"in s)||typeof s.result!="string"||!e.includes(s.result))throw new yt({message:"No object generated: response did not match schema.",cause:new Rt({value:s,cause:"response must be an object that contains a choice value."}),text:n,response:a.response,usage:a.usage,finishReason:a.finishReason});return s.result},async parsePartialOutput({text:n}){const a=await Rr(n);switch(a.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{const o=a.value;if(o==null||typeof o!="object"||!("result"in o)||typeof o.result!="string")return;const s=e.filter(i=>i.startsWith(o.result));return a.state==="successful-parse"?s.includes(o.result)?{partial:o.result}:void 0:s.length===1?{partial:s[0]}:void 0}}}}),Uy=({name:e,description:t}={})=>({responseFormat:Promise.resolve({type:"json",...e!=null&&{name:e},...t!=null&&{description:t}}),async parseCompleteOutput({text:r},n){const a=await We({text:r});if(!a.success)throw new yt({message:"No object generated: could not parse the response.",cause:a.error,text:r,response:n.response,usage:n.usage,finishReason:n.finishReason});return a.value},async parsePartialOutput({text:r}){const n=await Rr(r);switch(n.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return n.value===void 0?void 0:{partial:n.value}}}});async function Hl({toolCall:e,tools:t,repairToolCall:r,system:n,messages:a}){var o;try{if(t==null){if(e.providerExecuted&&e.dynamic)return await Jl(e);throw new Gn({toolName:e.toolName})}try{return await Ho({toolCall:e,tools:t})}catch(s){if(r==null||!(Gn.isInstance(s)||fa.isInstance(s)))throw s;let i=null;try{i=await r({toolCall:e,tools:t,inputSchema:async({toolName:l})=>{const{inputSchema:u}=t[l];return await Qt(u).jsonSchema},system:n,messages:a,error:s})}catch(l){throw new Wh({cause:l,originalError:s})}if(i==null)throw s;return await Ho({toolCall:i,tools:t})}}catch(s){const i=await We({text:e.input}),l=i.success?i.value:e.input;return{type:"tool-call",toolCallId:e.toolCallId,toolName:e.toolName,input:l,dynamic:!0,invalid:!0,error:s,title:(o=t==null?void 0:t[e.toolName])==null?void 0:o.title,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}}}async function Jl(e){const t=e.input.trim()===""?{success:!0,value:{}}:await We({text:e.input});if(t.success===!1)throw new fa({toolName:e.toolName,toolInput:e.input,cause:t.error});return{type:"tool-call",toolCallId:e.toolCallId,toolName:e.toolName,input:t.value,providerExecuted:!0,dynamic:!0,providerMetadata:e.providerMetadata}}async function Ho({toolCall:e,tools:t}){const r=e.toolName,n=t[r];if(n==null){if(e.providerExecuted&&e.dynamic)return await Jl(e);throw new Gn({toolName:e.toolName,availableTools:Object.keys(t)})}const a=Qt(n.inputSchema),o=e.input.trim()===""?await rt({value:{},schema:a}):await We({text:e.input,schema:a});if(o.success===!1)throw new fa({toolName:r,toolInput:e.input,cause:o.error});return n.type==="dynamic"?{type:"tool-call",toolCallId:e.toolCallId,toolName:e.toolName,input:o.value,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,dynamic:!0,title:n.title}:{type:"tool-call",toolCallId:e.toolCallId,toolName:r,input:o.value,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata,title:n.title}}var Yl=class{constructor({content:e,finishReason:t,rawFinishReason:r,usage:n,warnings:a,request:o,response:s,providerMetadata:i}){this.content=e,this.finishReason=t,this.rawFinishReason=r,this.usage=n,this.warnings=a,this.request=o,this.response=s,this.providerMetadata=i}get text(){return this.content.filter(e=>e.type==="text").map(e=>e.text).join("")}get reasoning(){return this.content.filter(e=>e.type==="reasoning")}get reasoningText(){return this.reasoning.length===0?void 0:this.reasoning.map(e=>e.text).join("")}get files(){return this.content.filter(e=>e.type==="file").map(e=>e.file)}get sources(){return this.content.filter(e=>e.type==="source")}get toolCalls(){return this.content.filter(e=>e.type==="tool-call")}get staticToolCalls(){return this.toolCalls.filter(e=>e.dynamic!==!0)}get dynamicToolCalls(){return this.toolCalls.filter(e=>e.dynamic===!0)}get toolResults(){return this.content.filter(e=>e.type==="tool-result")}get staticToolResults(){return this.toolResults.filter(e=>e.dynamic!==!0)}get dynamicToolResults(){return this.toolResults.filter(e=>e.dynamic===!0)}};function Wl(e){return({steps:t})=>t.length===e}async function Kl({stopConditions:e,steps:t}){return(await Promise.all(e.map(r=>r({steps:t})))).some(r=>r)}async function Vn({content:e,tools:t}){const r=[],n=[];for(const o of e)if(o.type!=="source"&&!((o.type==="tool-result"||o.type==="tool-error")&&!o.providerExecuted)&&!(o.type==="text"&&o.text.length===0))switch(o.type){case"text":n.push({type:"text",text:o.text,providerOptions:o.providerMetadata});break;case"reasoning":n.push({type:"reasoning",text:o.text,providerOptions:o.providerMetadata});break;case"file":n.push({type:"file",data:o.file.base64,mediaType:o.file.mediaType,providerOptions:o.providerMetadata});break;case"tool-call":n.push({type:"tool-call",toolCallId:o.toolCallId,toolName:o.toolName,input:o.input,providerExecuted:o.providerExecuted,providerOptions:o.providerMetadata});break;case"tool-result":{const s=await pr({toolCallId:o.toolCallId,input:o.input,tool:t==null?void 0:t[o.toolName],output:o.output,errorMode:"none"});n.push({type:"tool-result",toolCallId:o.toolCallId,toolName:o.toolName,output:s,providerOptions:o.providerMetadata});break}case"tool-error":{const s=await pr({toolCallId:o.toolCallId,input:o.input,tool:t==null?void 0:t[o.toolName],output:o.error,errorMode:"json"});n.push({type:"tool-result",toolCallId:o.toolCallId,toolName:o.toolName,output:s,providerOptions:o.providerMetadata});break}case"tool-approval-request":n.push({type:"tool-approval-request",approvalId:o.approvalId,toolCallId:o.toolCall.toolCallId});break}n.length>0&&r.push({role:"assistant",content:n});const a=[];for(const o of e){if(!(o.type==="tool-result"||o.type==="tool-error")||o.providerExecuted)continue;const s=await pr({toolCallId:o.toolCallId,input:o.input,tool:t==null?void 0:t[o.toolName],output:o.type==="tool-result"?o.output:o.error,errorMode:o.type==="tool-error"?"text":"none"});a.push({type:"tool-result",toolCallId:o.toolCallId,toolName:o.toolName,output:s,...o.providerMetadata!=null?{providerOptions:o.providerMetadata}:{}})}return a.length>0&&r.push({role:"tool",content:a}),r}var jy=Nr({prefix:"aitxt",size:24});async function Hn({model:e,tools:t,toolChoice:r,system:n,prompt:a,messages:o,maxRetries:s,abortSignal:i,headers:l,stopWhen:u=Wl(1),experimental_output:c,output:p=c,experimental_telemetry:d,providerOptions:v,experimental_activeTools:E,activeTools:w=E,experimental_prepareStep:I,prepareStep:P=I,experimental_repairToolCall:C,experimental_download:h,experimental_context:D,_internal:{generateId:R=jy,currentDate:y=()=>new Date}={},onStepFinish:O,onFinish:z,...F}){const se=an(e),L=Tr(u),{maxRetries:X,retry:Q}=Zl({maxRetries:s,abortSignal:i}),le=Bn(F),Oe=Or(l??{},`ai/${Al}`),we=$l({model:se,telemetry:d,headers:Oe,settings:{...le,maxRetries:X}}),ct=await zl({system:n,prompt:a,messages:o}),Fe=Ml(d);try{return await Ir({name:"ai.generateText",attributes:tt({telemetry:d,attributes:{...Er({operationId:"ai.generateText",telemetry:d}),...we,"ai.model.provider":se.provider,"ai.model.id":se.modelId,"ai.prompt":{input:()=>JSON.stringify({system:n,prompt:a,messages:o})}}}),tracer:Fe,fn:async zt=>{var Dt,Ce,$t,Mt,nt,at,xr,dt;const er=ct.messages,ot=[],{approvedToolApprovals:kr,deniedToolApprovals:tr}=Gl({messages:er}),It=kr.filter(U=>!U.toolCall.providerExecuted);if(tr.length>0||It.length>0){const U=await Jo({toolCalls:It.map(W=>W.toolCall),tools:t,tracer:Fe,telemetry:d,messages:er,abortSignal:i,experimental_context:D}),ae=[];for(const W of U){const st=await pr({toolCallId:W.toolCallId,input:W.input,tool:t==null?void 0:t[W.toolName],output:W.type==="tool-result"?W.output:W.error,errorMode:W.type==="tool-error"?"json":"none"});ae.push({type:"tool-result",toolCallId:W.toolCallId,toolName:W.toolName,output:st})}for(const W of tr)ae.push({type:"tool-result",toolCallId:W.toolCall.toolCallId,toolName:W.toolCall.toolName,output:{type:"execution-denied",reason:W.approvalResponse.reason,...W.toolCall.providerExecuted&&{providerOptions:{openai:{approvalId:W.approvalResponse.approvalId}}}}});ot.push({role:"tool",content:ae})}const Ze=[...kr,...tr].filter(U=>U.toolCall.providerExecuted);Ze.length>0&&ot.push({role:"tool",content:Ze.map(U=>({type:"tool-approval-response",approvalId:U.approvalResponse.approvalId,approved:U.approvalResponse.approved,reason:U.approvalResponse.reason,providerExecuted:!0}))});const Pr=Bn(F);let J,pe=[],fe=[];const ne=[],V=new Map;do{const U=[...er,...ot],ae=await(P==null?void 0:P({model:se,steps:ne,stepNumber:ne.length,messages:U,experimental_context:D})),W=an((Dt=ae==null?void 0:ae.model)!=null?Dt:se),st=await Rl({prompt:{system:(Ce=ae==null?void 0:ae.system)!=null?Ce:ct.system,messages:($t=ae==null?void 0:ae.messages)!=null?$t:U},supportedUrls:await W.supportedUrls,download:h});D=(Mt=ae==null?void 0:ae.experimental_context)!=null?Mt:D;const{toolChoice:ke,tools:pt}=await xl({tools:t,toolChoice:(nt=ae==null?void 0:ae.toolChoice)!=null?nt:r,activeTools:(at=ae==null?void 0:ae.activeTools)!=null?at:w});J=await Q(()=>{var $;return Ir({name:"ai.generateText.doGenerate",attributes:tt({telemetry:d,attributes:{...Er({operationId:"ai.generateText.doGenerate",telemetry:d}),...we,"ai.model.provider":W.provider,"ai.model.id":W.modelId,"ai.prompt.messages":{input:()=>Ll(st)},"ai.prompt.tools":{input:()=>pt==null?void 0:pt.map(Te=>JSON.stringify(Te))},"ai.prompt.toolChoice":{input:()=>ke!=null?JSON.stringify(ke):void 0},"gen_ai.system":W.provider,"gen_ai.request.model":W.modelId,"gen_ai.request.frequency_penalty":F.frequencyPenalty,"gen_ai.request.max_tokens":F.maxOutputTokens,"gen_ai.request.presence_penalty":F.presencePenalty,"gen_ai.request.stop_sequences":F.stopSequences,"gen_ai.request.temperature":($=F.temperature)!=null?$:void 0,"gen_ai.request.top_k":F.topK,"gen_ai.request.top_p":F.topP}}),tracer:Fe,fn:async Te=>{var Ft,it,Lt,Cr,zr,rr,nr,lt;const Dr=fn(v,ae==null?void 0:ae.providerOptions),Re=await W.doGenerate({...Pr,tools:pt,toolChoice:ke,responseFormat:await(p==null?void 0:p.responseFormat),prompt:st,providerOptions:Dr,abortSignal:i,headers:Oe}),gt={id:(it=(Ft=Re.response)==null?void 0:Ft.id)!=null?it:R(),timestamp:(Cr=(Lt=Re.response)==null?void 0:Lt.timestamp)!=null?Cr:y(),modelId:(rr=(zr=Re.response)==null?void 0:zr.modelId)!=null?rr:W.modelId,headers:(nr=Re.response)==null?void 0:nr.headers,body:(lt=Re.response)==null?void 0:lt.body};return Te.setAttributes(await tt({telemetry:d,attributes:{"ai.response.finishReason":Re.finishReason.unified,"ai.response.text":{output:()=>Vo(Re.content)},"ai.response.toolCalls":{output:()=>{const mt=Yo(Re.content);return mt==null?void 0:JSON.stringify(mt)}},"ai.response.id":gt.id,"ai.response.model":gt.modelId,"ai.response.timestamp":gt.timestamp.toISOString(),"ai.response.providerMetadata":JSON.stringify(Re.providerMetadata),"ai.usage.promptTokens":Re.usage.inputTokens.total,"ai.usage.completionTokens":Re.usage.outputTokens.total,"gen_ai.response.finish_reasons":[Re.finishReason.unified],"gen_ai.response.id":gt.id,"gen_ai.response.model":gt.modelId,"gen_ai.usage.input_tokens":Re.usage.inputTokens.total,"gen_ai.usage.output_tokens":Re.usage.outputTokens.total}})),{...Re,response:gt}}})});const ve=await Promise.all(J.content.filter($=>$.type==="tool-call").map($=>Hl({toolCall:$,tools:t,repairToolCall:C,system:n,messages:U}))),Se={};for(const $ of ve){if($.invalid)continue;const Te=t==null?void 0:t[$.toolName];Te!=null&&((Te==null?void 0:Te.onInputAvailable)!=null&&await Te.onInputAvailable({input:$.input,toolCallId:$.toolCallId,messages:U,abortSignal:i,experimental_context:D}),await Vl({tool:Te,toolCall:$,messages:U,experimental_context:D})&&(Se[$.toolCallId]={type:"tool-approval-request",approvalId:R(),toolCall:$}))}const _e=ve.filter($=>$.invalid&&$.dynamic);fe=[];for(const $ of _e)fe.push({type:"tool-error",toolCallId:$.toolCallId,toolName:$.toolName,input:$.input,error:oa($.error),dynamic:!0});pe=ve.filter($=>!$.providerExecuted),t!=null&&fe.push(...await Jo({toolCalls:pe.filter($=>!$.invalid&&Se[$.toolCallId]==null),tools:t,tracer:Fe,telemetry:d,messages:U,abortSignal:i,experimental_context:D}));for(const $ of ve){if(!$.providerExecuted)continue;const Te=t==null?void 0:t[$.toolName];(Te==null?void 0:Te.type)==="provider"&&Te.supportsDeferredResults&&(J.content.some(it=>it.type==="tool-result"&&it.toolCallId===$.toolCallId)||V.set($.toolCallId,{toolName:$.toolName}))}for(const $ of J.content)$.type==="tool-result"&&V.delete($.toolCallId);const St=Zy({content:J.content,toolCalls:ve,toolOutputs:fe,toolApprovalRequests:Object.values(Se),tools:t});ot.push(...await Vn({content:St,tools:t}));const ft=new Yl({content:St,finishReason:J.finishReason.unified,rawFinishReason:J.finishReason.raw,usage:Ul(J.usage),warnings:J.warnings,providerMetadata:J.providerMetadata,request:(xr=J.request)!=null?xr:{},response:{...J.response,messages:structuredClone(ot)}});ma({warnings:(dt=J.warnings)!=null?dt:[],provider:W.provider,model:W.modelId}),ne.push(ft),await(O==null?void 0:O(ft))}while((pe.length>0&&fe.length===pe.length||V.size>0)&&!await Kl({stopConditions:L,steps:ne}));zt.setAttributes(await tt({telemetry:d,attributes:{"ai.response.finishReason":J.finishReason.unified,"ai.response.text":{output:()=>Vo(J.content)},"ai.response.toolCalls":{output:()=>{const U=Yo(J.content);return U==null?void 0:JSON.stringify(U)}},"ai.response.providerMetadata":JSON.stringify(J.providerMetadata),"ai.usage.promptTokens":J.usage.inputTokens.total,"ai.usage.completionTokens":J.usage.outputTokens.total}}));const B=ne[ne.length-1],Ke=ne.reduce((U,ae)=>jl(U,ae.usage),{inputTokens:void 0,outputTokens:void 0,totalTokens:void 0,reasoningTokens:void 0,cachedInputTokens:void 0});await(z==null?void 0:z({finishReason:B.finishReason,rawFinishReason:B.rawFinishReason,usage:B.usage,content:B.content,text:B.text,reasoningText:B.reasoningText,reasoning:B.reasoning,files:B.files,sources:B.sources,toolCalls:B.toolCalls,staticToolCalls:B.staticToolCalls,dynamicToolCalls:B.dynamicToolCalls,toolResults:B.toolResults,staticToolResults:B.staticToolResults,dynamicToolResults:B.dynamicToolResults,request:B.request,response:B.response,warnings:B.warnings,providerMetadata:B.providerMetadata,steps:ne,totalUsage:Ke,experimental_context:D}));let N;return B.finishReason==="stop"&&(N=await(p??on()).parseCompleteOutput({text:B.text},{response:B.response,usage:B.usage,finishReason:B.finishReason})),new qy({steps:ne,totalUsage:Ke,output:N})}})}catch(zt){throw Dl(zt)}}async function Jo({toolCalls:e,tools:t,tracer:r,telemetry:n,messages:a,abortSignal:o,experimental_context:s}){return(await Promise.all(e.map(async l=>ha({toolCall:l,tools:t,tracer:r,telemetry:n,messages:a,abortSignal:o,experimental_context:s})))).filter(l=>l!=null)}var qy=class{constructor(e){this.steps=e.steps,this._output=e.output,this.totalUsage=e.totalUsage}get finalStep(){return this.steps[this.steps.length-1]}get content(){return this.finalStep.content}get text(){return this.finalStep.text}get files(){return this.finalStep.files}get reasoningText(){return this.finalStep.reasoningText}get reasoning(){return this.finalStep.reasoning}get toolCalls(){return this.finalStep.toolCalls}get staticToolCalls(){return this.finalStep.staticToolCalls}get dynamicToolCalls(){return this.finalStep.dynamicToolCalls}get toolResults(){return this.finalStep.toolResults}get staticToolResults(){return this.finalStep.staticToolResults}get dynamicToolResults(){return this.finalStep.dynamicToolResults}get sources(){return this.finalStep.sources}get finishReason(){return this.finalStep.finishReason}get rawFinishReason(){return this.finalStep.rawFinishReason}get warnings(){return this.finalStep.warnings}get providerMetadata(){return this.finalStep.providerMetadata}get response(){return this.finalStep.response}get request(){return this.finalStep.request}get usage(){return this.finalStep.usage}get experimental_output(){return this.output}get output(){if(this._output==null)throw new dl;return this._output}};function Yo(e){const t=e.filter(r=>r.type==="tool-call");if(t.length!==0)return t.map(r=>({toolCallId:r.toolCallId,toolName:r.toolName,input:r.input}))}function Zy({content:e,toolCalls:t,toolOutputs:r,toolApprovalRequests:n,tools:a}){const o=[];for(const s of e)switch(s.type){case"text":case"reasoning":case"source":o.push(s);break;case"file":{o.push({type:"file",file:new Bl(s),...s.providerMetadata!=null?{providerMetadata:s.providerMetadata}:{}});break}case"tool-call":{o.push(t.find(i=>i.toolCallId===s.toolCallId));break}case"tool-result":{const i=t.find(l=>l.toolCallId===s.toolCallId);if(i==null){const l=a==null?void 0:a[s.toolName];if(!((l==null?void 0:l.type)==="provider"&&l.supportsDeferredResults))throw new Error(`Tool call ${s.toolCallId} not found.`);s.isError?o.push({type:"tool-error",toolCallId:s.toolCallId,toolName:s.toolName,input:void 0,error:s.result,providerExecuted:!0,dynamic:s.dynamic}):o.push({type:"tool-result",toolCallId:s.toolCallId,toolName:s.toolName,input:void 0,output:s.result,providerExecuted:!0,dynamic:s.dynamic});break}s.isError?o.push({type:"tool-error",toolCallId:s.toolCallId,toolName:s.toolName,input:i.input,error:s.result,providerExecuted:!0,dynamic:i.dynamic}):o.push({type:"tool-result",toolCallId:s.toolCallId,toolName:s.toolName,input:i.input,output:s.result,providerExecuted:!0,dynamic:i.dynamic});break}case"tool-approval-request":{const i=t.find(l=>l.toolCallId===s.toolCallId);if(i==null)throw new ga({toolCallId:s.toolCallId,approvalId:s.approvalId});o.push({type:"tool-approval-request",approvalId:s.approvalId,toolCall:i});break}}return[...o,...r,...n]}function gn(e,t){const r=new Headers(e??{});for(const[n,a]of Object.entries(t))r.has(n)||r.set(n,a);return r}function Gy({status:e,statusText:t,headers:r,textStream:n}){return new Response(n.pipeThrough(new TextEncoderStream),{status:e??200,statusText:t,headers:gn(r,{"content-type":"text/plain; charset=utf-8"})})}function Xl({response:e,status:t,statusText:r,headers:n,stream:a}){const o=t??200;r!==void 0?e.writeHead(o,r,n):e.writeHead(o,n);const s=a.getReader();(async()=>{try{for(;;){const{done:l,value:u}=await s.read();if(l)break;e.write(u)||await new Promise(p=>{e.once("drain",p)})}}catch(l){throw l}finally{e.end()}})()}function By({response:e,status:t,statusText:r,headers:n,textStream:a}){Xl({response:e,status:t,statusText:r,headers:Object.fromEntries(gn(n,{"content-type":"text/plain; charset=utf-8"}).entries()),stream:a.pipeThrough(new TextEncoderStream)})}var Ql=class extends TransformStream{constructor(){super({transform(e,t){t.enqueue(`data: ${JSON.stringify(e)}
|
|
73
73
|
|
|
74
74
|
`)},flush(e){e.enqueue(`data: [DONE]
|
|
75
75
|
|
|
76
|
-
`)}})}},Ql={"content-type":"text/event-stream","cache-control":"no-cache",connection:"keep-alive","x-vercel-ai-ui-message-stream":"v1","x-accel-buffering":"no"};function By({status:e,statusText:t,headers:r,stream:n,consumeSseStream:a}){let o=n.pipeThrough(new Xl);if(a){const[s,i]=o.tee();o=s,a({stream:i})}return new Response(o.pipeThrough(new TextEncoderStream),{status:e,statusText:t,headers:fn(r,Ql)})}function Vy({originalMessages:e,responseMessageId:t}){if(e==null)return;const r=e[e.length-1];return(r==null?void 0:r.role)==="assistant"?r.id:typeof t=="function"?t():t}function Hy(e){return e.type.startsWith("data-")}function Hn(e){return e.type.startsWith("tool-")}function Jy(e){return e.type==="dynamic-tool"}function Yy(e){return Hn(e)||Jy(e)}function Yo(e){return e.type.split("-").slice(1).join("-")}function Wy({lastMessage:e,messageId:t}){return{message:(e==null?void 0:e.role)==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:{},activeReasoningParts:{},partialToolCalls:{}}}function Ky({stream:e,messageMetadataSchema:t,dataPartSchemas:r,runUpdateMessageJob:n,onError:a,onToolCall:o,onData:s}){return e.pipeThrough(new TransformStream({async transform(i,l){await n(async({state:u,write:c})=>{var p,d,v,E;function w(h){const x=u.message.parts.filter(Yy).find(y=>y.toolCallId===h);if(x==null)throw new Error(`no tool invocation found for tool call ${h}`);return x}function I(h){var z;const x=u.message.parts.find(D=>Hn(D)&&D.toolCallId===h.toolCallId),y=h,O=x;x!=null?(x.state=h.state,O.input=y.input,O.output=y.output,O.errorText=y.errorText,O.rawInput=y.rawInput,O.preliminary=y.preliminary,h.title!==void 0&&(O.title=h.title),O.providerExecuted=(z=y.providerExecuted)!=null?z:x.providerExecuted,y.providerMetadata!=null&&x.state==="input-available"&&(x.callProviderMetadata=y.providerMetadata)):u.message.parts.push({type:`tool-${h.toolName}`,toolCallId:h.toolCallId,state:h.state,title:h.title,input:y.input,output:y.output,rawInput:y.rawInput,errorText:y.errorText,providerExecuted:y.providerExecuted,preliminary:y.preliminary,...y.providerMetadata!=null?{callProviderMetadata:y.providerMetadata}:{}})}function P(h){var z,x;const y=u.message.parts.find(F=>F.type==="dynamic-tool"&&F.toolCallId===h.toolCallId),O=h,D=y;y!=null?(y.state=h.state,D.toolName=h.toolName,D.input=O.input,D.output=O.output,D.errorText=O.errorText,D.rawInput=(z=O.rawInput)!=null?z:D.rawInput,D.preliminary=O.preliminary,h.title!==void 0&&(D.title=h.title),D.providerExecuted=(x=O.providerExecuted)!=null?x:y.providerExecuted,O.providerMetadata!=null&&y.state==="input-available"&&(y.callProviderMetadata=O.providerMetadata)):u.message.parts.push({type:"dynamic-tool",toolName:h.toolName,toolCallId:h.toolCallId,state:h.state,input:O.input,output:O.output,errorText:O.errorText,preliminary:O.preliminary,providerExecuted:O.providerExecuted,title:h.title,...O.providerMetadata!=null?{callProviderMetadata:O.providerMetadata}:{}})}async function C(h){if(h!=null){const z=u.message.metadata!=null?pn(u.message.metadata,h):h;t!=null&&await jn({value:z,schema:t}),u.message.metadata=z}}switch(i.type){case"text-start":{const h={type:"text",text:"",providerMetadata:i.providerMetadata,state:"streaming"};u.activeTextParts[i.id]=h,u.message.parts.push(h),c();break}case"text-delta":{const h=u.activeTextParts[i.id];h.text+=i.delta,h.providerMetadata=(p=i.providerMetadata)!=null?p:h.providerMetadata,c();break}case"text-end":{const h=u.activeTextParts[i.id];h.state="done",h.providerMetadata=(d=i.providerMetadata)!=null?d:h.providerMetadata,delete u.activeTextParts[i.id],c();break}case"reasoning-start":{const h={type:"reasoning",text:"",providerMetadata:i.providerMetadata,state:"streaming"};u.activeReasoningParts[i.id]=h,u.message.parts.push(h),c();break}case"reasoning-delta":{const h=u.activeReasoningParts[i.id];h.text+=i.delta,h.providerMetadata=(v=i.providerMetadata)!=null?v:h.providerMetadata,c();break}case"reasoning-end":{const h=u.activeReasoningParts[i.id];h.providerMetadata=(E=i.providerMetadata)!=null?E:h.providerMetadata,h.state="done",delete u.activeReasoningParts[i.id],c();break}case"file":{u.message.parts.push({type:"file",mediaType:i.mediaType,url:i.url}),c();break}case"source-url":{u.message.parts.push({type:"source-url",sourceId:i.sourceId,url:i.url,title:i.title,providerMetadata:i.providerMetadata}),c();break}case"source-document":{u.message.parts.push({type:"source-document",sourceId:i.sourceId,mediaType:i.mediaType,title:i.title,filename:i.filename,providerMetadata:i.providerMetadata}),c();break}case"tool-input-start":{const h=u.message.parts.filter(Hn);u.partialToolCalls[i.toolCallId]={text:"",toolName:i.toolName,index:h.length,dynamic:i.dynamic,title:i.title},i.dynamic?P({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-streaming",input:void 0,providerExecuted:i.providerExecuted,title:i.title}):I({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-streaming",input:void 0,providerExecuted:i.providerExecuted,title:i.title}),c();break}case"tool-input-delta":{const h=u.partialToolCalls[i.toolCallId];h.text+=i.inputTextDelta;const{value:z}=await Or(h.text);h.dynamic?P({toolCallId:i.toolCallId,toolName:h.toolName,state:"input-streaming",input:z,title:h.title}):I({toolCallId:i.toolCallId,toolName:h.toolName,state:"input-streaming",input:z,title:h.title}),c();break}case"tool-input-available":{i.dynamic?P({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-available",input:i.input,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:i.title}):I({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-available",input:i.input,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:i.title}),c(),o&&!i.providerExecuted&&await o({toolCall:i});break}case"tool-input-error":{i.dynamic?P({toolCallId:i.toolCallId,toolName:i.toolName,state:"output-error",input:i.input,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata}):I({toolCallId:i.toolCallId,toolName:i.toolName,state:"output-error",input:void 0,rawInput:i.input,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata}),c();break}case"tool-approval-request":{const h=w(i.toolCallId);h.state="approval-requested",h.approval={id:i.approvalId},c();break}case"tool-output-denied":{const h=w(i.toolCallId);h.state="output-denied",c();break}case"tool-output-available":{const h=w(i.toolCallId);h.type==="dynamic-tool"?P({toolCallId:i.toolCallId,toolName:h.toolName,state:"output-available",input:h.input,output:i.output,preliminary:i.preliminary,providerExecuted:i.providerExecuted,title:h.title}):I({toolCallId:i.toolCallId,toolName:Yo(h),state:"output-available",input:h.input,output:i.output,providerExecuted:i.providerExecuted,preliminary:i.preliminary,title:h.title}),c();break}case"tool-output-error":{const h=w(i.toolCallId);h.type==="dynamic-tool"?P({toolCallId:i.toolCallId,toolName:h.toolName,state:"output-error",input:h.input,errorText:i.errorText,providerExecuted:i.providerExecuted,title:h.title}):I({toolCallId:i.toolCallId,toolName:Yo(h),state:"output-error",input:h.input,rawInput:h.rawInput,errorText:i.errorText,providerExecuted:i.providerExecuted,title:h.title}),c();break}case"start-step":{u.message.parts.push({type:"step-start"});break}case"finish-step":{u.activeTextParts={},u.activeReasoningParts={};break}case"start":{i.messageId!=null&&(u.message.id=i.messageId),await C(i.messageMetadata),(i.messageId!=null||i.messageMetadata!=null)&&c();break}case"finish":{i.finishReason!=null&&(u.finishReason=i.finishReason),await C(i.messageMetadata),i.messageMetadata!=null&&c();break}case"message-metadata":{await C(i.messageMetadata),i.messageMetadata!=null&&c();break}case"error":{a==null||a(new Error(i.errorText));break}default:if(Hy(i)){(r==null?void 0:r[i.type])!=null&&await jn({value:i.data,schema:r[i.type]});const h=i;if(h.transient){s==null||s(h);break}const z=h.id!=null?u.message.parts.find(x=>h.type===x.type&&h.id===x.id):void 0;z!=null?z.data=h.data:u.message.parts.push(h),s==null||s(h),c()}}l.enqueue(i)})}}))}function Xy({messageId:e,originalMessages:t=[],onFinish:r,onError:n,stream:a}){let o=t==null?void 0:t[t.length-1];(o==null?void 0:o.role)!=="assistant"?o=void 0:e=o.id;let s=!1;const i=a.pipeThrough(new TransformStream({transform(d,v){if(d.type==="start"){const E=d;E.messageId==null&&e!=null&&(E.messageId=e)}d.type==="abort"&&(s=!0),v.enqueue(d)}}));if(r==null)return i;const l=Wy({lastMessage:o?structuredClone(o):void 0,messageId:e??""}),u=async d=>{await d({state:l,write:()=>{}})};let c=!1;const p=async()=>{if(c||!r)return;c=!0;const d=l.message.id===(o==null?void 0:o.id);await r({isAborted:s,isContinuation:d,responseMessage:l.message,messages:[...d?t.slice(0,-1):t,l.message],finishReason:l.finishReason})};return Ky({stream:i,runUpdateMessageJob:u,onError:n}).pipeThrough(new TransformStream({transform(d,v){v.enqueue(d)},async cancel(){await p()},async flush(){await p()}}))}function Qy({response:e,status:t,statusText:r,headers:n,stream:a,consumeSseStream:o}){let s=a.pipeThrough(new Xl);if(o){const[i,l]=s.tee();s=i,o({stream:l})}Kl({response:e,status:t,statusText:r,headers:Object.fromEntries(fn(n,Ql).entries()),stream:s.pipeThrough(new TextEncoderStream)})}function Ur(e){const t=e.pipeThrough(new TransformStream);return t[Symbol.asyncIterator]=function(){const r=this.getReader();let n=!1;async function a(o){var s;n=!0;try{o&&await((s=r.cancel)==null?void 0:s.call(r))}finally{try{r.releaseLock()}catch{}}}return{async next(){if(n)return{done:!0,value:void 0};const{done:o,value:s}=await r.read();return o?(await a(!0),{done:!0,value:void 0}):{done:!1,value:s}},async return(){return await a(!0),{done:!0,value:void 0}},async throw(o){throw await a(!0),o}}},t}async function ev({stream:e,onError:t}){const r=e.getReader();try{for(;;){const{done:n}=await r.read();if(n)break}}catch(n){t==null||t(n)}finally{r.releaseLock()}}function Wo(){let e,t;return{promise:new Promise((n,a)=>{e=n,t=a}),resolve:e,reject:t}}function tv(){let e=[],t=null,r=!1,n=Wo();const a=()=>{r=!0,n.resolve(),e.forEach(s=>s.cancel()),e=[],t==null||t.close()},o=async()=>{if(r&&e.length===0){t==null||t.close();return}if(e.length===0)return n=Wo(),await n.promise,o();try{const{value:s,done:i}=await e[0].read();i?(e.shift(),e.length===0&&r?t==null||t.close():await o()):t==null||t.enqueue(s)}catch(s){t==null||t.error(s),e.shift(),a()}};return{stream:new ReadableStream({start(s){t=s},pull:o,async cancel(){for(const s of e)await s.cancel();e=[],r=!0}}),addStream:s=>{if(r)throw new Error("Cannot add inner stream: outer stream is closed");e.push(s.getReader()),n.resolve()},close:()=>{r=!0,n.resolve(),e.length===0&&(t==null||t.close())},terminate:a}}function rv(){var e,t;return(t=(e=globalThis==null?void 0:globalThis.performance)==null?void 0:e.now())!=null?t:Date.now()}function nv({tools:e,generatorStream:t,tracer:r,telemetry:n,system:a,messages:o,abortSignal:s,repairToolCall:i,experimental_context:l,generateId:u}){let c=null;const p=new ReadableStream({start(h){c=h}}),d=new Set,v=new Map,E=new Map;let w=!1,I;function P(){w&&d.size===0&&(I!=null&&c.enqueue(I),c.close())}const C=new TransformStream({async transform(h,z){const x=h.type;switch(x){case"stream-start":case"text-start":case"text-delta":case"text-end":case"reasoning-start":case"reasoning-delta":case"reasoning-end":case"tool-input-start":case"tool-input-delta":case"tool-input-end":case"source":case"response-metadata":case"error":case"raw":{z.enqueue(h);break}case"file":{z.enqueue({type:"file",file:new Cy({data:h.data,mediaType:h.mediaType})});break}case"finish":{I={type:"finish",finishReason:h.finishReason.unified,rawFinishReason:h.finishReason.raw,usage:Ll(h.usage),providerMetadata:h.providerMetadata};break}case"tool-approval-request":{const y=E.get(h.toolCallId);if(y==null){c.enqueue({type:"error",error:new fa({toolCallId:h.toolCallId,approvalId:h.approvalId})});break}z.enqueue({type:"tool-approval-request",approvalId:h.approvalId,toolCall:y});break}case"tool-call":{try{const y=await Vl({toolCall:h,tools:e,repairToolCall:i,system:a,messages:o});if(E.set(y.toolCallId,y),z.enqueue(y),y.invalid){c.enqueue({type:"tool-error",toolCallId:y.toolCallId,toolName:y.toolName,input:y.input,error:aa(y.error),dynamic:!0,title:y.title});break}const O=e==null?void 0:e[y.toolName];if(O==null)break;if(O.onInputAvailable!=null&&await O.onInputAvailable({input:y.input,toolCallId:y.toolCallId,messages:o,abortSignal:s,experimental_context:l}),await Bl({tool:O,toolCall:y,messages:o,experimental_context:l})){c.enqueue({type:"tool-approval-request",approvalId:u(),toolCall:y});break}if(v.set(y.toolCallId,y.input),O.execute!=null&&y.providerExecuted!==!0){const D=u();d.add(D),ma({toolCall:y,tools:e,tracer:r,telemetry:n,messages:o,abortSignal:s,experimental_context:l,onPreliminaryToolResult:F=>{c.enqueue(F)}}).then(F=>{c.enqueue(F)}).catch(F=>{c.enqueue({type:"error",error:F})}).finally(()=>{d.delete(D),P()})}}catch(y){c.enqueue({type:"error",error:y})}break}case"tool-result":{const y=h.toolName;h.isError?c.enqueue({type:"tool-error",toolCallId:h.toolCallId,toolName:y,input:v.get(h.toolCallId),providerExecuted:!0,error:h.result,dynamic:h.dynamic}):z.enqueue({type:"tool-result",toolCallId:h.toolCallId,toolName:y,input:v.get(h.toolCallId),output:h.result,providerExecuted:!0,dynamic:h.dynamic});break}default:{const y=x;throw new Error(`Unhandled chunk type: ${y}`)}}},flush(){w=!0,P()}});return new ReadableStream({async start(h){return Promise.all([t.pipeThrough(C).pipeTo(new WritableStream({write(z){h.enqueue(z)},close(){}})),p.pipeTo(new WritableStream({write(z){h.enqueue(z)},close(){h.close()}}))])}})}var av=Nr({prefix:"aitxt",size:24});function ov({model:e,tools:t,toolChoice:r,system:n,prompt:a,messages:o,maxRetries:s,abortSignal:i,headers:l,stopWhen:u=Yl(1),experimental_output:c,output:p=c,experimental_telemetry:d,prepareStep:v,providerOptions:E,experimental_activeTools:w,activeTools:I=w,experimental_repairToolCall:P,experimental_transform:C,experimental_download:h,includeRawChunks:z=!1,onChunk:x,onError:y=({error:Oe})=>{console.error(Oe)},onFinish:O,onAbort:D,onStepFinish:F,experimental_context:ie,_internal:{now:L=rv,generateId:X=av,currentDate:Q=()=>new Date}={},...le}){return new iv({model:nn(e),telemetry:d,headers:l,settings:le,maxRetries:s,abortSignal:i,system:n,prompt:a,messages:o,tools:t,toolChoice:r,transforms:wr(C),activeTools:I,repairToolCall:P,stopConditions:wr(u),output:p,providerOptions:E,prepareStep:v,includeRawChunks:z,onChunk:x,onError:y,onFinish:O,onAbort:D,onStepFinish:F,now:L,currentDate:Q,generateId:X,experimental_context:ie,download:h})}function sv(e){let t,r="",n="",a,o="";function s({controller:i,partialOutput:l=void 0}){i.enqueue({part:{type:"text-delta",id:t,text:n,providerMetadata:a},partialOutput:l}),n=""}return new TransformStream({async transform(i,l){var u;if(i.type==="finish-step"&&n.length>0&&s({controller:l}),i.type!=="text-delta"&&i.type!=="text-start"&&i.type!=="text-end"){l.enqueue({part:i,partialOutput:void 0});return}if(t==null)t=i.id;else if(i.id!==t){l.enqueue({part:i,partialOutput:void 0});return}if(i.type==="text-start"){l.enqueue({part:i,partialOutput:void 0});return}if(i.type==="text-end"){n.length>0&&s({controller:l}),l.enqueue({part:i,partialOutput:void 0});return}r+=i.text,n+=i.text,a=(u=i.providerMetadata)!=null?u:a;const c=await e.parsePartialOutput({text:r});if(c!==void 0){const p=JSON.stringify(c.partial);p!==o&&(s({controller:l,partialOutput:c.partial}),o=p)}}})}var iv=class{constructor({model:e,telemetry:t,headers:r,settings:n,maxRetries:a,abortSignal:o,system:s,prompt:i,messages:l,tools:u,toolChoice:c,transforms:p,activeTools:d,repairToolCall:v,stopConditions:E,output:w,providerOptions:I,prepareStep:P,includeRawChunks:C,now:h,currentDate:z,generateId:x,onChunk:y,onError:O,onFinish:D,onAbort:F,onStepFinish:ie,experimental_context:L,download:X}){this._totalUsage=new ir,this._finishReason=new ir,this._rawFinishReason=new ir,this._steps=new ir,this.outputSpecification=w,this.includeRawChunks=C,this.tools=u;let Q,le=[];const Oe=[];let Te,ct,Fe,Dt={},zt=[];const Ce=[],$t=new Map;let Mt,nt={},at={};const xr=new TransformStream({async transform(pe,fe){var ae,V,B,Ke;fe.enqueue(pe);const{part:A}=pe;if((A.type==="text-delta"||A.type==="reasoning-delta"||A.type==="source"||A.type==="tool-call"||A.type==="tool-result"||A.type==="tool-input-start"||A.type==="tool-input-delta"||A.type==="raw")&&await(y==null?void 0:y({chunk:A})),A.type==="error"&&await O({error:Dl(A.error)}),A.type==="text-start"&&(nt[A.id]={type:"text",text:"",providerMetadata:A.providerMetadata},le.push(nt[A.id])),A.type==="text-delta"){const U=nt[A.id];if(U==null){fe.enqueue({part:{type:"error",error:`text part ${A.id} not found`},partialOutput:void 0});return}U.text+=A.text,U.providerMetadata=(ae=A.providerMetadata)!=null?ae:U.providerMetadata}if(A.type==="text-end"){const U=nt[A.id];if(U==null){fe.enqueue({part:{type:"error",error:`text part ${A.id} not found`},partialOutput:void 0});return}U.providerMetadata=(V=A.providerMetadata)!=null?V:U.providerMetadata,delete nt[A.id]}if(A.type==="reasoning-start"&&(at[A.id]={type:"reasoning",text:"",providerMetadata:A.providerMetadata},le.push(at[A.id])),A.type==="reasoning-delta"){const U=at[A.id];if(U==null){fe.enqueue({part:{type:"error",error:`reasoning part ${A.id} not found`},partialOutput:void 0});return}U.text+=A.text,U.providerMetadata=(B=A.providerMetadata)!=null?B:U.providerMetadata}if(A.type==="reasoning-end"){const U=at[A.id];if(U==null){fe.enqueue({part:{type:"error",error:`reasoning part ${A.id} not found`},partialOutput:void 0});return}U.providerMetadata=(Ke=A.providerMetadata)!=null?Ke:U.providerMetadata,delete at[A.id]}if(A.type==="file"&&le.push({type:"file",file:A.file}),A.type==="source"&&le.push(A),A.type==="tool-call"&&le.push(A),A.type==="tool-result"&&!A.preliminary&&le.push(A),A.type==="tool-approval-request"&&le.push(A),A.type==="tool-error"&&le.push(A),A.type==="start-step"&&(le=[],at={},nt={},Dt=A.request,zt=A.warnings),A.type==="finish-step"){const U=await Bn({content:le,tools:u}),oe=new Jl({content:le,finishReason:A.finishReason,rawFinishReason:A.rawFinishReason,usage:A.usage,warnings:zt,request:Dt,response:{...A.response,messages:[...Oe,...U]},providerMetadata:A.providerMetadata});await(ie==null?void 0:ie(oe)),ga({warnings:zt,provider:e.provider,model:e.modelId}),Ce.push(oe),Oe.push(...U),Q.resolve()}A.type==="finish"&&(Fe=A.totalUsage,Te=A.finishReason,ct=A.rawFinishReason)},async flush(pe){try{if(Ce.length===0){const B=new cl({message:"No output generated. Check the stream for errors."});J._finishReason.reject(B),J._rawFinishReason.reject(B),J._totalUsage.reject(B),J._steps.reject(B);return}const fe=Te??"other",ae=Fe??Pn();J._finishReason.resolve(fe),J._rawFinishReason.resolve(ct),J._totalUsage.resolve(ae),J._steps.resolve(Ce);const V=Ce[Ce.length-1];await(D==null?void 0:D({finishReason:V.finishReason,rawFinishReason:V.rawFinishReason,totalUsage:ae,usage:V.usage,content:V.content,text:V.text,reasoningText:V.reasoningText,reasoning:V.reasoning,files:V.files,sources:V.sources,toolCalls:V.toolCalls,staticToolCalls:V.staticToolCalls,dynamicToolCalls:V.dynamicToolCalls,toolResults:V.toolResults,staticToolResults:V.staticToolResults,dynamicToolResults:V.dynamicToolResults,request:V.request,response:V.response,warnings:V.warnings,providerMetadata:V.providerMetadata,steps:Ce,experimental_context:L})),Mt.setAttributes(await tt({telemetry:t,attributes:{"ai.response.finishReason":fe,"ai.response.text":{output:()=>V.text},"ai.response.toolCalls":{output:()=>{var B;return(B=V.toolCalls)!=null&&B.length?JSON.stringify(V.toolCalls):void 0}},"ai.response.providerMetadata":JSON.stringify(V.providerMetadata),"ai.usage.inputTokens":ae.inputTokens,"ai.usage.outputTokens":ae.outputTokens,"ai.usage.totalTokens":ae.totalTokens,"ai.usage.reasoningTokens":ae.reasoningTokens,"ai.usage.cachedInputTokens":ae.cachedInputTokens}}))}catch(fe){pe.error(fe)}finally{Mt.end()}}}),dt=tv();this.addStream=dt.addStream,this.closeStream=dt.close;const er=dt.stream.getReader();let ot=new ReadableStream({async start(pe){pe.enqueue({type:"start"})},async pull(pe){function fe(){F==null||F({steps:Ce}),pe.enqueue({type:"abort"}),pe.close()}try{const{done:ae,value:V}=await er.read();if(ae){pe.close();return}if(o!=null&&o.aborted){fe();return}pe.enqueue(V)}catch(ae){kt(ae)&&(o!=null&&o.aborted)?fe():pe.error(ae)}},cancel(pe){return dt.stream.cancel(pe)}});for(const pe of p)ot=ot.pipeThrough(pe({tools:u,stopStream(){dt.terminate()}}));this.baseStream=ot.pipeThrough(sv(w??an())).pipeThrough(xr);const{maxRetries:Rr,retry:tr}=ql({maxRetries:a,abortSignal:o}),It=$l(t),Ze=Gn(n),kr=zl({model:e,telemetry:t,headers:r,settings:{...Ze,maxRetries:Rr}}),J=this;Er({name:"ai.streamText",attributes:tt({telemetry:t,attributes:{...br({operationId:"ai.streamText",telemetry:t}),...kr,"ai.prompt":{input:()=>JSON.stringify({system:s,prompt:i,messages:l})}}}),tracer:It,endWhenDone:!1,fn:async pe=>{Mt=pe;const fe=await Cl({system:s,prompt:i,messages:l}),ae=fe.messages,V=[],{approvedToolApprovals:B,deniedToolApprovals:Ke}=Zl({messages:ae});if(Ke.length>0||B.length>0){const U=[...B,...Ke].filter(_e=>_e.toolCall.providerExecuted),oe=B.filter(_e=>!_e.toolCall.providerExecuted),W=Ke.filter(_e=>!_e.toolCall.providerExecuted),st=Ke.filter(_e=>_e.toolCall.providerExecuted);let ke;const pt=new ReadableStream({start(_e){ke=_e}});J.addStream(pt);try{for(const Ne of[...W,...st])ke==null||ke.enqueue({type:"tool-output-denied",toolCallId:Ne.toolCall.toolCallId,toolName:Ne.toolCall.toolName});const _e=[];if(await Promise.all(oe.map(async Ne=>{const we=await ma({toolCall:Ne.toolCall,tools:u,tracer:It,telemetry:t,messages:ae,abortSignal:o,experimental_context:L,onPreliminaryToolResult:St=>{ke==null||ke.enqueue(St)}});we!=null&&(ke==null||ke.enqueue(we),_e.push(we))})),U.length>0&&V.push({role:"tool",content:U.map(Ne=>({type:"tool-approval-response",approvalId:Ne.approvalResponse.approvalId,approved:Ne.approvalResponse.approved,reason:Ne.approvalResponse.reason,providerExecuted:!0}))}),_e.length>0||W.length>0){const Ne=[];for(const we of _e)Ne.push({type:"tool-result",toolCallId:we.toolCallId,toolName:we.toolName,output:await dr({toolCallId:we.toolCallId,input:we.input,tool:u==null?void 0:u[we.toolName],output:we.type==="tool-result"?we.output:we.error,errorMode:we.type==="tool-error"?"json":"none"})});for(const we of W)Ne.push({type:"tool-result",toolCallId:we.toolCall.toolCallId,toolName:we.toolCall.toolName,output:{type:"execution-denied",reason:we.approvalResponse.reason}});V.push({role:"tool",content:Ne})}}finally{ke==null||ke.close()}}Oe.push(...V);async function A({currentStep:U,responseMessages:oe,usage:W}){var st,ke,pt,_e,Ne,we;const St=J.includeRawChunks;Q=new ir;const ft=[...ae,...oe],$=await(P==null?void 0:P({model:e,steps:Ce,stepNumber:Ce.length,messages:ft,experimental_context:L})),be=nn((st=$==null?void 0:$.model)!=null?st:e),Ft=await Ol({prompt:{system:(ke=$==null?void 0:$.system)!=null?ke:fe.system,messages:(pt=$==null?void 0:$.messages)!=null?pt:ft},supportedUrls:await be.supportedUrls,download:X}),{toolChoice:it,tools:Lt}=await xl({tools:u,toolChoice:(_e=$==null?void 0:$.toolChoice)!=null?_e:c,activeTools:(Ne=$==null?void 0:$.activeTools)!=null?Ne:d});L=(we=$==null?void 0:$.experimental_context)!=null?we:L;const Pr=pn(I,$==null?void 0:$.providerOptions),{result:{stream:Cr,response:rr,request:nr},doStreamSpan:lt,startTimestampMs:Dr}=await tr(()=>Er({name:"ai.streamText.doStream",attributes:tt({telemetry:t,attributes:{...br({operationId:"ai.streamText.doStream",telemetry:t}),...kr,"ai.model.provider":be.provider,"ai.model.id":be.modelId,"ai.prompt.messages":{input:()=>Fl(Ft)},"ai.prompt.tools":{input:()=>Lt==null?void 0:Lt.map(M=>JSON.stringify(M))},"ai.prompt.toolChoice":{input:()=>it!=null?JSON.stringify(it):void 0},"gen_ai.system":be.provider,"gen_ai.request.model":be.modelId,"gen_ai.request.frequency_penalty":Ze.frequencyPenalty,"gen_ai.request.max_tokens":Ze.maxOutputTokens,"gen_ai.request.presence_penalty":Ze.presencePenalty,"gen_ai.request.stop_sequences":Ze.stopSequences,"gen_ai.request.temperature":Ze.temperature,"gen_ai.request.top_k":Ze.topK,"gen_ai.request.top_p":Ze.topP}}),tracer:It,endWhenDone:!1,fn:async M=>({startTimestampMs:h(),doStreamSpan:M,result:await be.doStream({...Ze,tools:Lt,toolChoice:it,responseFormat:await(w==null?void 0:w.responseFormat),prompt:Ft,providerOptions:Pr,abortSignal:o,headers:r,includeRawChunks:St})})})),xe=nv({tools:u,generatorStream:Cr,tracer:It,telemetry:t,system:s,messages:ft,repairToolCall:v,abortSignal:o,experimental_context:L,generateId:x}),gt=nr??{},mt=[],ar=[];let gn;const mn={};let Ut="other",hn,Ve=Pn(),yn,va=!0,Xe={id:x(),timestamp:z(),modelId:e.modelId},_a="";J.addStream(xe.pipeThrough(new TransformStream({async transform(M,Re){var or,sr,zr,Ae,jt;if(M.type==="stream-start"){gn=M.warnings;return}if(va){const Ee=h()-Dr;va=!1,lt.addEvent("ai.stream.firstChunk",{"ai.response.msToFirstChunk":Ee}),lt.setAttributes({"ai.response.msToFirstChunk":Ee}),Re.enqueue({type:"start-step",request:gt,warnings:gn??[]})}const vn=M.type;switch(vn){case"tool-approval-request":case"text-start":case"text-end":{Re.enqueue(M);break}case"text-delta":{M.delta.length>0&&(Re.enqueue({type:"text-delta",id:M.id,text:M.delta,providerMetadata:M.providerMetadata}),_a+=M.delta);break}case"reasoning-start":case"reasoning-end":{Re.enqueue(M);break}case"reasoning-delta":{Re.enqueue({type:"reasoning-delta",id:M.id,text:M.delta,providerMetadata:M.providerMetadata});break}case"tool-call":{Re.enqueue(M),mt.push(M);break}case"tool-result":{Re.enqueue(M),M.preliminary||ar.push(M);break}case"tool-error":{Re.enqueue(M),ar.push(M);break}case"response-metadata":{Xe={id:(or=M.id)!=null?or:Xe.id,timestamp:(sr=M.timestamp)!=null?sr:Xe.timestamp,modelId:(zr=M.modelId)!=null?zr:Xe.modelId};break}case"finish":{Ve=M.usage,Ut=M.finishReason,hn=M.rawFinishReason,yn=M.providerMetadata;const Ee=h()-Dr;lt.addEvent("ai.stream.finish"),lt.setAttributes({"ai.response.msToFinish":Ee,"ai.response.avgOutputTokensPerSecond":1e3*((Ae=Ve.outputTokens)!=null?Ae:0)/Ee});break}case"file":{Re.enqueue(M);break}case"source":{Re.enqueue(M);break}case"tool-input-start":{mn[M.id]=M.toolName;const Ee=u==null?void 0:u[M.toolName];(Ee==null?void 0:Ee.onInputStart)!=null&&await Ee.onInputStart({toolCallId:M.id,messages:ft,abortSignal:o,experimental_context:L}),Re.enqueue({...M,dynamic:(jt=M.dynamic)!=null?jt:(Ee==null?void 0:Ee.type)==="dynamic",title:Ee==null?void 0:Ee.title});break}case"tool-input-end":{delete mn[M.id],Re.enqueue(M);break}case"tool-input-delta":{const Ee=mn[M.id],_n=u==null?void 0:u[Ee];(_n==null?void 0:_n.onInputDelta)!=null&&await _n.onInputDelta({inputTextDelta:M.delta,toolCallId:M.id,messages:ft,abortSignal:o,experimental_context:L}),Re.enqueue(M);break}case"error":{Re.enqueue(M),Ut="error";break}case"raw":{St&&Re.enqueue(M);break}default:{const Ee=vn;throw new Error(`Unknown chunk type: ${Ee}`)}}},async flush(M){const Re=mt.length>0?JSON.stringify(mt):void 0;try{lt.setAttributes(await tt({telemetry:t,attributes:{"ai.response.finishReason":Ut,"ai.response.text":{output:()=>_a},"ai.response.toolCalls":{output:()=>Re},"ai.response.id":Xe.id,"ai.response.model":Xe.modelId,"ai.response.timestamp":Xe.timestamp.toISOString(),"ai.response.providerMetadata":JSON.stringify(yn),"ai.usage.inputTokens":Ve.inputTokens,"ai.usage.outputTokens":Ve.outputTokens,"ai.usage.totalTokens":Ve.totalTokens,"ai.usage.reasoningTokens":Ve.reasoningTokens,"ai.usage.cachedInputTokens":Ve.cachedInputTokens,"gen_ai.response.finish_reasons":[Ut],"gen_ai.response.id":Xe.id,"gen_ai.response.model":Xe.modelId,"gen_ai.usage.input_tokens":Ve.inputTokens,"gen_ai.usage.output_tokens":Ve.outputTokens}}))}catch{}finally{lt.end()}M.enqueue({type:"finish-step",finishReason:Ut,rawFinishReason:hn,usage:Ve,providerMetadata:yn,response:{...Xe,headers:rr==null?void 0:rr.headers}});const or=Ul(W,Ve);await Q.promise;const sr=mt.filter(Ae=>Ae.providerExecuted!==!0),zr=ar.filter(Ae=>Ae.providerExecuted!==!0);for(const Ae of mt){if(Ae.providerExecuted!==!0)continue;const jt=u==null?void 0:u[Ae.toolName];(jt==null?void 0:jt.type)==="provider"&&jt.supportsDeferredResults&&(ar.some(Ee=>Ee.type==="tool-result"&&Ee.toolCallId===Ae.toolCallId)||$t.set(Ae.toolCallId,{toolName:Ae.toolName}))}for(const Ae of ar)Ae.type==="tool-result"&&$t.delete(Ae.toolCallId);if((sr.length>0&&zr.length===sr.length||$t.size>0)&&!await Wl({stopConditions:E,steps:Ce})){oe.push(...await Bn({content:Ce[Ce.length-1].content,tools:u}));try{await A({currentStep:U+1,responseMessages:oe,usage:or})}catch(Ae){M.enqueue({type:"error",error:Ae}),J.closeStream()}}else M.enqueue({type:"finish",finishReason:Ut,rawFinishReason:hn,totalUsage:or}),J.closeStream()}})))}await A({currentStep:0,responseMessages:V,usage:Pn()})}}).catch(pe=>{J.addStream(new ReadableStream({start(fe){fe.enqueue({type:"error",error:pe}),fe.close()}})),J.closeStream()})}get steps(){return this.consumeStream(),this._steps.promise}get finalStep(){return this.steps.then(e=>e[e.length-1])}get content(){return this.finalStep.then(e=>e.content)}get warnings(){return this.finalStep.then(e=>e.warnings)}get providerMetadata(){return this.finalStep.then(e=>e.providerMetadata)}get text(){return this.finalStep.then(e=>e.text)}get reasoningText(){return this.finalStep.then(e=>e.reasoningText)}get reasoning(){return this.finalStep.then(e=>e.reasoning)}get sources(){return this.finalStep.then(e=>e.sources)}get files(){return this.finalStep.then(e=>e.files)}get toolCalls(){return this.finalStep.then(e=>e.toolCalls)}get staticToolCalls(){return this.finalStep.then(e=>e.staticToolCalls)}get dynamicToolCalls(){return this.finalStep.then(e=>e.dynamicToolCalls)}get toolResults(){return this.finalStep.then(e=>e.toolResults)}get staticToolResults(){return this.finalStep.then(e=>e.staticToolResults)}get dynamicToolResults(){return this.finalStep.then(e=>e.dynamicToolResults)}get usage(){return this.finalStep.then(e=>e.usage)}get request(){return this.finalStep.then(e=>e.request)}get response(){return this.finalStep.then(e=>e.response)}get totalUsage(){return this.consumeStream(),this._totalUsage.promise}get finishReason(){return this.consumeStream(),this._finishReason.promise}get rawFinishReason(){return this.consumeStream(),this._rawFinishReason.promise}teeStream(){const[e,t]=this.baseStream.tee();return this.baseStream=t,e}get textStream(){return Ur(this.teeStream().pipeThrough(new TransformStream({transform({part:e},t){e.type==="text-delta"&&t.enqueue(e.text)}})))}get fullStream(){return Ur(this.teeStream().pipeThrough(new TransformStream({transform({part:e},t){t.enqueue(e)}})))}async consumeStream(e){var t;try{await ev({stream:this.fullStream,onError:e==null?void 0:e.onError})}catch(r){(t=e==null?void 0:e.onError)==null||t.call(e,r)}}get experimental_partialOutputStream(){return this.partialOutputStream}get partialOutputStream(){return Ur(this.teeStream().pipeThrough(new TransformStream({transform({partialOutput:e},t){e!=null&&t.enqueue(e)}})))}get output(){return this.finalStep.then(e=>{var t;return((t=this.outputSpecification)!=null?t:an()).parseCompleteOutput({text:e.text},{response:e.response,usage:e.usage,finishReason:e.finishReason})})}toUIMessageStream({originalMessages:e,generateMessageId:t,onFinish:r,messageMetadata:n,sendReasoning:a=!0,sendSources:o=!1,sendStart:s=!0,sendFinish:i=!0,onError:l=Wt}={}){const u=t!=null?Vy({originalMessages:e,responseMessageId:t}):void 0,c=d=>{var v;const E=(v=this.tools)==null?void 0:v[d.toolName];return E==null?d.dynamic:(E==null?void 0:E.type)==="dynamic"?!0:void 0},p=this.fullStream.pipeThrough(new TransformStream({transform:async(d,v)=>{const E=n==null?void 0:n({part:d}),w=d.type;switch(w){case"text-start":{v.enqueue({type:"text-start",id:d.id,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"text-delta":{v.enqueue({type:"text-delta",id:d.id,delta:d.text,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"text-end":{v.enqueue({type:"text-end",id:d.id,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"reasoning-start":{v.enqueue({type:"reasoning-start",id:d.id,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"reasoning-delta":{a&&v.enqueue({type:"reasoning-delta",id:d.id,delta:d.text,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"reasoning-end":{v.enqueue({type:"reasoning-end",id:d.id,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"file":{v.enqueue({type:"file",mediaType:d.file.mediaType,url:`data:${d.file.mediaType};base64,${d.file.base64}`});break}case"source":{o&&d.sourceType==="url"&&v.enqueue({type:"source-url",sourceId:d.id,url:d.url,title:d.title,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}}),o&&d.sourceType==="document"&&v.enqueue({type:"source-document",sourceId:d.id,mediaType:d.mediaType,title:d.title,filename:d.filename,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"tool-input-start":{const I=c(d);v.enqueue({type:"tool-input-start",toolCallId:d.id,toolName:d.toolName,...d.providerExecuted!=null?{providerExecuted:d.providerExecuted}:{},...I!=null?{dynamic:I}:{},...d.title!=null?{title:d.title}:{}});break}case"tool-input-delta":{v.enqueue({type:"tool-input-delta",toolCallId:d.id,inputTextDelta:d.delta});break}case"tool-call":{const I=c(d);d.invalid?v.enqueue({type:"tool-input-error",toolCallId:d.toolCallId,toolName:d.toolName,input:d.input,...d.providerExecuted!=null?{providerExecuted:d.providerExecuted}:{},...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{},...I!=null?{dynamic:I}:{},errorText:l(d.error),...d.title!=null?{title:d.title}:{}}):v.enqueue({type:"tool-input-available",toolCallId:d.toolCallId,toolName:d.toolName,input:d.input,...d.providerExecuted!=null?{providerExecuted:d.providerExecuted}:{},...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{},...I!=null?{dynamic:I}:{},...d.title!=null?{title:d.title}:{}});break}case"tool-approval-request":{v.enqueue({type:"tool-approval-request",approvalId:d.approvalId,toolCallId:d.toolCall.toolCallId});break}case"tool-result":{const I=c(d);v.enqueue({type:"tool-output-available",toolCallId:d.toolCallId,output:d.output,...d.providerExecuted!=null?{providerExecuted:d.providerExecuted}:{},...d.preliminary!=null?{preliminary:d.preliminary}:{},...I!=null?{dynamic:I}:{}});break}case"tool-error":{const I=c(d);v.enqueue({type:"tool-output-error",toolCallId:d.toolCallId,errorText:l(d.error),...d.providerExecuted!=null?{providerExecuted:d.providerExecuted}:{},...I!=null?{dynamic:I}:{}});break}case"tool-output-denied":{v.enqueue({type:"tool-output-denied",toolCallId:d.toolCallId});break}case"error":{v.enqueue({type:"error",errorText:l(d.error)});break}case"start-step":{v.enqueue({type:"start-step"});break}case"finish-step":{v.enqueue({type:"finish-step"});break}case"start":{s&&v.enqueue({type:"start",...E!=null?{messageMetadata:E}:{},...u!=null?{messageId:u}:{}});break}case"finish":{i&&v.enqueue({type:"finish",finishReason:d.finishReason,...E!=null?{messageMetadata:E}:{}});break}case"abort":{v.enqueue(d);break}case"tool-input-end":break;case"raw":break;default:{const I=w;throw new Error(`Unknown chunk type: ${I}`)}}E!=null&&w!=="start"&&w!=="finish"&&v.enqueue({type:"message-metadata",messageMetadata:E})}}));return Ur(Xy({stream:p,messageId:u??(t==null?void 0:t()),originalMessages:e,onFinish:r,onError:l}))}pipeUIMessageStreamToResponse(e,{originalMessages:t,generateMessageId:r,onFinish:n,messageMetadata:a,sendReasoning:o,sendSources:s,sendFinish:i,sendStart:l,onError:u,...c}={}){Qy({response:e,stream:this.toUIMessageStream({originalMessages:t,generateMessageId:r,onFinish:n,messageMetadata:a,sendReasoning:o,sendSources:s,sendFinish:i,sendStart:l,onError:u}),...c})}pipeTextStreamToResponse(e,t){Gy({response:e,textStream:this.textStream,...t})}toUIMessageStreamResponse({originalMessages:e,generateMessageId:t,onFinish:r,messageMetadata:n,sendReasoning:a,sendSources:o,sendFinish:s,sendStart:i,onError:l,...u}={}){return By({stream:this.toUIMessageStream({originalMessages:e,generateMessageId:t,onFinish:r,messageMetadata:n,sendReasoning:a,sendSources:o,sendFinish:s,sendStart:i,onError:l}),...u})}toTextStreamResponse(e){return Zy({textStream:this.textStream,...e})}};Nr({prefix:"aiobj",size:24});Nr({prefix:"aiobj",size:24});const lv=`You are an expert language translator specializing in preserving data structure integrity while translating content.
|
|
76
|
+
`)}})}},eu={"content-type":"text/event-stream","cache-control":"no-cache",connection:"keep-alive","x-vercel-ai-ui-message-stream":"v1","x-accel-buffering":"no"};function Vy({status:e,statusText:t,headers:r,stream:n,consumeSseStream:a}){let o=n.pipeThrough(new Ql);if(a){const[s,i]=o.tee();o=s,a({stream:i})}return new Response(o.pipeThrough(new TextEncoderStream),{status:e,statusText:t,headers:gn(r,eu)})}function Hy({originalMessages:e,responseMessageId:t}){if(e==null)return;const r=e[e.length-1];return(r==null?void 0:r.role)==="assistant"?r.id:typeof t=="function"?t():t}function Jy(e){return e.type.startsWith("data-")}function Jn(e){return e.type.startsWith("tool-")}function Yy(e){return e.type==="dynamic-tool"}function Wy(e){return Jn(e)||Yy(e)}function Wo(e){return e.type.split("-").slice(1).join("-")}function Ky({lastMessage:e,messageId:t}){return{message:(e==null?void 0:e.role)==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:{},activeReasoningParts:{},partialToolCalls:{}}}function Xy({stream:e,messageMetadataSchema:t,dataPartSchemas:r,runUpdateMessageJob:n,onError:a,onToolCall:o,onData:s}){return e.pipeThrough(new TransformStream({async transform(i,l){await n(async({state:u,write:c})=>{var p,d,v,E;function w(h){const R=u.message.parts.filter(Wy).find(y=>y.toolCallId===h);if(R==null)throw new Error(`no tool invocation found for tool call ${h}`);return R}function I(h){var D;const R=u.message.parts.find(z=>Jn(z)&&z.toolCallId===h.toolCallId),y=h,O=R;R!=null?(R.state=h.state,O.input=y.input,O.output=y.output,O.errorText=y.errorText,O.rawInput=y.rawInput,O.preliminary=y.preliminary,h.title!==void 0&&(O.title=h.title),O.providerExecuted=(D=y.providerExecuted)!=null?D:R.providerExecuted,y.providerMetadata!=null&&R.state==="input-available"&&(R.callProviderMetadata=y.providerMetadata)):u.message.parts.push({type:`tool-${h.toolName}`,toolCallId:h.toolCallId,state:h.state,title:h.title,input:y.input,output:y.output,rawInput:y.rawInput,errorText:y.errorText,providerExecuted:y.providerExecuted,preliminary:y.preliminary,...y.providerMetadata!=null?{callProviderMetadata:y.providerMetadata}:{}})}function P(h){var D,R;const y=u.message.parts.find(F=>F.type==="dynamic-tool"&&F.toolCallId===h.toolCallId),O=h,z=y;y!=null?(y.state=h.state,z.toolName=h.toolName,z.input=O.input,z.output=O.output,z.errorText=O.errorText,z.rawInput=(D=O.rawInput)!=null?D:z.rawInput,z.preliminary=O.preliminary,h.title!==void 0&&(z.title=h.title),z.providerExecuted=(R=O.providerExecuted)!=null?R:y.providerExecuted,O.providerMetadata!=null&&y.state==="input-available"&&(y.callProviderMetadata=O.providerMetadata)):u.message.parts.push({type:"dynamic-tool",toolName:h.toolName,toolCallId:h.toolCallId,state:h.state,input:O.input,output:O.output,errorText:O.errorText,preliminary:O.preliminary,providerExecuted:O.providerExecuted,title:h.title,...O.providerMetadata!=null?{callProviderMetadata:O.providerMetadata}:{}})}async function C(h){if(h!=null){const D=u.message.metadata!=null?fn(u.message.metadata,h):h;t!=null&&await qn({value:D,schema:t}),u.message.metadata=D}}switch(i.type){case"text-start":{const h={type:"text",text:"",providerMetadata:i.providerMetadata,state:"streaming"};u.activeTextParts[i.id]=h,u.message.parts.push(h),c();break}case"text-delta":{const h=u.activeTextParts[i.id];h.text+=i.delta,h.providerMetadata=(p=i.providerMetadata)!=null?p:h.providerMetadata,c();break}case"text-end":{const h=u.activeTextParts[i.id];h.state="done",h.providerMetadata=(d=i.providerMetadata)!=null?d:h.providerMetadata,delete u.activeTextParts[i.id],c();break}case"reasoning-start":{const h={type:"reasoning",text:"",providerMetadata:i.providerMetadata,state:"streaming"};u.activeReasoningParts[i.id]=h,u.message.parts.push(h),c();break}case"reasoning-delta":{const h=u.activeReasoningParts[i.id];h.text+=i.delta,h.providerMetadata=(v=i.providerMetadata)!=null?v:h.providerMetadata,c();break}case"reasoning-end":{const h=u.activeReasoningParts[i.id];h.providerMetadata=(E=i.providerMetadata)!=null?E:h.providerMetadata,h.state="done",delete u.activeReasoningParts[i.id],c();break}case"file":{u.message.parts.push({type:"file",mediaType:i.mediaType,url:i.url}),c();break}case"source-url":{u.message.parts.push({type:"source-url",sourceId:i.sourceId,url:i.url,title:i.title,providerMetadata:i.providerMetadata}),c();break}case"source-document":{u.message.parts.push({type:"source-document",sourceId:i.sourceId,mediaType:i.mediaType,title:i.title,filename:i.filename,providerMetadata:i.providerMetadata}),c();break}case"tool-input-start":{const h=u.message.parts.filter(Jn);u.partialToolCalls[i.toolCallId]={text:"",toolName:i.toolName,index:h.length,dynamic:i.dynamic,title:i.title},i.dynamic?P({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-streaming",input:void 0,providerExecuted:i.providerExecuted,title:i.title}):I({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-streaming",input:void 0,providerExecuted:i.providerExecuted,title:i.title}),c();break}case"tool-input-delta":{const h=u.partialToolCalls[i.toolCallId];h.text+=i.inputTextDelta;const{value:D}=await Rr(h.text);h.dynamic?P({toolCallId:i.toolCallId,toolName:h.toolName,state:"input-streaming",input:D,title:h.title}):I({toolCallId:i.toolCallId,toolName:h.toolName,state:"input-streaming",input:D,title:h.title}),c();break}case"tool-input-available":{i.dynamic?P({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-available",input:i.input,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:i.title}):I({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-available",input:i.input,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:i.title}),c(),o&&!i.providerExecuted&&await o({toolCall:i});break}case"tool-input-error":{i.dynamic?P({toolCallId:i.toolCallId,toolName:i.toolName,state:"output-error",input:i.input,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata}):I({toolCallId:i.toolCallId,toolName:i.toolName,state:"output-error",input:void 0,rawInput:i.input,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata}),c();break}case"tool-approval-request":{const h=w(i.toolCallId);h.state="approval-requested",h.approval={id:i.approvalId},c();break}case"tool-output-denied":{const h=w(i.toolCallId);h.state="output-denied",c();break}case"tool-output-available":{const h=w(i.toolCallId);h.type==="dynamic-tool"?P({toolCallId:i.toolCallId,toolName:h.toolName,state:"output-available",input:h.input,output:i.output,preliminary:i.preliminary,providerExecuted:i.providerExecuted,title:h.title}):I({toolCallId:i.toolCallId,toolName:Wo(h),state:"output-available",input:h.input,output:i.output,providerExecuted:i.providerExecuted,preliminary:i.preliminary,title:h.title}),c();break}case"tool-output-error":{const h=w(i.toolCallId);h.type==="dynamic-tool"?P({toolCallId:i.toolCallId,toolName:h.toolName,state:"output-error",input:h.input,errorText:i.errorText,providerExecuted:i.providerExecuted,title:h.title}):I({toolCallId:i.toolCallId,toolName:Wo(h),state:"output-error",input:h.input,rawInput:h.rawInput,errorText:i.errorText,providerExecuted:i.providerExecuted,title:h.title}),c();break}case"start-step":{u.message.parts.push({type:"step-start"});break}case"finish-step":{u.activeTextParts={},u.activeReasoningParts={};break}case"start":{i.messageId!=null&&(u.message.id=i.messageId),await C(i.messageMetadata),(i.messageId!=null||i.messageMetadata!=null)&&c();break}case"finish":{i.finishReason!=null&&(u.finishReason=i.finishReason),await C(i.messageMetadata),i.messageMetadata!=null&&c();break}case"message-metadata":{await C(i.messageMetadata),i.messageMetadata!=null&&c();break}case"error":{a==null||a(new Error(i.errorText));break}default:if(Jy(i)){(r==null?void 0:r[i.type])!=null&&await qn({value:i.data,schema:r[i.type]});const h=i;if(h.transient){s==null||s(h);break}const D=h.id!=null?u.message.parts.find(R=>h.type===R.type&&h.id===R.id):void 0;D!=null?D.data=h.data:u.message.parts.push(h),s==null||s(h),c()}}l.enqueue(i)})}}))}function Qy({messageId:e,originalMessages:t=[],onFinish:r,onError:n,stream:a}){let o=t==null?void 0:t[t.length-1];(o==null?void 0:o.role)!=="assistant"?o=void 0:e=o.id;let s=!1;const i=a.pipeThrough(new TransformStream({transform(d,v){if(d.type==="start"){const E=d;E.messageId==null&&e!=null&&(E.messageId=e)}d.type==="abort"&&(s=!0),v.enqueue(d)}}));if(r==null)return i;const l=Ky({lastMessage:o?structuredClone(o):void 0,messageId:e??""}),u=async d=>{await d({state:l,write:()=>{}})};let c=!1;const p=async()=>{if(c||!r)return;c=!0;const d=l.message.id===(o==null?void 0:o.id);await r({isAborted:s,isContinuation:d,responseMessage:l.message,messages:[...d?t.slice(0,-1):t,l.message],finishReason:l.finishReason})};return Xy({stream:i,runUpdateMessageJob:u,onError:n}).pipeThrough(new TransformStream({transform(d,v){v.enqueue(d)},async cancel(){await p()},async flush(){await p()}}))}function ev({response:e,status:t,statusText:r,headers:n,stream:a,consumeSseStream:o}){let s=a.pipeThrough(new Ql);if(o){const[i,l]=s.tee();s=i,o({stream:l})}Xl({response:e,status:t,statusText:r,headers:Object.fromEntries(gn(n,eu).entries()),stream:s.pipeThrough(new TextEncoderStream)})}function jr(e){const t=e.pipeThrough(new TransformStream);return t[Symbol.asyncIterator]=function(){const r=this.getReader();let n=!1;async function a(o){var s;n=!0;try{o&&await((s=r.cancel)==null?void 0:s.call(r))}finally{try{r.releaseLock()}catch{}}}return{async next(){if(n)return{done:!0,value:void 0};const{done:o,value:s}=await r.read();return o?(await a(!0),{done:!0,value:void 0}):{done:!1,value:s}},async return(){return await a(!0),{done:!0,value:void 0}},async throw(o){throw await a(!0),o}}},t}async function tv({stream:e,onError:t}){const r=e.getReader();try{for(;;){const{done:n}=await r.read();if(n)break}}catch(n){t==null||t(n)}finally{r.releaseLock()}}function Ko(){let e,t;return{promise:new Promise((n,a)=>{e=n,t=a}),resolve:e,reject:t}}function rv(){let e=[],t=null,r=!1,n=Ko();const a=()=>{r=!0,n.resolve(),e.forEach(s=>s.cancel()),e=[],t==null||t.close()},o=async()=>{if(r&&e.length===0){t==null||t.close();return}if(e.length===0)return n=Ko(),await n.promise,o();try{const{value:s,done:i}=await e[0].read();i?(e.shift(),e.length===0&&r?t==null||t.close():await o()):t==null||t.enqueue(s)}catch(s){t==null||t.error(s),e.shift(),a()}};return{stream:new ReadableStream({start(s){t=s},pull:o,async cancel(){for(const s of e)await s.cancel();e=[],r=!0}}),addStream:s=>{if(r)throw new Error("Cannot add inner stream: outer stream is closed");e.push(s.getReader()),n.resolve()},close:()=>{r=!0,n.resolve(),e.length===0&&(t==null||t.close())},terminate:a}}function nv(){var e,t;return(t=(e=globalThis==null?void 0:globalThis.performance)==null?void 0:e.now())!=null?t:Date.now()}function av({tools:e,generatorStream:t,tracer:r,telemetry:n,system:a,messages:o,abortSignal:s,repairToolCall:i,experimental_context:l,generateId:u}){let c=null;const p=new ReadableStream({start(h){c=h}}),d=new Set,v=new Map,E=new Map;let w=!1,I;function P(){w&&d.size===0&&(I!=null&&c.enqueue(I),c.close())}const C=new TransformStream({async transform(h,D){const R=h.type;switch(R){case"stream-start":case"text-start":case"text-delta":case"text-end":case"reasoning-start":case"reasoning-delta":case"reasoning-end":case"tool-input-start":case"tool-input-delta":case"tool-input-end":case"source":case"response-metadata":case"error":case"raw":{D.enqueue(h);break}case"file":{D.enqueue({type:"file",file:new zy({data:h.data,mediaType:h.mediaType})});break}case"finish":{I={type:"finish",finishReason:h.finishReason.unified,rawFinishReason:h.finishReason.raw,usage:Ul(h.usage),providerMetadata:h.providerMetadata};break}case"tool-approval-request":{const y=E.get(h.toolCallId);if(y==null){c.enqueue({type:"error",error:new ga({toolCallId:h.toolCallId,approvalId:h.approvalId})});break}D.enqueue({type:"tool-approval-request",approvalId:h.approvalId,toolCall:y});break}case"tool-call":{try{const y=await Hl({toolCall:h,tools:e,repairToolCall:i,system:a,messages:o});if(E.set(y.toolCallId,y),D.enqueue(y),y.invalid){c.enqueue({type:"tool-error",toolCallId:y.toolCallId,toolName:y.toolName,input:y.input,error:oa(y.error),dynamic:!0,title:y.title});break}const O=e==null?void 0:e[y.toolName];if(O==null)break;if(O.onInputAvailable!=null&&await O.onInputAvailable({input:y.input,toolCallId:y.toolCallId,messages:o,abortSignal:s,experimental_context:l}),await Vl({tool:O,toolCall:y,messages:o,experimental_context:l})){c.enqueue({type:"tool-approval-request",approvalId:u(),toolCall:y});break}if(v.set(y.toolCallId,y.input),O.execute!=null&&y.providerExecuted!==!0){const z=u();d.add(z),ha({toolCall:y,tools:e,tracer:r,telemetry:n,messages:o,abortSignal:s,experimental_context:l,onPreliminaryToolResult:F=>{c.enqueue(F)}}).then(F=>{c.enqueue(F)}).catch(F=>{c.enqueue({type:"error",error:F})}).finally(()=>{d.delete(z),P()})}}catch(y){c.enqueue({type:"error",error:y})}break}case"tool-result":{const y=h.toolName;h.isError?c.enqueue({type:"tool-error",toolCallId:h.toolCallId,toolName:y,input:v.get(h.toolCallId),providerExecuted:!0,error:h.result,dynamic:h.dynamic}):D.enqueue({type:"tool-result",toolCallId:h.toolCallId,toolName:y,input:v.get(h.toolCallId),output:h.result,providerExecuted:!0,dynamic:h.dynamic});break}default:{const y=R;throw new Error(`Unhandled chunk type: ${y}`)}}},flush(){w=!0,P()}});return new ReadableStream({async start(h){return Promise.all([t.pipeThrough(C).pipeTo(new WritableStream({write(D){h.enqueue(D)},close(){}})),p.pipeTo(new WritableStream({write(D){h.enqueue(D)},close(){h.close()}}))])}})}var ov=Nr({prefix:"aitxt",size:24});function sv({model:e,tools:t,toolChoice:r,system:n,prompt:a,messages:o,maxRetries:s,abortSignal:i,headers:l,stopWhen:u=Wl(1),experimental_output:c,output:p=c,experimental_telemetry:d,prepareStep:v,providerOptions:E,experimental_activeTools:w,activeTools:I=w,experimental_repairToolCall:P,experimental_transform:C,experimental_download:h,includeRawChunks:D=!1,onChunk:R,onError:y=({error:Oe})=>{console.error(Oe)},onFinish:O,onAbort:z,onStepFinish:F,experimental_context:se,_internal:{now:L=nv,generateId:X=ov,currentDate:Q=()=>new Date}={},...le}){return new lv({model:an(e),telemetry:d,headers:l,settings:le,maxRetries:s,abortSignal:i,system:n,prompt:a,messages:o,tools:t,toolChoice:r,transforms:Tr(C),activeTools:I,repairToolCall:P,stopConditions:Tr(u),output:p,providerOptions:E,prepareStep:v,includeRawChunks:D,onChunk:R,onError:y,onFinish:O,onAbort:z,onStepFinish:F,now:L,currentDate:Q,generateId:X,experimental_context:se,download:h})}function iv(e){let t,r="",n="",a,o="";function s({controller:i,partialOutput:l=void 0}){i.enqueue({part:{type:"text-delta",id:t,text:n,providerMetadata:a},partialOutput:l}),n=""}return new TransformStream({async transform(i,l){var u;if(i.type==="finish-step"&&n.length>0&&s({controller:l}),i.type!=="text-delta"&&i.type!=="text-start"&&i.type!=="text-end"){l.enqueue({part:i,partialOutput:void 0});return}if(t==null)t=i.id;else if(i.id!==t){l.enqueue({part:i,partialOutput:void 0});return}if(i.type==="text-start"){l.enqueue({part:i,partialOutput:void 0});return}if(i.type==="text-end"){n.length>0&&s({controller:l}),l.enqueue({part:i,partialOutput:void 0});return}r+=i.text,n+=i.text,a=(u=i.providerMetadata)!=null?u:a;const c=await e.parsePartialOutput({text:r});if(c!==void 0){const p=JSON.stringify(c.partial);p!==o&&(s({controller:l,partialOutput:c.partial}),o=p)}}})}var lv=class{constructor({model:e,telemetry:t,headers:r,settings:n,maxRetries:a,abortSignal:o,system:s,prompt:i,messages:l,tools:u,toolChoice:c,transforms:p,activeTools:d,repairToolCall:v,stopConditions:E,output:w,providerOptions:I,prepareStep:P,includeRawChunks:C,now:h,currentDate:D,generateId:R,onChunk:y,onError:O,onFinish:z,onAbort:F,onStepFinish:se,experimental_context:L,download:X}){this._totalUsage=new ir,this._finishReason=new ir,this._rawFinishReason=new ir,this._steps=new ir,this.outputSpecification=w,this.includeRawChunks=C,this.tools=u;let Q,le=[];const Oe=[];let we,ct,Fe,zt={},Dt=[];const Ce=[],$t=new Map;let Mt,nt={},at={};const xr=new TransformStream({async transform(pe,fe){var ne,V,B,Ke;fe.enqueue(pe);const{part:N}=pe;if((N.type==="text-delta"||N.type==="reasoning-delta"||N.type==="source"||N.type==="tool-call"||N.type==="tool-result"||N.type==="tool-input-start"||N.type==="tool-input-delta"||N.type==="raw")&&await(y==null?void 0:y({chunk:N})),N.type==="error"&&await O({error:Dl(N.error)}),N.type==="text-start"&&(nt[N.id]={type:"text",text:"",providerMetadata:N.providerMetadata},le.push(nt[N.id])),N.type==="text-delta"){const U=nt[N.id];if(U==null){fe.enqueue({part:{type:"error",error:`text part ${N.id} not found`},partialOutput:void 0});return}U.text+=N.text,U.providerMetadata=(ne=N.providerMetadata)!=null?ne:U.providerMetadata}if(N.type==="text-end"){const U=nt[N.id];if(U==null){fe.enqueue({part:{type:"error",error:`text part ${N.id} not found`},partialOutput:void 0});return}U.providerMetadata=(V=N.providerMetadata)!=null?V:U.providerMetadata,delete nt[N.id]}if(N.type==="reasoning-start"&&(at[N.id]={type:"reasoning",text:"",providerMetadata:N.providerMetadata},le.push(at[N.id])),N.type==="reasoning-delta"){const U=at[N.id];if(U==null){fe.enqueue({part:{type:"error",error:`reasoning part ${N.id} not found`},partialOutput:void 0});return}U.text+=N.text,U.providerMetadata=(B=N.providerMetadata)!=null?B:U.providerMetadata}if(N.type==="reasoning-end"){const U=at[N.id];if(U==null){fe.enqueue({part:{type:"error",error:`reasoning part ${N.id} not found`},partialOutput:void 0});return}U.providerMetadata=(Ke=N.providerMetadata)!=null?Ke:U.providerMetadata,delete at[N.id]}if(N.type==="file"&&le.push({type:"file",file:N.file}),N.type==="source"&&le.push(N),N.type==="tool-call"&&le.push(N),N.type==="tool-result"&&!N.preliminary&&le.push(N),N.type==="tool-approval-request"&&le.push(N),N.type==="tool-error"&&le.push(N),N.type==="start-step"&&(le=[],at={},nt={},zt=N.request,Dt=N.warnings),N.type==="finish-step"){const U=await Vn({content:le,tools:u}),ae=new Yl({content:le,finishReason:N.finishReason,rawFinishReason:N.rawFinishReason,usage:N.usage,warnings:Dt,request:zt,response:{...N.response,messages:[...Oe,...U]},providerMetadata:N.providerMetadata});await(se==null?void 0:se(ae)),ma({warnings:Dt,provider:e.provider,model:e.modelId}),Ce.push(ae),Oe.push(...U),Q.resolve()}N.type==="finish"&&(Fe=N.totalUsage,we=N.finishReason,ct=N.rawFinishReason)},async flush(pe){try{if(Ce.length===0){const B=new dl({message:"No output generated. Check the stream for errors."});J._finishReason.reject(B),J._rawFinishReason.reject(B),J._totalUsage.reject(B),J._steps.reject(B);return}const fe=we??"other",ne=Fe??Cn();J._finishReason.resolve(fe),J._rawFinishReason.resolve(ct),J._totalUsage.resolve(ne),J._steps.resolve(Ce);const V=Ce[Ce.length-1];await(z==null?void 0:z({finishReason:V.finishReason,rawFinishReason:V.rawFinishReason,totalUsage:ne,usage:V.usage,content:V.content,text:V.text,reasoningText:V.reasoningText,reasoning:V.reasoning,files:V.files,sources:V.sources,toolCalls:V.toolCalls,staticToolCalls:V.staticToolCalls,dynamicToolCalls:V.dynamicToolCalls,toolResults:V.toolResults,staticToolResults:V.staticToolResults,dynamicToolResults:V.dynamicToolResults,request:V.request,response:V.response,warnings:V.warnings,providerMetadata:V.providerMetadata,steps:Ce,experimental_context:L})),Mt.setAttributes(await tt({telemetry:t,attributes:{"ai.response.finishReason":fe,"ai.response.text":{output:()=>V.text},"ai.response.toolCalls":{output:()=>{var B;return(B=V.toolCalls)!=null&&B.length?JSON.stringify(V.toolCalls):void 0}},"ai.response.providerMetadata":JSON.stringify(V.providerMetadata),"ai.usage.inputTokens":ne.inputTokens,"ai.usage.outputTokens":ne.outputTokens,"ai.usage.totalTokens":ne.totalTokens,"ai.usage.reasoningTokens":ne.reasoningTokens,"ai.usage.cachedInputTokens":ne.cachedInputTokens}}))}catch(fe){pe.error(fe)}finally{Mt.end()}}}),dt=rv();this.addStream=dt.addStream,this.closeStream=dt.close;const er=dt.stream.getReader();let ot=new ReadableStream({async start(pe){pe.enqueue({type:"start"})},async pull(pe){function fe(){F==null||F({steps:Ce}),pe.enqueue({type:"abort"}),pe.close()}try{const{done:ne,value:V}=await er.read();if(ne){pe.close();return}if(o!=null&&o.aborted){fe();return}pe.enqueue(V)}catch(ne){kt(ne)&&(o!=null&&o.aborted)?fe():pe.error(ne)}},cancel(pe){return dt.stream.cancel(pe)}});for(const pe of p)ot=ot.pipeThrough(pe({tools:u,stopStream(){dt.terminate()}}));this.baseStream=ot.pipeThrough(iv(w??on())).pipeThrough(xr);const{maxRetries:kr,retry:tr}=Zl({maxRetries:a,abortSignal:o}),It=Ml(t),Ze=Bn(n),Pr=$l({model:e,telemetry:t,headers:r,settings:{...Ze,maxRetries:kr}}),J=this;Ir({name:"ai.streamText",attributes:tt({telemetry:t,attributes:{...Er({operationId:"ai.streamText",telemetry:t}),...Pr,"ai.prompt":{input:()=>JSON.stringify({system:s,prompt:i,messages:l})}}}),tracer:It,endWhenDone:!1,fn:async pe=>{Mt=pe;const fe=await zl({system:s,prompt:i,messages:l}),ne=fe.messages,V=[],{approvedToolApprovals:B,deniedToolApprovals:Ke}=Gl({messages:ne});if(Ke.length>0||B.length>0){const U=[...B,...Ke].filter(ve=>ve.toolCall.providerExecuted),ae=B.filter(ve=>!ve.toolCall.providerExecuted),W=Ke.filter(ve=>!ve.toolCall.providerExecuted),st=Ke.filter(ve=>ve.toolCall.providerExecuted);let ke;const pt=new ReadableStream({start(ve){ke=ve}});J.addStream(pt);try{for(const Se of[...W,...st])ke==null||ke.enqueue({type:"tool-output-denied",toolCallId:Se.toolCall.toolCallId,toolName:Se.toolCall.toolName});const ve=[];if(await Promise.all(ae.map(async Se=>{const _e=await ha({toolCall:Se.toolCall,tools:u,tracer:It,telemetry:t,messages:ne,abortSignal:o,experimental_context:L,onPreliminaryToolResult:St=>{ke==null||ke.enqueue(St)}});_e!=null&&(ke==null||ke.enqueue(_e),ve.push(_e))})),U.length>0&&V.push({role:"tool",content:U.map(Se=>({type:"tool-approval-response",approvalId:Se.approvalResponse.approvalId,approved:Se.approvalResponse.approved,reason:Se.approvalResponse.reason,providerExecuted:!0}))}),ve.length>0||W.length>0){const Se=[];for(const _e of ve)Se.push({type:"tool-result",toolCallId:_e.toolCallId,toolName:_e.toolName,output:await pr({toolCallId:_e.toolCallId,input:_e.input,tool:u==null?void 0:u[_e.toolName],output:_e.type==="tool-result"?_e.output:_e.error,errorMode:_e.type==="tool-error"?"json":"none"})});for(const _e of W)Se.push({type:"tool-result",toolCallId:_e.toolCall.toolCallId,toolName:_e.toolCall.toolName,output:{type:"execution-denied",reason:_e.approvalResponse.reason}});V.push({role:"tool",content:Se})}}finally{ke==null||ke.close()}}Oe.push(...V);async function N({currentStep:U,responseMessages:ae,usage:W}){var st,ke,pt,ve,Se,_e;const St=J.includeRawChunks;Q=new ir;const ft=[...ne,...ae],$=await(P==null?void 0:P({model:e,steps:Ce,stepNumber:Ce.length,messages:ft,experimental_context:L})),Te=an((st=$==null?void 0:$.model)!=null?st:e),Ft=await Rl({prompt:{system:(ke=$==null?void 0:$.system)!=null?ke:fe.system,messages:(pt=$==null?void 0:$.messages)!=null?pt:ft},supportedUrls:await Te.supportedUrls,download:X}),{toolChoice:it,tools:Lt}=await xl({tools:u,toolChoice:(ve=$==null?void 0:$.toolChoice)!=null?ve:c,activeTools:(Se=$==null?void 0:$.activeTools)!=null?Se:d});L=(_e=$==null?void 0:$.experimental_context)!=null?_e:L;const Cr=fn(I,$==null?void 0:$.providerOptions),{result:{stream:zr,response:rr,request:nr},doStreamSpan:lt,startTimestampMs:Dr}=await tr(()=>Ir({name:"ai.streamText.doStream",attributes:tt({telemetry:t,attributes:{...Er({operationId:"ai.streamText.doStream",telemetry:t}),...Pr,"ai.model.provider":Te.provider,"ai.model.id":Te.modelId,"ai.prompt.messages":{input:()=>Ll(Ft)},"ai.prompt.tools":{input:()=>Lt==null?void 0:Lt.map(M=>JSON.stringify(M))},"ai.prompt.toolChoice":{input:()=>it!=null?JSON.stringify(it):void 0},"gen_ai.system":Te.provider,"gen_ai.request.model":Te.modelId,"gen_ai.request.frequency_penalty":Ze.frequencyPenalty,"gen_ai.request.max_tokens":Ze.maxOutputTokens,"gen_ai.request.presence_penalty":Ze.presencePenalty,"gen_ai.request.stop_sequences":Ze.stopSequences,"gen_ai.request.temperature":Ze.temperature,"gen_ai.request.top_k":Ze.topK,"gen_ai.request.top_p":Ze.topP}}),tracer:It,endWhenDone:!1,fn:async M=>({startTimestampMs:h(),doStreamSpan:M,result:await Te.doStream({...Ze,tools:Lt,toolChoice:it,responseFormat:await(w==null?void 0:w.responseFormat),prompt:Ft,providerOptions:Cr,abortSignal:o,headers:r,includeRawChunks:St})})})),Re=av({tools:u,generatorStream:zr,tracer:It,telemetry:t,system:s,messages:ft,repairToolCall:v,abortSignal:o,experimental_context:L,generateId:R}),gt=nr??{},mt=[],ar=[];let mn;const hn={};let Ut="other",yn,Ve=Cn(),vn,_a=!0,Xe={id:R(),timestamp:D(),modelId:e.modelId},wa="";J.addStream(Re.pipeThrough(new TransformStream({async transform(M,xe){var or,sr,$r,Ne,jt;if(M.type==="stream-start"){mn=M.warnings;return}if(_a){const be=h()-Dr;_a=!1,lt.addEvent("ai.stream.firstChunk",{"ai.response.msToFirstChunk":be}),lt.setAttributes({"ai.response.msToFirstChunk":be}),xe.enqueue({type:"start-step",request:gt,warnings:mn??[]})}const _n=M.type;switch(_n){case"tool-approval-request":case"text-start":case"text-end":{xe.enqueue(M);break}case"text-delta":{M.delta.length>0&&(xe.enqueue({type:"text-delta",id:M.id,text:M.delta,providerMetadata:M.providerMetadata}),wa+=M.delta);break}case"reasoning-start":case"reasoning-end":{xe.enqueue(M);break}case"reasoning-delta":{xe.enqueue({type:"reasoning-delta",id:M.id,text:M.delta,providerMetadata:M.providerMetadata});break}case"tool-call":{xe.enqueue(M),mt.push(M);break}case"tool-result":{xe.enqueue(M),M.preliminary||ar.push(M);break}case"tool-error":{xe.enqueue(M),ar.push(M);break}case"response-metadata":{Xe={id:(or=M.id)!=null?or:Xe.id,timestamp:(sr=M.timestamp)!=null?sr:Xe.timestamp,modelId:($r=M.modelId)!=null?$r:Xe.modelId};break}case"finish":{Ve=M.usage,Ut=M.finishReason,yn=M.rawFinishReason,vn=M.providerMetadata;const be=h()-Dr;lt.addEvent("ai.stream.finish"),lt.setAttributes({"ai.response.msToFinish":be,"ai.response.avgOutputTokensPerSecond":1e3*((Ne=Ve.outputTokens)!=null?Ne:0)/be});break}case"file":{xe.enqueue(M);break}case"source":{xe.enqueue(M);break}case"tool-input-start":{hn[M.id]=M.toolName;const be=u==null?void 0:u[M.toolName];(be==null?void 0:be.onInputStart)!=null&&await be.onInputStart({toolCallId:M.id,messages:ft,abortSignal:o,experimental_context:L}),xe.enqueue({...M,dynamic:(jt=M.dynamic)!=null?jt:(be==null?void 0:be.type)==="dynamic",title:be==null?void 0:be.title});break}case"tool-input-end":{delete hn[M.id],xe.enqueue(M);break}case"tool-input-delta":{const be=hn[M.id],wn=u==null?void 0:u[be];(wn==null?void 0:wn.onInputDelta)!=null&&await wn.onInputDelta({inputTextDelta:M.delta,toolCallId:M.id,messages:ft,abortSignal:o,experimental_context:L}),xe.enqueue(M);break}case"error":{xe.enqueue(M),Ut="error";break}case"raw":{St&&xe.enqueue(M);break}default:{const be=_n;throw new Error(`Unknown chunk type: ${be}`)}}},async flush(M){const xe=mt.length>0?JSON.stringify(mt):void 0;try{lt.setAttributes(await tt({telemetry:t,attributes:{"ai.response.finishReason":Ut,"ai.response.text":{output:()=>wa},"ai.response.toolCalls":{output:()=>xe},"ai.response.id":Xe.id,"ai.response.model":Xe.modelId,"ai.response.timestamp":Xe.timestamp.toISOString(),"ai.response.providerMetadata":JSON.stringify(vn),"ai.usage.inputTokens":Ve.inputTokens,"ai.usage.outputTokens":Ve.outputTokens,"ai.usage.totalTokens":Ve.totalTokens,"ai.usage.reasoningTokens":Ve.reasoningTokens,"ai.usage.cachedInputTokens":Ve.cachedInputTokens,"gen_ai.response.finish_reasons":[Ut],"gen_ai.response.id":Xe.id,"gen_ai.response.model":Xe.modelId,"gen_ai.usage.input_tokens":Ve.inputTokens,"gen_ai.usage.output_tokens":Ve.outputTokens}}))}catch{}finally{lt.end()}M.enqueue({type:"finish-step",finishReason:Ut,rawFinishReason:yn,usage:Ve,providerMetadata:vn,response:{...Xe,headers:rr==null?void 0:rr.headers}});const or=jl(W,Ve);await Q.promise;const sr=mt.filter(Ne=>Ne.providerExecuted!==!0),$r=ar.filter(Ne=>Ne.providerExecuted!==!0);for(const Ne of mt){if(Ne.providerExecuted!==!0)continue;const jt=u==null?void 0:u[Ne.toolName];(jt==null?void 0:jt.type)==="provider"&&jt.supportsDeferredResults&&(ar.some(be=>be.type==="tool-result"&&be.toolCallId===Ne.toolCallId)||$t.set(Ne.toolCallId,{toolName:Ne.toolName}))}for(const Ne of ar)Ne.type==="tool-result"&&$t.delete(Ne.toolCallId);if((sr.length>0&&$r.length===sr.length||$t.size>0)&&!await Kl({stopConditions:E,steps:Ce})){ae.push(...await Vn({content:Ce[Ce.length-1].content,tools:u}));try{await N({currentStep:U+1,responseMessages:ae,usage:or})}catch(Ne){M.enqueue({type:"error",error:Ne}),J.closeStream()}}else M.enqueue({type:"finish",finishReason:Ut,rawFinishReason:yn,totalUsage:or}),J.closeStream()}})))}await N({currentStep:0,responseMessages:V,usage:Cn()})}}).catch(pe=>{J.addStream(new ReadableStream({start(fe){fe.enqueue({type:"error",error:pe}),fe.close()}})),J.closeStream()})}get steps(){return this.consumeStream(),this._steps.promise}get finalStep(){return this.steps.then(e=>e[e.length-1])}get content(){return this.finalStep.then(e=>e.content)}get warnings(){return this.finalStep.then(e=>e.warnings)}get providerMetadata(){return this.finalStep.then(e=>e.providerMetadata)}get text(){return this.finalStep.then(e=>e.text)}get reasoningText(){return this.finalStep.then(e=>e.reasoningText)}get reasoning(){return this.finalStep.then(e=>e.reasoning)}get sources(){return this.finalStep.then(e=>e.sources)}get files(){return this.finalStep.then(e=>e.files)}get toolCalls(){return this.finalStep.then(e=>e.toolCalls)}get staticToolCalls(){return this.finalStep.then(e=>e.staticToolCalls)}get dynamicToolCalls(){return this.finalStep.then(e=>e.dynamicToolCalls)}get toolResults(){return this.finalStep.then(e=>e.toolResults)}get staticToolResults(){return this.finalStep.then(e=>e.staticToolResults)}get dynamicToolResults(){return this.finalStep.then(e=>e.dynamicToolResults)}get usage(){return this.finalStep.then(e=>e.usage)}get request(){return this.finalStep.then(e=>e.request)}get response(){return this.finalStep.then(e=>e.response)}get totalUsage(){return this.consumeStream(),this._totalUsage.promise}get finishReason(){return this.consumeStream(),this._finishReason.promise}get rawFinishReason(){return this.consumeStream(),this._rawFinishReason.promise}teeStream(){const[e,t]=this.baseStream.tee();return this.baseStream=t,e}get textStream(){return jr(this.teeStream().pipeThrough(new TransformStream({transform({part:e},t){e.type==="text-delta"&&t.enqueue(e.text)}})))}get fullStream(){return jr(this.teeStream().pipeThrough(new TransformStream({transform({part:e},t){t.enqueue(e)}})))}async consumeStream(e){var t;try{await tv({stream:this.fullStream,onError:e==null?void 0:e.onError})}catch(r){(t=e==null?void 0:e.onError)==null||t.call(e,r)}}get experimental_partialOutputStream(){return this.partialOutputStream}get partialOutputStream(){return jr(this.teeStream().pipeThrough(new TransformStream({transform({partialOutput:e},t){e!=null&&t.enqueue(e)}})))}get output(){return this.finalStep.then(e=>{var t;return((t=this.outputSpecification)!=null?t:on()).parseCompleteOutput({text:e.text},{response:e.response,usage:e.usage,finishReason:e.finishReason})})}toUIMessageStream({originalMessages:e,generateMessageId:t,onFinish:r,messageMetadata:n,sendReasoning:a=!0,sendSources:o=!1,sendStart:s=!0,sendFinish:i=!0,onError:l=Wt}={}){const u=t!=null?Hy({originalMessages:e,responseMessageId:t}):void 0,c=d=>{var v;const E=(v=this.tools)==null?void 0:v[d.toolName];return E==null?d.dynamic:(E==null?void 0:E.type)==="dynamic"?!0:void 0},p=this.fullStream.pipeThrough(new TransformStream({transform:async(d,v)=>{const E=n==null?void 0:n({part:d}),w=d.type;switch(w){case"text-start":{v.enqueue({type:"text-start",id:d.id,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"text-delta":{v.enqueue({type:"text-delta",id:d.id,delta:d.text,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"text-end":{v.enqueue({type:"text-end",id:d.id,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"reasoning-start":{v.enqueue({type:"reasoning-start",id:d.id,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"reasoning-delta":{a&&v.enqueue({type:"reasoning-delta",id:d.id,delta:d.text,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"reasoning-end":{v.enqueue({type:"reasoning-end",id:d.id,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"file":{v.enqueue({type:"file",mediaType:d.file.mediaType,url:`data:${d.file.mediaType};base64,${d.file.base64}`});break}case"source":{o&&d.sourceType==="url"&&v.enqueue({type:"source-url",sourceId:d.id,url:d.url,title:d.title,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}}),o&&d.sourceType==="document"&&v.enqueue({type:"source-document",sourceId:d.id,mediaType:d.mediaType,title:d.title,filename:d.filename,...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{}});break}case"tool-input-start":{const I=c(d);v.enqueue({type:"tool-input-start",toolCallId:d.id,toolName:d.toolName,...d.providerExecuted!=null?{providerExecuted:d.providerExecuted}:{},...I!=null?{dynamic:I}:{},...d.title!=null?{title:d.title}:{}});break}case"tool-input-delta":{v.enqueue({type:"tool-input-delta",toolCallId:d.id,inputTextDelta:d.delta});break}case"tool-call":{const I=c(d);d.invalid?v.enqueue({type:"tool-input-error",toolCallId:d.toolCallId,toolName:d.toolName,input:d.input,...d.providerExecuted!=null?{providerExecuted:d.providerExecuted}:{},...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{},...I!=null?{dynamic:I}:{},errorText:l(d.error),...d.title!=null?{title:d.title}:{}}):v.enqueue({type:"tool-input-available",toolCallId:d.toolCallId,toolName:d.toolName,input:d.input,...d.providerExecuted!=null?{providerExecuted:d.providerExecuted}:{},...d.providerMetadata!=null?{providerMetadata:d.providerMetadata}:{},...I!=null?{dynamic:I}:{},...d.title!=null?{title:d.title}:{}});break}case"tool-approval-request":{v.enqueue({type:"tool-approval-request",approvalId:d.approvalId,toolCallId:d.toolCall.toolCallId});break}case"tool-result":{const I=c(d);v.enqueue({type:"tool-output-available",toolCallId:d.toolCallId,output:d.output,...d.providerExecuted!=null?{providerExecuted:d.providerExecuted}:{},...d.preliminary!=null?{preliminary:d.preliminary}:{},...I!=null?{dynamic:I}:{}});break}case"tool-error":{const I=c(d);v.enqueue({type:"tool-output-error",toolCallId:d.toolCallId,errorText:l(d.error),...d.providerExecuted!=null?{providerExecuted:d.providerExecuted}:{},...I!=null?{dynamic:I}:{}});break}case"tool-output-denied":{v.enqueue({type:"tool-output-denied",toolCallId:d.toolCallId});break}case"error":{v.enqueue({type:"error",errorText:l(d.error)});break}case"start-step":{v.enqueue({type:"start-step"});break}case"finish-step":{v.enqueue({type:"finish-step"});break}case"start":{s&&v.enqueue({type:"start",...E!=null?{messageMetadata:E}:{},...u!=null?{messageId:u}:{}});break}case"finish":{i&&v.enqueue({type:"finish",finishReason:d.finishReason,...E!=null?{messageMetadata:E}:{}});break}case"abort":{v.enqueue(d);break}case"tool-input-end":break;case"raw":break;default:{const I=w;throw new Error(`Unknown chunk type: ${I}`)}}E!=null&&w!=="start"&&w!=="finish"&&v.enqueue({type:"message-metadata",messageMetadata:E})}}));return jr(Qy({stream:p,messageId:u??(t==null?void 0:t()),originalMessages:e,onFinish:r,onError:l}))}pipeUIMessageStreamToResponse(e,{originalMessages:t,generateMessageId:r,onFinish:n,messageMetadata:a,sendReasoning:o,sendSources:s,sendFinish:i,sendStart:l,onError:u,...c}={}){ev({response:e,stream:this.toUIMessageStream({originalMessages:t,generateMessageId:r,onFinish:n,messageMetadata:a,sendReasoning:o,sendSources:s,sendFinish:i,sendStart:l,onError:u}),...c})}pipeTextStreamToResponse(e,t){By({response:e,textStream:this.textStream,...t})}toUIMessageStreamResponse({originalMessages:e,generateMessageId:t,onFinish:r,messageMetadata:n,sendReasoning:a,sendSources:o,sendFinish:s,sendStart:i,onError:l,...u}={}){return Vy({stream:this.toUIMessageStream({originalMessages:e,generateMessageId:t,onFinish:r,messageMetadata:n,sendReasoning:a,sendSources:o,sendFinish:s,sendStart:i,onError:l}),...u})}toTextStreamResponse(e){return Gy({textStream:this.textStream,...e})}};Nr({prefix:"aiobj",size:24});Nr({prefix:"aiobj",size:24});const uv=`You are an expert language translator specializing in preserving data structure integrity while translating content.
|
|
77
77
|
|
|
78
78
|
TASK: Translate all text content within the provided JSON structure to the target language.
|
|
79
79
|
|
|
@@ -107,7 +107,7 @@ REQUIREMENTS (Common):
|
|
|
107
107
|
6. Ensure translated text fits naturally within the original context
|
|
108
108
|
7. Keep numbers, dates, and technical terms unchanged unless culturally appropriate to translate
|
|
109
109
|
|
|
110
|
-
OUTPUT FORMAT: Valid JSON only, ready to be parsed directly.`,
|
|
110
|
+
OUTPUT FORMAT: Valid JSON only, ready to be parsed directly.`,cv=`You are an expert language translator and content editor specializing in preserving data structure integrity while modifying content.
|
|
111
111
|
|
|
112
112
|
TASK: Modify content within the provided JSON structure according to user request for the target language.
|
|
113
113
|
|
|
@@ -147,7 +147,7 @@ CRITICAL REQUIREMENTS (Content Modification):
|
|
|
147
147
|
5. Preserve all other language variants and properties unchanged
|
|
148
148
|
6. Apply changes consistently across related properties when applicable
|
|
149
149
|
|
|
150
|
-
OUTPUT FORMAT: Valid JSON only, ready to be parsed directly.`,
|
|
150
|
+
OUTPUT FORMAT: Valid JSON only, ready to be parsed directly.`,Xo=`
|
|
151
151
|
🚨 CRITICAL FORMAT REQUIREMENT: Your response MUST start with '--START--' immediately. NEVER include any text, thinking, or reasoning before '--START--'. 🚨
|
|
152
152
|
|
|
153
153
|
|
|
@@ -350,11 +350,11 @@ Format:
|
|
|
350
350
|
- NEVER break the format.
|
|
351
351
|
- NEVER place ANYTHING before '--START--'.
|
|
352
352
|
- The output must always begin with '--START--' and end with '--END--'.
|
|
353
|
-
`.trim();function
|
|
354
|
-
`);let F;for(;(F=s.exec(
|
|
355
|
-
`),L=L.replace(/\\r/g,"\r")),O[ie]=L}return O}function l(y){y=y||{};const O=E(y);y.path=O;const D=x.configDotenv(y);if(!D.parsed){const X=new Error(`MISSING_DATA: Cannot parse ${O} for an unknown reason`);throw X.code="MISSING_DATA",X}const F=d(y).split(","),ie=F.length;let L;for(let X=0;X<ie;X++)try{const Q=F[X].trim(),le=v(D,Q);L=x.decrypt(le.ciphertext,le.key);break}catch(Q){if(X+1>=ie)throw Q}return x.parse(L)}function u(y){console.log(`[dotenv@${o}][WARN] ${y}`)}function c(y){console.log(`[dotenv@${o}][DEBUG] ${y}`)}function p(y){console.log(`[dotenv@${o}] ${y}`)}function d(y){return y&&y.DOTENV_KEY&&y.DOTENV_KEY.length>0?y.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function v(y,O){let D;try{D=new URL(O)}catch(Q){if(Q.code==="ERR_INVALID_URL"){const le=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw le.code="INVALID_DOTENV_KEY",le}throw Q}const F=D.password;if(!F){const Q=new Error("INVALID_DOTENV_KEY: Missing key part");throw Q.code="INVALID_DOTENV_KEY",Q}const ie=D.searchParams.get("environment");if(!ie){const Q=new Error("INVALID_DOTENV_KEY: Missing environment part");throw Q.code="INVALID_DOTENV_KEY",Q}const L=`DOTENV_VAULT_${ie.toUpperCase()}`,X=y.parsed[L];if(!X){const Q=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${L} in your .env.vault file.`);throw Q.code="NOT_FOUND_DOTENV_ENVIRONMENT",Q}return{ciphertext:X,key:F}}function E(y){let O=null;if(y&&y.path&&y.path.length>0)if(Array.isArray(y.path))for(const D of y.path)e.existsSync(D)&&(O=D.endsWith(".vault")?D:`${D}.vault`);else O=y.path.endsWith(".vault")?y.path:`${y.path}.vault`;else O=t.resolve(process.cwd(),".env.vault");return e.existsSync(O)?O:null}function w(y){return y[0]==="~"?t.join(r.homedir(),y.slice(1)):y}function I(y){const O=!!(y&&y.debug),D=y&&"quiet"in y?y.quiet:!0;(O||!D)&&p("Loading env from encrypted .env.vault");const F=x._parseVault(y);let ie=process.env;return y&&y.processEnv!=null&&(ie=y.processEnv),x.populate(ie,F,y),{parsed:F}}function P(y){const O=t.resolve(process.cwd(),".env");let D="utf8";const F=!!(y&&y.debug),ie=y&&"quiet"in y?y.quiet:!0;y&&y.encoding?D=y.encoding:F&&c("No encoding is specified. UTF-8 is used by default");let L=[O];if(y&&y.path)if(!Array.isArray(y.path))L=[w(y.path)];else{L=[];for(const Oe of y.path)L.push(w(Oe))}let X;const Q={};for(const Oe of L)try{const Te=x.parse(e.readFileSync(Oe,{encoding:D}));x.populate(Q,Te,y)}catch(Te){F&&c(`Failed to load ${Oe} ${Te.message}`),X=Te}let le=process.env;if(y&&y.processEnv!=null&&(le=y.processEnv),x.populate(le,Q,y),F||!ie){const Oe=Object.keys(Q).length,Te=[];for(const ct of L)try{const Fe=t.relative(process.cwd(),ct);Te.push(Fe)}catch(Fe){F&&c(`Failed to load ${ct} ${Fe.message}`),X=Fe}p(`injecting env (${Oe}) from ${Te.join(",")}`)}return X?{parsed:Q,error:X}:{parsed:Q}}function C(y){if(d(y).length===0)return x.configDotenv(y);const O=E(y);return O?x._configVault(y):(u(`You set DOTENV_KEY but you are missing a .env.vault file at ${O}. Did you forget to build it?`),x.configDotenv(y))}function h(y,O){const D=Buffer.from(O.slice(-64),"hex");let F=Buffer.from(y,"base64");const ie=F.subarray(0,12),L=F.subarray(-16);F=F.subarray(12,-16);try{const X=n.createDecipheriv("aes-256-gcm",D,ie);return X.setAuthTag(L),`${X.update(F)}${X.final()}`}catch(X){const Q=X instanceof RangeError,le=X.message==="Invalid key length",Oe=X.message==="Unsupported state or unable to authenticate data";if(Q||le){const Te=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw Te.code="INVALID_DOTENV_KEY",Te}else if(Oe){const Te=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw Te.code="DECRYPTION_FAILED",Te}else throw X}}function z(y,O,D={}){const F=!!(D&&D.debug),ie=!!(D&&D.override);if(typeof O!="object"){const L=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw L.code="OBJECT_REQUIRED",L}for(const L of Object.keys(O))Object.prototype.hasOwnProperty.call(y,L)?(ie===!0&&(y[L]=O[L]),F&&c(ie===!0?`"${L}" is already defined and WAS overwritten`:`"${L}" is already defined and was NOT overwritten`)):y[L]=O[L]}const x={configDotenv:P,_configVault:I,_parseVault:l,config:C,decrypt:h,parse:i,populate:z};return Qe.exports.configDotenv=x.configDotenv,Qe.exports._configVault=x._configVault,Qe.exports._parseVault=x._parseVault,Qe.exports.config=x.config,Qe.exports.decrypt=x.decrypt,Qe.exports.parse=x.parse,Qe.exports.populate=x.populate,Qe.exports=x,Qe.exports}var gv=tu();const mv=su.getDefaultExportFromCjs(gv),hv=f.pgSequence("app_pages_metadata_id_seq",{startWith:"1",increment:"1",minValue:"1",maxValue:"9223372036854775807",cache:"1",cycle:!1}),yv=f.pgSequence("webhook_events_id_seq",{startWith:"1",increment:"1",minValue:"1",maxValue:"9223372036854775807",cache:"1",cycle:!1}),vv=f.pgTable("app_assets",{id:f.uuid().defaultRandom().primaryKey().notNull(),app:f.uuid(),name:f.text(),description:f.text(),url:f.text(),size:f.text(),folderId:f.text(),thumbnailUrl:f.text(),duration:f.numeric(),format:f.text(),width:f.numeric(),height:f.numeric(),createdBy:f.text(),createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),type:f.text(),updatedAt:f.timestamp({withTimezone:!0,mode:"string"})},e=>[f.foreignKey({columns:[e.app],foreignColumns:[me.id],name:"app_assets_app_fkey"})]),ge=f.pgTable("app_pages_online",{createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),slug:f.text().notNull(),lang:f.text().default("").notNull(),seo:f.jsonb().default({}),app:f.uuid().notNull(),id:f.uuid().primaryKey().notNull(),name:f.text().notNull(),primaryPage:f.uuid(),blocks:f.jsonb().default([]),currentEditor:f.text(),changes:f.jsonb(),partialBlocks:f.text(),links:f.text(),online:f.boolean().default(!0),pageType:f.text(),parent:f.uuid(),lastSaved:f.timestamp({withTimezone:!0,mode:"string"}),dynamic:f.boolean().default(!1),libRefId:f.uuid(),dynamicSlugCustom:f.text().default(""),metadata:f.jsonb().default({}),jsonld:f.jsonb().default({}),globalJsonLds:f.jsonb().default([]),designTokens:f.jsonb()},e=>[f.foreignKey({columns:[e.app],foreignColumns:[me.id],name:"app_pages_online_app_fkey"})]),me=f.pgTable("apps",{id:f.uuid().defaultRandom().primaryKey().notNull(),createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),name:f.text(),user:f.text(),settings:f.jsonb().default({}),theme:f.jsonb().default({}),fallbackLang:f.text().default("en"),languages:f.jsonb().default([]),changes:f.jsonb(),configData:f.jsonb(),deletedAt:f.timestamp({withTimezone:!0,mode:"string"}),client:f.uuid(),designTokens:f.jsonb().default({})}),pr=f.pgTable("apps_online",{id:f.uuid().primaryKey().notNull(),createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),name:f.text(),user:f.text(),settings:f.jsonb().default({}),theme:f.jsonb().default({}),fallbackLang:f.text().default("en"),languages:f.jsonb().default([]),changes:f.jsonb(),configData:f.jsonb(),apiKey:f.text(),deletedAt:f.timestamp({withTimezone:!0,mode:"string"}),client:f.uuid(),designTokens:f.jsonb().default({})}),K=f.pgTable("libraries",{id:f.uuid().defaultRandom().primaryKey().notNull(),createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),name:f.text(),app:f.uuid(),type:f.text(),status:f.text().default("active").notNull(),client:f.uuid()},e=>[f.foreignKey({columns:[e.app],foreignColumns:[me.id],name:"libraries_app_fkey"})]),_v=f.pgTable("app_form_submissions",{id:f.uuid().defaultRandom().primaryKey().notNull(),createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),app:f.uuid(),formData:f.json(),additionalData:f.json(),formName:f.text().default(""),pageUrl:f.text()},e=>[f.foreignKey({columns:[e.app],foreignColumns:[me.id],name:"app_form_submissions_app_fkey"})]),g=f.pgTable("app_pages",{createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),slug:f.text().notNull(),lang:f.text().default("").notNull(),seo:f.jsonb().default({}),app:f.uuid().notNull(),id:f.uuid().defaultRandom().primaryKey().notNull(),name:f.text().notNull(),primaryPage:f.uuid(),blocks:f.jsonb().default([]),currentEditor:f.text(),changes:f.jsonb(),online:f.boolean().default(!1),parent:f.uuid(),pageType:f.text(),lastSaved:f.timestamp({withTimezone:!0,mode:"string"}),dynamic:f.boolean().default(!1),libRefId:f.uuid(),dynamicSlugCustom:f.text().default(""),metadata:f.jsonb().default({}),jsonld:f.jsonb().default({}),globalJsonLds:f.jsonb().default([]),links:f.text(),partialBlocks:f.text(),designTokens:f.jsonb()},e=>[f.foreignKey({columns:[e.app],foreignColumns:[me.id],name:"app_pages_app_fkey"}),f.foreignKey({columns:[e.parent],foreignColumns:[e.id],name:"app_pages_parent_fkey"})]),Se=f.pgTable("app_pages_revisions",{createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),slug:f.text().notNull(),lang:f.text().default("").notNull(),seo:f.jsonb().default({}),app:f.uuid().notNull(),id:f.uuid().notNull(),name:f.text().notNull(),primaryPage:f.uuid(),blocks:f.jsonb().default([]),currentEditor:f.text(),changes:f.jsonb(),partialBlocks:f.text(),links:f.text(),online:f.boolean().default(!0),pageType:f.text(),parent:f.uuid(),lastSaved:f.timestamp({withTimezone:!0,mode:"string"}),dynamic:f.boolean().default(!1),uid:f.uuid().defaultRandom().primaryKey().notNull(),type:f.text(),libRefId:f.uuid(),dynamicSlugCustom:f.text().default(""),metadata:f.jsonb().default({}),jsonld:f.jsonb().default({}),globalJsonLds:f.jsonb().default([]),designTokens:f.jsonb()},e=>[f.foreignKey({columns:[e.app],foreignColumns:[me.id],name:"app_pages_revisions_app_fkey"})]),wv=f.pgTable("app_users",{id:f.uuid().defaultRandom().primaryKey().notNull(),createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),user:f.text(),app:f.uuid(),role:f.text(),permissions:f.jsonb(),status:f.text().default("active").notNull()},e=>[f.foreignKey({columns:[e.app],foreignColumns:[me.id],name:"app_users_app_fkey"})]),te=f.pgTable("library_templates",{id:f.uuid().defaultRandom().primaryKey().notNull(),createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),user:f.text(),name:f.text(),description:f.text(),pageId:f.uuid(),pageType:f.text(),library:f.uuid(),preview:f.text()},e=>[f.foreignKey({columns:[e.library],foreignColumns:[K.id],name:"library_templates_library_fkey"})]),ne=f.pgTable("library_items",{id:f.uuid().defaultRandom().primaryKey().notNull(),createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),library:f.uuid(),name:f.text(),description:f.text(),blocks:f.jsonb().default([]),preview:f.text(),group:f.text().default("general"),user:f.text(),html:f.text()},e=>[f.foreignKey({columns:[e.library],foreignColumns:[K.id],name:"library_items_library_fkey"})]),ha=f.pgTable("ai_logs",{id:f.bigint({mode:"number"}).primaryKey().generatedByDefaultAsIdentity({name:"ai_logs_id_seq",startWith:1,increment:1,minValue:1,maxValue:9223372036854776e3,cache:1}),createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),model:f.text(),totalDuration:f.numeric(),error:f.text(),totalTokens:f.numeric(),tokenUsage:f.jsonb(),user:f.text(),client:f.uuid().defaultRandom(),cost:f.doublePrecision().default(m.sql`'0'`),prompt:f.text(),app:f.uuid()},e=>[f.foreignKey({columns:[e.app],foreignColumns:[me.id],name:"ai_logs_app_fkey"})]),ru=Object.freeze(Object.defineProperty({__proto__:null,aiLogs:ha,appAssets:vv,appFormSubmissions:_v,appPages:g,appPagesMetadataIdSeq:hv,appPagesOnline:ge,appPagesRevisions:Se,appUsers:wv,apps:me,appsOnline:pr,libraries:K,libraryItems:ne,libraryTemplates:te,webhookEventsIdSeq:yv},Symbol.toStringTag,{value:"Module"}));mv.config();const nu=process.env.CHAIBUILDER_DATABASE_URL;if(!nu)throw new Error("Database not configured. Please set CHAIBUILDER_DATABASE_URL environment variable.");const Tv=du(nu,{max:10}),S=cu.drizzle(Tv,{schema:ru});async function N(e){try{return{data:await e(),error:null}}catch(t){return{data:null,error:t}}}const bv=e=>{var t;return((t=pu.AI_MODELS.find(r=>r.id===e))==null?void 0:t.multiplier)||1};async function Ev({userId:e,startTime:t,error:r,model:n,prompt:a,appId:o}){var c;const s=String(r),i=t>0?new Date().getTime()-t:0,l={model:n,totalDuration:String(i),error:s,totalTokens:"0",tokenUsage:{},cost:0,prompt:a,user:e,client:((c=process==null?void 0:process.env)==null?void 0:c.CHAIBUILDER_CLIENT_ID)||null,app:o},{error:u}=await N(()=>S.insert(ha).values(l));u&&console.error("Error logging AI request error:",u)}async function Iv({userId:e,startTime:t,arg:r,prompt:n,model:a,appId:o}){var d,v,E;const s=r==null?void 0:r.totalUsage,i=(v=(d=r==null?void 0:r.providerMetadata)==null?void 0:d.gateway)==null?void 0:v.cost,l=t>0?Math.floor(new Date().getTime()-t):0,u=n.indexOf("USER REQUEST");n=n.substring(u).trim();const c={model:a,totalDuration:String(l),error:null,totalTokens:String(Math.round(((s==null?void 0:s.totalTokens)??0)*bv(a))),tokenUsage:s,cost:i,prompt:n,user:e,client:((E=process==null?void 0:process.env)==null?void 0:E.CHAIBUILDER_CLIENT_ID)||null,app:o},{error:p}=await N(()=>S.insert(ha).values(c));p&&console.error("Error logging AI request:",p)}class b extends Error{constructor(t,r="ACTION_ERROR",n){super(t),this.code=r,this.error=n,this.name="ActionError",n&&console.error(n)}}class Z{constructor(){Ie(this,"context",null)}validate(t){if(!t)return!0;try{return this.getValidationSchema().parse(t),!0}catch{return!1}}getValidationErrors(t){if(!t)return null;try{return this.getValidationSchema().parse(t),null}catch(r){return r instanceof _.z.ZodError?r.issues.map(a=>`${a.path.join(".")}: ${a.message}`).join(", "):null}}setContext(t){this.context=t}handleError(t){if(t instanceof b)throw t;if(t instanceof _.z.ZodError){const r=t.issues.map(n=>`${n.path.join(".")}: ${n.message}`).join(", ");throw new b(`Validation failed: ${r}`,"VALIDATION_ERROR")}else{const r=t instanceof Error?t.message:"Unknown error";throw new b(r,"ACTION_ERROR")}}}class Sv extends Z{getValidationSchema(){return _.z.any()}async execute(t){if(!this.context)throw new Error("Context not set");const r=new Date().getTime(),{userId:n,appId:a}=this.context,o=new dv({onFinish:l=>{var u,c;try{Iv({arg:l,prompt:((c=(u=t.messages)==null?void 0:u[t.messages.length-1])==null?void 0:c.content)||"",userId:n,model:t.model||"",startTime:r,appId:a})}catch(p){console.error("Error logging AI request:",p)}},onError:l=>{var u,c;try{Ev({error:l,userId:n,startTime:r,model:t.model||"",prompt:((c=(u=t.messages)==null?void 0:u[t.messages.length-1])==null?void 0:c.content)||"",appId:a})}catch(p){console.error("Error logging AI request error:",p)}}}),s={messages:t.messages||[],image:t.image,model:t.model,initiator:t.type||null};return{_streamingResponse:!0,_streamResult:await o.handleRequest(s)}}}class Nv extends Z{getValidationSchema(){return _.z.object({name:_.z.string().min(1),slug:_.z.string(),pageType:_.z.string(),parent:_.z.string().nullable().optional(),lang:_.z.string().optional(),primaryPage:_.z.string().nullable().optional(),dynamic:_.z.boolean().optional(),hasSlug:_.z.boolean().optional(),template:_.z.string().optional(),seo:_.z.record(_.z.string(),_.z.any()).optional(),jsonLD:_.z.record(_.z.string(),_.z.any()).optional(),dynamicSlugCustom:_.z.string().optional()}).refine(t=>t.lang&&t.lang!==""?!!t.primaryPage:!0,{message:"primaryPage is required when lang option is not empty",path:["primaryPage"]})}async execute(t){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context;if((t.hasSlug??t.pageType!=="global")&&t.slug&&await this.doesSlugExist(t.slug,t.pageType))throw new b("Slug already exists","SLUG_ALREADY_USED");let a=[];t.template&&(a=await this.getTemplateBlocks(t.template,r));const o={app:r,name:t.name,slug:t.slug,pageType:t.pageType,parent:t.parent??null,lang:t.primaryPage?t.lang??"":"",primaryPage:t.primaryPage??null,dynamic:t.dynamic??!1,dynamicSlugCustom:t.dynamicSlugCustom??"",blocks:a,seo:t.seo??{title:t.name,jsonLD:"",noIndex:!1,ogImage:"",ogTitle:"",noFollow:"",description:"",searchTitle:"",cononicalUrl:"",ogDescription:"",searchDescription:""},jsonLD:t.jsonLD??{},online:!1,currentEditor:null,changes:null,libRefId:null,lastSaved:null},{data:s,error:i}=await N(()=>S.insert(g).values(o).returning({id:g.id,name:g.name,slug:g.slug,lang:g.lang,pageType:g.pageType,parent:g.parent,online:g.online,primaryPage:g.primaryPage}));if(i)throw new b("Failed to create page","ERROR_CREATING_PAGE",i);if(!s||s.length===0)throw new b("Failed to create page","INSERT_FAILED");const l=s[0];return{page:j.omit(l.primaryPage?{...l,id:l.primaryPage}:l,["primaryPage"])}}async doesSlugExist(t,r){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:n}=this.context,{data:a,error:o}=await N(()=>S.query.appPages.findFirst({where:m.and(m.eq(g.slug,t),m.eq(g.pageType,r),m.eq(g.app,n)),columns:{id:!0}}));if(o)throw new b(`${o.message}`,"SLUG_CHECK_FAILED");return!!a}async getTemplateBlocks(t,r){const{data:n,error:a}=await N(()=>S.select({template:te,library:{id:K.id,app:K.app,name:K.name}}).from(te).leftJoin(K,m.eq(te.library,K.id)).where(m.eq(te.id,t)).limit(1).then(p=>p[0]));if(a)throw new b(`Failed to fetch template: ${a.message||"Unknown database error"}`,"ERROR_GETTING_TEMPLATE_BLOCKS",a);if(!n||!n.template||!n.library)throw new b(`Template not found with ID: ${t}`,"TEMPLATE_NOT_FOUND");const o=n.template,s=n.library,{data:i,error:l}=await N(()=>S.query.appPages.findFirst({where:m.eq(g.id,o.pageId),columns:{blocks:!0}}));if(l)throw new b(`Failed to fetch template blocks: ${l.message||"Unknown database error"}`,"ERROR_GETTING_TEMPLATE_BLOCKS",l);if(!i)throw new b(`Template page not found with ID: ${o.pageId}`,"TEMPLATE_PAGE_NOT_FOUND");let u=i.blocks||[];if(u=u.map(p=>p._type==="GlobalBlock"&&!j.isEmpty(p.globalBlock)?{...p,_type:"PartialBlock",partialBlockId:p.globalBlock}:p),!(s.app===r)){const p=s.name||"",d=u.filter(E=>E._type==="PartialBlock"&&!j.isEmpty(E.partialBlockId)),v=await Promise.all(d.map(({partialBlockId:E})=>this.copyPartialBlockFromTemplate(E,p,r)));u=u.map(E=>{const w=v.find(I=>(I==null?void 0:I.libRefId)===E.partialBlockId);return w&&(E._name=`${p} - ${E._name}`,E.partialBlockId=w.id),E})}return u}async copyPartialBlockFromTemplate(t,r,n){const{data:a,error:o}=await N(()=>S.query.appPages.findFirst({where:m.eq(g.id,t)}));if(o||!a)return console.error("Failed to fetch partial block:",o),null;const s={...a,id:void 0,app:n,libRefId:t,name:`${r} - ${a.name}`,createdAt:void 0,online:!1,currentEditor:null,changes:null,lastSaved:null},{data:i,error:l}=await N(()=>S.insert(g).values(s).returning({id:g.id,libRefId:g.libRefId}));if(l||!i||i.length===0)return console.error("Failed to create partial block copy:",l),null;const u=i[0];return{id:u.id,libRefId:u.libRefId||t}}}class Av extends Z{getValidationSchema(){return _.z.object({id:_.z.string().min(1)})}async execute(t){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{id:r}=t,{error:n}=await N(()=>S.delete(ne).where(m.eq(ne.id,r)));if(n)throw new b("Failed to delete library item","DELETE_LIBRARY_ITEM_FAILED",n);return{success:!0}}}const re=(e,t)=>(console.error(t),new Error(e));class Ir{constructor(t,r=!1){Ie(this,"appId");Ie(this,"enableLogging");this.appId=t,this.enableLogging=r}async getPagesTree(){const{data:t,error:r}=await N(()=>S.select({id:g.id,name:g.name,slug:g.slug,pageType:g.pageType,primaryPage:g.primaryPage,parent:g.parent,lang:g.lang,dynamic:g.dynamic}).from(g).where(m.eq(g.app,this.appId)));if(r)throw re("ERROR_GETTING_PAGES",r);const n=(t==null?void 0:t.filter(i=>i.primaryPage===null))||[],a=(t==null?void 0:t.filter(i=>i.primaryPage!==null))||[],o=this.buildPrimaryTree(n);this.enableLogging&&(console.log(`
|
|
353
|
+
`.trim();function tu(e=null){if(e)switch(e){case"TRANSLATE_CONTENT":return uv;case"UPDATE_CONTENT":return cv;default:return Xo}return Xo}const dv="google/gemini-2.5-flash";class pv{constructor(t){Ee(this,"model",dv);Ee(this,"temperature",.7);this.options=t,this.model=(t==null?void 0:t.model)??this.model}async handleRequest(t,r){var d,v;const{messages:n,image:a,initiator:o=null,model:s}=t,i=s||this.model,l=n.filter(E=>E.role!=="system"),u=l[l.length-1],c=a?[...l.slice(0,-1),{role:"user",content:[{type:"text",text:u.content},{type:"image",image:a}]}]:n,p=sv({model:i,system:tu(o),messages:c,temperature:this.temperature,onFinish:((d=this.options)==null?void 0:d.onFinish)??j.noop,onError:((v=this.options)==null?void 0:v.onError)??j.noop});return r&&p.pipeTextStreamToResponse(r),p}isConfigured(){return!0}}var Qe={exports:{}};const fv="16.6.1",gv={version:fv};var Qo;function ru(){if(Qo)return Qe.exports;Qo=1;const e=lu,t=uu,r=cu,n=ss,o=gv.version,s=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function i(y){const O={};let z=y.toString();z=z.replace(/\r\n?/mg,`
|
|
354
|
+
`);let F;for(;(F=s.exec(z))!=null;){const se=F[1];let L=F[2]||"";L=L.trim();const X=L[0];L=L.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),X==='"'&&(L=L.replace(/\\n/g,`
|
|
355
|
+
`),L=L.replace(/\\r/g,"\r")),O[se]=L}return O}function l(y){y=y||{};const O=E(y);y.path=O;const z=R.configDotenv(y);if(!z.parsed){const X=new Error(`MISSING_DATA: Cannot parse ${O} for an unknown reason`);throw X.code="MISSING_DATA",X}const F=d(y).split(","),se=F.length;let L;for(let X=0;X<se;X++)try{const Q=F[X].trim(),le=v(z,Q);L=R.decrypt(le.ciphertext,le.key);break}catch(Q){if(X+1>=se)throw Q}return R.parse(L)}function u(y){console.log(`[dotenv@${o}][WARN] ${y}`)}function c(y){console.log(`[dotenv@${o}][DEBUG] ${y}`)}function p(y){console.log(`[dotenv@${o}] ${y}`)}function d(y){return y&&y.DOTENV_KEY&&y.DOTENV_KEY.length>0?y.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function v(y,O){let z;try{z=new URL(O)}catch(Q){if(Q.code==="ERR_INVALID_URL"){const le=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw le.code="INVALID_DOTENV_KEY",le}throw Q}const F=z.password;if(!F){const Q=new Error("INVALID_DOTENV_KEY: Missing key part");throw Q.code="INVALID_DOTENV_KEY",Q}const se=z.searchParams.get("environment");if(!se){const Q=new Error("INVALID_DOTENV_KEY: Missing environment part");throw Q.code="INVALID_DOTENV_KEY",Q}const L=`DOTENV_VAULT_${se.toUpperCase()}`,X=y.parsed[L];if(!X){const Q=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${L} in your .env.vault file.`);throw Q.code="NOT_FOUND_DOTENV_ENVIRONMENT",Q}return{ciphertext:X,key:F}}function E(y){let O=null;if(y&&y.path&&y.path.length>0)if(Array.isArray(y.path))for(const z of y.path)e.existsSync(z)&&(O=z.endsWith(".vault")?z:`${z}.vault`);else O=y.path.endsWith(".vault")?y.path:`${y.path}.vault`;else O=t.resolve(process.cwd(),".env.vault");return e.existsSync(O)?O:null}function w(y){return y[0]==="~"?t.join(r.homedir(),y.slice(1)):y}function I(y){const O=!!(y&&y.debug),z=y&&"quiet"in y?y.quiet:!0;(O||!z)&&p("Loading env from encrypted .env.vault");const F=R._parseVault(y);let se=process.env;return y&&y.processEnv!=null&&(se=y.processEnv),R.populate(se,F,y),{parsed:F}}function P(y){const O=t.resolve(process.cwd(),".env");let z="utf8";const F=!!(y&&y.debug),se=y&&"quiet"in y?y.quiet:!0;y&&y.encoding?z=y.encoding:F&&c("No encoding is specified. UTF-8 is used by default");let L=[O];if(y&&y.path)if(!Array.isArray(y.path))L=[w(y.path)];else{L=[];for(const Oe of y.path)L.push(w(Oe))}let X;const Q={};for(const Oe of L)try{const we=R.parse(e.readFileSync(Oe,{encoding:z}));R.populate(Q,we,y)}catch(we){F&&c(`Failed to load ${Oe} ${we.message}`),X=we}let le=process.env;if(y&&y.processEnv!=null&&(le=y.processEnv),R.populate(le,Q,y),F||!se){const Oe=Object.keys(Q).length,we=[];for(const ct of L)try{const Fe=t.relative(process.cwd(),ct);we.push(Fe)}catch(Fe){F&&c(`Failed to load ${ct} ${Fe.message}`),X=Fe}p(`injecting env (${Oe}) from ${we.join(",")}`)}return X?{parsed:Q,error:X}:{parsed:Q}}function C(y){if(d(y).length===0)return R.configDotenv(y);const O=E(y);return O?R._configVault(y):(u(`You set DOTENV_KEY but you are missing a .env.vault file at ${O}. Did you forget to build it?`),R.configDotenv(y))}function h(y,O){const z=Buffer.from(O.slice(-64),"hex");let F=Buffer.from(y,"base64");const se=F.subarray(0,12),L=F.subarray(-16);F=F.subarray(12,-16);try{const X=n.createDecipheriv("aes-256-gcm",z,se);return X.setAuthTag(L),`${X.update(F)}${X.final()}`}catch(X){const Q=X instanceof RangeError,le=X.message==="Invalid key length",Oe=X.message==="Unsupported state or unable to authenticate data";if(Q||le){const we=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw we.code="INVALID_DOTENV_KEY",we}else if(Oe){const we=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw we.code="DECRYPTION_FAILED",we}else throw X}}function D(y,O,z={}){const F=!!(z&&z.debug),se=!!(z&&z.override);if(typeof O!="object"){const L=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw L.code="OBJECT_REQUIRED",L}for(const L of Object.keys(O))Object.prototype.hasOwnProperty.call(y,L)?(se===!0&&(y[L]=O[L]),F&&c(se===!0?`"${L}" is already defined and WAS overwritten`:`"${L}" is already defined and was NOT overwritten`)):y[L]=O[L]}const R={configDotenv:P,_configVault:I,_parseVault:l,config:C,decrypt:h,parse:i,populate:D};return Qe.exports.configDotenv=R.configDotenv,Qe.exports._configVault=R._configVault,Qe.exports._parseVault=R._parseVault,Qe.exports.config=R.config,Qe.exports.decrypt=R.decrypt,Qe.exports.parse=R.parse,Qe.exports.populate=R.populate,Qe.exports=R,Qe.exports}var mv=ru();const hv=iu.getDefaultExportFromCjs(mv),yv=f.pgSequence("app_pages_metadata_id_seq",{startWith:"1",increment:"1",minValue:"1",maxValue:"9223372036854775807",cache:"1",cycle:!1}),vv=f.pgSequence("webhook_events_id_seq",{startWith:"1",increment:"1",minValue:"1",maxValue:"9223372036854775807",cache:"1",cycle:!1}),_v=f.pgTable("app_assets",{id:f.uuid().defaultRandom().primaryKey().notNull(),app:f.uuid(),name:f.text(),description:f.text(),url:f.text(),size:f.text(),folderId:f.text(),thumbnailUrl:f.text(),duration:f.numeric(),format:f.text(),width:f.numeric(),height:f.numeric(),createdBy:f.text(),createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),type:f.text(),updatedAt:f.timestamp({withTimezone:!0,mode:"string"})},e=>[f.foreignKey({columns:[e.app],foreignColumns:[Ae.id],name:"app_assets_app_fkey"})]),ge=f.pgTable("app_pages_online",{createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),slug:f.text().notNull(),lang:f.text().default("").notNull(),seo:f.jsonb().default({}),app:f.uuid().notNull(),id:f.uuid().primaryKey().notNull(),name:f.text().notNull(),primaryPage:f.uuid(),blocks:f.jsonb().default([]),currentEditor:f.text(),changes:f.jsonb(),partialBlocks:f.text(),links:f.text(),online:f.boolean().default(!0),pageType:f.text(),parent:f.uuid(),lastSaved:f.timestamp({withTimezone:!0,mode:"string"}),dynamic:f.boolean().default(!1),libRefId:f.uuid(),dynamicSlugCustom:f.text().default(""),metadata:f.jsonb().default({}),jsonld:f.jsonb().default({}),globalJsonLds:f.jsonb().default([]),designTokens:f.jsonb()},e=>[f.foreignKey({columns:[e.app],foreignColumns:[Ae.id],name:"app_pages_online_app_fkey"})]),Ae=f.pgTable("apps",{id:f.uuid().defaultRandom().primaryKey().notNull(),createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),name:f.text(),user:f.text(),settings:f.jsonb().default({}),theme:f.jsonb().default({}),fallbackLang:f.text().default("en"),languages:f.jsonb().default([]),changes:f.jsonb(),deletedAt:f.timestamp({withTimezone:!0,mode:"string"}),client:f.uuid(),designTokens:f.jsonb().default({})}),fr=f.pgTable("apps_online",{id:f.uuid().primaryKey().notNull(),createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),name:f.text(),user:f.text(),settings:f.jsonb().default({}),theme:f.jsonb().default({}),fallbackLang:f.text().default("en"),languages:f.jsonb().default([]),changes:f.jsonb(),apiKey:f.text(),deletedAt:f.timestamp({withTimezone:!0,mode:"string"}),client:f.uuid(),designTokens:f.jsonb().default({})}),K=f.pgTable("libraries",{id:f.uuid().defaultRandom().primaryKey().notNull(),createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),name:f.text(),app:f.uuid(),type:f.text(),status:f.text().default("active").notNull(),client:f.uuid()},e=>[f.foreignKey({columns:[e.app],foreignColumns:[Ae.id],name:"libraries_app_fkey"})]),wv=f.pgTable("app_form_submissions",{id:f.uuid().defaultRandom().primaryKey().notNull(),createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),app:f.uuid(),formData:f.json(),additionalData:f.json(),formName:f.text().default(""),pageUrl:f.text()},e=>[f.foreignKey({columns:[e.app],foreignColumns:[Ae.id],name:"app_form_submissions_app_fkey"})]),g=f.pgTable("app_pages",{createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),slug:f.text().notNull(),lang:f.text().default("").notNull(),seo:f.jsonb().default({}),app:f.uuid().notNull(),id:f.uuid().defaultRandom().primaryKey().notNull(),name:f.text().notNull(),primaryPage:f.uuid(),blocks:f.jsonb().default([]),currentEditor:f.text(),changes:f.jsonb(),online:f.boolean().default(!1),parent:f.uuid(),pageType:f.text(),lastSaved:f.timestamp({withTimezone:!0,mode:"string"}),dynamic:f.boolean().default(!1),libRefId:f.uuid(),dynamicSlugCustom:f.text().default(""),metadata:f.jsonb().default({}),jsonld:f.jsonb().default({}),globalJsonLds:f.jsonb().default([]),links:f.text(),partialBlocks:f.text(),designTokens:f.jsonb()},e=>[f.foreignKey({columns:[e.app],foreignColumns:[Ae.id],name:"app_pages_app_fkey"}),f.foreignKey({columns:[e.parent],foreignColumns:[e.id],name:"app_pages_parent_fkey"})]),Ie=f.pgTable("app_pages_revisions",{createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),slug:f.text().notNull(),lang:f.text().default("").notNull(),seo:f.jsonb().default({}),app:f.uuid().notNull(),id:f.uuid().notNull(),name:f.text().notNull(),primaryPage:f.uuid(),blocks:f.jsonb().default([]),currentEditor:f.text(),changes:f.jsonb(),partialBlocks:f.text(),links:f.text(),online:f.boolean().default(!0),pageType:f.text(),parent:f.uuid(),lastSaved:f.timestamp({withTimezone:!0,mode:"string"}),dynamic:f.boolean().default(!1),uid:f.uuid().defaultRandom().primaryKey().notNull(),type:f.text(),libRefId:f.uuid(),dynamicSlugCustom:f.text().default(""),metadata:f.jsonb().default({}),jsonld:f.jsonb().default({}),globalJsonLds:f.jsonb().default([]),designTokens:f.jsonb()},e=>[f.foreignKey({columns:[e.app],foreignColumns:[Ae.id],name:"app_pages_revisions_app_fkey"})]),cr=f.pgTable("app_users",{id:f.uuid().defaultRandom().primaryKey().notNull(),createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),user:f.text(),app:f.uuid(),role:f.text(),permissions:f.jsonb(),status:f.text().default("active").notNull()},e=>[f.foreignKey({columns:[e.app],foreignColumns:[Ae.id],name:"app_users_app_fkey"})]),te=f.pgTable("library_templates",{id:f.uuid().defaultRandom().primaryKey().notNull(),createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),user:f.text(),name:f.text(),description:f.text(),pageId:f.uuid(),pageType:f.text(),library:f.uuid(),preview:f.text()},e=>[f.foreignKey({columns:[e.library],foreignColumns:[K.id],name:"library_templates_library_fkey"})]),re=f.pgTable("library_items",{id:f.uuid().defaultRandom().primaryKey().notNull(),createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),library:f.uuid(),name:f.text(),description:f.text(),blocks:f.jsonb().default([]),preview:f.text(),group:f.text().default("general"),user:f.text(),html:f.text()},e=>[f.foreignKey({columns:[e.library],foreignColumns:[K.id],name:"library_items_library_fkey"})]),ya=f.pgTable("ai_logs",{id:f.bigint({mode:"number"}).primaryKey().generatedByDefaultAsIdentity({name:"ai_logs_id_seq",startWith:1,increment:1,minValue:1,maxValue:9223372036854776e3,cache:1}),createdAt:f.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),model:f.text(),totalDuration:f.numeric(),error:f.text(),totalTokens:f.numeric(),tokenUsage:f.jsonb(),user:f.text(),client:f.uuid().defaultRandom(),cost:f.doublePrecision().default(m.sql`'0'`),prompt:f.text(),app:f.uuid()},e=>[f.foreignKey({columns:[e.app],foreignColumns:[Ae.id],name:"ai_logs_app_fkey"})]),nu=Object.freeze(Object.defineProperty({__proto__:null,aiLogs:ya,appAssets:_v,appFormSubmissions:wv,appPages:g,appPagesMetadataIdSeq:yv,appPagesOnline:ge,appPagesRevisions:Ie,appUsers:cr,apps:Ae,appsOnline:fr,libraries:K,libraryItems:re,libraryTemplates:te,webhookEventsIdSeq:vv},Symbol.toStringTag,{value:"Module"}));hv.config();const au=process.env.CHAIBUILDER_DATABASE_URL;if(!au)throw new Error("Database not configured. Please set CHAIBUILDER_DATABASE_URL environment variable.");const Tv=pu(au,{max:10}),S=du.drizzle(Tv,{schema:nu});async function A(e){try{return{data:await e(),error:null}}catch(t){return{data:null,error:t}}}const bv=e=>{var t;return((t=fu.AI_MODELS.find(r=>r.id===e))==null?void 0:t.multiplier)||1};async function Ev({userId:e,startTime:t,error:r,model:n,prompt:a,appId:o}){var c;const s=String(r),i=t>0?new Date().getTime()-t:0,l={model:n,totalDuration:String(i),error:s,totalTokens:"0",tokenUsage:{},cost:0,prompt:a,user:e,client:((c=process==null?void 0:process.env)==null?void 0:c.CHAIBUILDER_CLIENT_ID)||null,app:o},{error:u}=await A(()=>S.insert(ya).values(l));u&&console.error("Error logging AI request error:",u)}async function Iv({userId:e,startTime:t,arg:r,prompt:n,model:a,appId:o}){var d,v,E;const s=r==null?void 0:r.totalUsage,i=(v=(d=r==null?void 0:r.providerMetadata)==null?void 0:d.gateway)==null?void 0:v.cost,l=t>0?Math.floor(new Date().getTime()-t):0,u=n.indexOf("USER REQUEST");n=n.substring(u).trim();const c={model:a,totalDuration:String(l),error:null,totalTokens:String(Math.round(((s==null?void 0:s.totalTokens)??0)*bv(a))),tokenUsage:s,cost:i,prompt:n,user:e,client:((E=process==null?void 0:process.env)==null?void 0:E.CHAIBUILDER_CLIENT_ID)||null,app:o},{error:p}=await A(()=>S.insert(ya).values(c));p&&console.error("Error logging AI request:",p)}class b extends Error{constructor(t,r="ACTION_ERROR",n=400,a){super(t),this.code=r,this.status=n,this.error=a,this.name="ActionError",a&&console.error(a)}}class Z{constructor(){Ee(this,"context",null)}validate(t){if(!t)return!0;try{return this.getValidationSchema().parse(t),!0}catch{return!1}}getValidationErrors(t){if(!t)return null;try{return this.getValidationSchema().parse(t),null}catch(r){return r instanceof _.z.ZodError?r.issues.map(a=>`${a.path.join(".")}: ${a.message}`).join(", "):null}}setContext(t){this.context=t}async verifyAccess(){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET",500);const{appId:t,userId:r}=this.context;if(!r)throw new b("User ID not found in context","UNAUTHORIZED",401);const{data:n,error:a}=await A(()=>S.select().from(cr).where(m.and(m.eq(cr.app,t),m.eq(cr.user,r),m.eq(cr.status,"active"))));if(a)throw new b("Error checking user access","ERROR_CHECKING_USER_ACCESS",500,a);if(!n||n.length===0)throw new b("User does not have access to this app","UNAUTHORIZED",401)}handleError(t){if(t instanceof b)throw t;if(t instanceof _.z.ZodError){const r=t.issues.map(n=>`${n.path.join(".")}: ${n.message}`).join(", ");throw new b(`Validation failed: ${r}`,"VALIDATION_ERROR")}else{const r=t instanceof Error?t.message:"Unknown error";throw new b(r,"ACTION_ERROR")}}}class Sv extends Z{getValidationSchema(){return _.z.any()}async execute(t){if(!this.context)throw new Error("Context not set");const r=new Date().getTime(),{userId:n,appId:a}=this.context,o=new pv({onFinish:l=>{var u,c;try{Iv({arg:l,prompt:((c=(u=t.messages)==null?void 0:u[t.messages.length-1])==null?void 0:c.content)||"",userId:n,model:t.model||"",startTime:r,appId:a})}catch(p){console.error("Error logging AI request:",p)}},onError:l=>{var u,c;try{Ev({error:l,userId:n,startTime:r,model:t.model||"",prompt:((c=(u=t.messages)==null?void 0:u[t.messages.length-1])==null?void 0:c.content)||"",appId:a})}catch(p){console.error("Error logging AI request error:",p)}}}),s={messages:t.messages||[],image:t.image,model:t.model,initiator:t.type||null};return{_streamingResponse:!0,_streamResult:await o.handleRequest(s)}}}class Av extends Z{getValidationSchema(){return _.z.any()}async execute(){return await this.verifyAccess(),{access:!0}}}class Nv extends Z{getValidationSchema(){return _.z.object({name:_.z.string().min(1),slug:_.z.string(),pageType:_.z.string(),parent:_.z.string().nullable().optional(),lang:_.z.string().optional(),primaryPage:_.z.string().nullable().optional(),dynamic:_.z.boolean().optional(),hasSlug:_.z.boolean().optional(),template:_.z.string().optional(),seo:_.z.record(_.z.string(),_.z.any()).optional(),jsonLD:_.z.record(_.z.string(),_.z.any()).optional(),dynamicSlugCustom:_.z.string().optional()}).refine(t=>t.lang&&t.lang!==""?!!t.primaryPage:!0,{message:"primaryPage is required when lang option is not empty",path:["primaryPage"]})}async execute(t){if(await this.verifyAccess(),!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context;if((t.hasSlug??t.pageType!=="global")&&t.slug&&await this.doesSlugExist(t.slug,t.pageType))throw new b("Slug already exists","SLUG_ALREADY_USED");let a=[];t.template&&(a=await this.getTemplateBlocks(t.template,r));const o={app:r,name:t.name,slug:t.slug,pageType:t.pageType,parent:t.parent??null,lang:t.primaryPage?t.lang??"":"",primaryPage:t.primaryPage??null,dynamic:t.dynamic??!1,dynamicSlugCustom:t.dynamicSlugCustom??"",blocks:a,seo:t.seo??{title:t.name,jsonLD:"",noIndex:!1,ogImage:"",ogTitle:"",noFollow:"",description:"",searchTitle:"",cononicalUrl:"",ogDescription:"",searchDescription:""},jsonLD:t.jsonLD??{},online:!1,currentEditor:null,changes:null,libRefId:null,lastSaved:null},{data:s,error:i}=await A(()=>S.insert(g).values(o).returning({id:g.id,name:g.name,slug:g.slug,lang:g.lang,pageType:g.pageType,parent:g.parent,online:g.online,primaryPage:g.primaryPage}));if(i)throw new b("Failed to create page","ERROR_CREATING_PAGE",500,i);if(!s||s.length===0)throw new b("Failed to create page","INSERT_FAILED");const l=s[0];return{page:j.omit(l.primaryPage?{...l,id:l.primaryPage}:l,["primaryPage"])}}async doesSlugExist(t,r){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:n}=this.context,{data:a,error:o}=await A(()=>S.query.appPages.findFirst({where:m.and(m.eq(g.slug,t),m.eq(g.pageType,r),m.eq(g.app,n)),columns:{id:!0}}));if(o)throw new b(`${o.message}`,"SLUG_CHECK_FAILED");return!!a}async getTemplateBlocks(t,r){const{data:n,error:a}=await A(()=>S.select({template:te,library:{id:K.id,app:K.app,name:K.name}}).from(te).leftJoin(K,m.eq(te.library,K.id)).where(m.eq(te.id,t)).limit(1).then(p=>p[0]));if(a)throw new b(`Failed to fetch template: ${a.message||"Unknown database error"}`,"ERROR_GETTING_TEMPLATE_BLOCKS",500,a);if(!n||!n.template||!n.library)throw new b(`Template not found with ID: ${t}`,"TEMPLATE_NOT_FOUND");const o=n.template,s=n.library,{data:i,error:l}=await A(()=>S.query.appPages.findFirst({where:m.eq(g.id,o.pageId),columns:{blocks:!0}}));if(l)throw new b(`Failed to fetch template blocks: ${l.message||"Unknown database error"}`,"ERROR_GETTING_TEMPLATE_BLOCKS",500,l);if(!i)throw new b(`Template page not found with ID: ${o.pageId}`,"TEMPLATE_PAGE_NOT_FOUND");let u=i.blocks||[];if(u=u.map(p=>p._type==="GlobalBlock"&&!j.isEmpty(p.globalBlock)?{...p,_type:"PartialBlock",partialBlockId:p.globalBlock}:p),!(s.app===r)){const p=s.name||"",d=u.filter(E=>E._type==="PartialBlock"&&!j.isEmpty(E.partialBlockId)),v=await Promise.all(d.map(({partialBlockId:E})=>this.copyPartialBlockFromTemplate(E,p,r)));u=u.map(E=>{const w=v.find(I=>(I==null?void 0:I.libRefId)===E.partialBlockId);return w&&(E._name=`${p} - ${E._name}`,E.partialBlockId=w.id),E})}return u}async copyPartialBlockFromTemplate(t,r,n){const{data:a,error:o}=await A(()=>S.query.appPages.findFirst({where:m.eq(g.id,t)}));if(o||!a)return console.error("Failed to fetch partial block:",o),null;const s={...a,id:void 0,app:n,libRefId:t,name:`${r} - ${a.name}`,createdAt:void 0,online:!1,currentEditor:null,changes:null,lastSaved:null},{data:i,error:l}=await A(()=>S.insert(g).values(s).returning({id:g.id,libRefId:g.libRefId}));if(l||!i||i.length===0)return console.error("Failed to create partial block copy:",l),null;const u=i[0];return{id:u.id,libRefId:u.libRefId||t}}}class Ov extends Z{getValidationSchema(){return _.z.object({id:_.z.string().min(1)})}async execute(t){if(await this.verifyAccess(),!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{id:r}=t,{error:n}=await A(()=>S.delete(re).where(m.eq(re.id,r)));if(n)throw new b("Failed to delete library item","DELETE_LIBRARY_ITEM_FAILED",500,n);return{success:!0}}}const ie=(e,t)=>(console.error(t),new Error(e));class Sr{constructor(t,r=!1){Ee(this,"appId");Ee(this,"enableLogging");this.appId=t,this.enableLogging=r}async getPagesTree(){const{data:t,error:r}=await A(()=>S.select({id:g.id,name:g.name,slug:g.slug,pageType:g.pageType,primaryPage:g.primaryPage,parent:g.parent,lang:g.lang,dynamic:g.dynamic}).from(g).where(m.eq(g.app,this.appId)));if(r)throw ie("ERROR_GETTING_PAGES",r);const n=(t==null?void 0:t.filter(i=>i.primaryPage===null))||[],a=(t==null?void 0:t.filter(i=>i.primaryPage!==null))||[],o=this.buildPrimaryTree(n);this.enableLogging&&(console.log(`
|
|
356
356
|
=== PRIMARY LANGUAGE PAGES TREE ===`),console.log(JSON.stringify(o,null,2)));const s=this.buildLanguageTree(a,o);return this.enableLogging&&(console.log(`
|
|
357
|
-
=== OTHER LANGUAGE PAGES TREE ===`),console.log(JSON.stringify(s,null,2))),{primaryTree:o,languageTree:s,totalPrimaryPages:n.length,totalLanguagePages:a.length}}buildPrimaryTree(t){const r=new Map;t.forEach(a=>{r.set(a.id,{id:a.id,pageType:a.pageType,primaryPage:a.primaryPage,parent:a.parent,name:a.name,dynamic:a.dynamic,slug:a.slug,children:[]})});const n=[];return t.forEach(a=>{const o=r.get(a.id);if(o)if(a.parent===null)n.push(o);else{const s=r.get(a.parent);s?s.children.push(o):n.push(o)}}),n}buildLanguageTree(t,r){const n=new Map;t.forEach(i=>{const l=i.primaryPage;n.has(l)||n.set(l,[]),n.get(l).push(i)});const a=(i,l)=>{const c=(n.get(i.id)||[]).find(d=>d.lang===l);if(!c)return null;const p={id:c.id,pageType:c.pageType,primaryPage:c.primaryPage,parent:c.parent,lang:c.lang,name:c.name,slug:c.slug,dynamic:c.dynamic,children:[]};return i.children.forEach(d=>{const v=a(d,l);v&&p.children.push(v)}),p},o=[],s=new Set;return t.forEach(i=>{i.lang&&s.add(i.lang)}),s.forEach(i=>{r.forEach(l=>{const u=a(l,i);u&&o.push(u)})}),o}findPageInPrimaryTree(t,r){for(const n of r){if(n.id===t)return n;if(n.children&&n.children.length>0){const a=this.findPageInPrimaryTree(t,n.children);if(a)return a}}return null}findPageInLanguageTree(t,r){for(const n of r){if(n.id===t)return n;if(n.children&&n.children.length>0){const a=this.findPageInLanguageTree(t,n.children);if(a)return a}}return null}calculateSlugFromParent(t,r,n){if(!t){const l=r.split("/").filter(Boolean);return"/"+(l[l.length-1]||"")}let a=this.findPageInPrimaryTree(t,n);if(!a&&(a=this.findPageInLanguageTree(t,n),!a))throw new Error("Parent page not found in tree");const o=r.split("/").filter(Boolean),s=o[o.length-1]||"";return`${a.slug.endsWith("/")?a.slug.slice(0,-1):a.slug}/${s}`}collectNestedChildIds(t){const r=[];for(const n of t.children){r.push(n.id);const a=this.collectNestedChildIds(n);r.push(...a)}return r}findLanguagePagesForPrimary(t,r){const n=[],a=o=>{for(const s of o)s.primaryPage===t&&n.push(s),s.children&&s.children.length>0&&a(s.children)};return a(r),n}collectNestedChildSlugs(t,r,n){const a=[],o=(s,i,l)=>{for(const u of s){const c=this.generateNewChildSlug(u.slug,i,l);a.push({id:u.id,oldSlug:u.slug,newSlug:c}),u.children&&u.children.length>0&&o(u.children,u.slug,c)}};return o(t.children,r,n),a}generateNewChildSlug(t,r,n){return t===r?n:t.startsWith(r+"/")?t.replace(r+"/",n+"/"):t.startsWith(r)&&t!==r?t.replace(r,n):`${n}/${t.split("/").pop()}`}}class
|
|
357
|
+
=== OTHER LANGUAGE PAGES TREE ===`),console.log(JSON.stringify(s,null,2))),{primaryTree:o,languageTree:s,totalPrimaryPages:n.length,totalLanguagePages:a.length}}buildPrimaryTree(t){const r=new Map;t.forEach(a=>{r.set(a.id,{id:a.id,pageType:a.pageType,primaryPage:a.primaryPage,parent:a.parent,name:a.name,dynamic:a.dynamic,slug:a.slug,children:[]})});const n=[];return t.forEach(a=>{const o=r.get(a.id);if(o)if(a.parent===null)n.push(o);else{const s=r.get(a.parent);s?s.children.push(o):n.push(o)}}),n}buildLanguageTree(t,r){const n=new Map;t.forEach(i=>{const l=i.primaryPage;n.has(l)||n.set(l,[]),n.get(l).push(i)});const a=(i,l)=>{const c=(n.get(i.id)||[]).find(d=>d.lang===l);if(!c)return null;const p={id:c.id,pageType:c.pageType,primaryPage:c.primaryPage,parent:c.parent,lang:c.lang,name:c.name,slug:c.slug,dynamic:c.dynamic,children:[]};return i.children.forEach(d=>{const v=a(d,l);v&&p.children.push(v)}),p},o=[],s=new Set;return t.forEach(i=>{i.lang&&s.add(i.lang)}),s.forEach(i=>{r.forEach(l=>{const u=a(l,i);u&&o.push(u)})}),o}findPageInPrimaryTree(t,r){for(const n of r){if(n.id===t)return n;if(n.children&&n.children.length>0){const a=this.findPageInPrimaryTree(t,n.children);if(a)return a}}return null}findPageInLanguageTree(t,r){for(const n of r){if(n.id===t)return n;if(n.children&&n.children.length>0){const a=this.findPageInLanguageTree(t,n.children);if(a)return a}}return null}calculateSlugFromParent(t,r,n){if(!t){const l=r.split("/").filter(Boolean);return"/"+(l[l.length-1]||"")}let a=this.findPageInPrimaryTree(t,n);if(!a&&(a=this.findPageInLanguageTree(t,n),!a))throw new Error("Parent page not found in tree");const o=r.split("/").filter(Boolean),s=o[o.length-1]||"";return`${a.slug.endsWith("/")?a.slug.slice(0,-1):a.slug}/${s}`}collectNestedChildIds(t){const r=[];for(const n of t.children){r.push(n.id);const a=this.collectNestedChildIds(n);r.push(...a)}return r}findLanguagePagesForPrimary(t,r){const n=[],a=o=>{for(const s of o)s.primaryPage===t&&n.push(s),s.children&&s.children.length>0&&a(s.children)};return a(r),n}collectNestedChildSlugs(t,r,n){const a=[],o=(s,i,l)=>{for(const u of s){const c=this.generateNewChildSlug(u.slug,i,l);a.push({id:u.id,oldSlug:u.slug,newSlug:c}),u.children&&u.children.length>0&&o(u.children,u.slug,c)}};return o(t.children,r,n),a}generateNewChildSlug(t,r,n){return t===r?n:t.startsWith(r+"/")?t.replace(r+"/",n+"/"):t.startsWith(r)&&t!==r?t.replace(r,n):`${n}/${t.split("/").pop()}`}}class Rv extends Z{constructor(){super(...arguments);Ee(this,"appId","");Ee(this,"userId","");Ee(this,"pageTreeBuilder")}getValidationSchema(){return _.z.object({id:_.z.string().min(1,"Page ID is required")})}async execute(r){if(await this.verifyAccess(),!this.context)throw new b("Context not set","CONTEXT_NOT_SET");this.appId=this.context.appId,this.userId=this.context.userId||"";try{return this.pageTreeBuilder=new Sr(this.appId),await this.deletePage(r.id)}catch(n){if(n instanceof b)throw n;const a=n instanceof Error?n.message:"Failed to delete page";throw new b(a,"DELETE_PAGE_ERROR")}}async deletePage(r){const n=await this.getCurrentEditor(r);if(n&&n!==this.userId)return{tags:[],code:"PAGE_LOCKED",editor:n};const a=await this.pageTreeBuilder.getPagesTree(),o=this.pageTreeBuilder.findPageInLanguageTree(r,a.languageTree),s=this.pageTreeBuilder.findPageInPrimaryTree(r,a.primaryTree);if(!o&&!s)throw ie("ERROR_DELETING_PAGE","Page not found");return o!==null?await this.deleteLanguagePageWithTree(r,o,a):await this.deletePrimaryPageWithTree(r,a)}async performDeletionWithIds(r){const n=[...r].reverse(),{error:a}=await A(()=>S.delete(te).where(m.inArray(te.pageId,n)));if(a)throw ie("DELETE_FAILED",a);const{error:o}=await A(()=>S.delete(Ie).where(m.inArray(Ie.id,n)));if(o)throw ie("DELETE_FAILED",o);const{error:s}=await A(()=>S.delete(g).where(m.inArray(g.id,n)));if(s)throw ie("DELETE_FAILED",s);const{error:i}=await A(()=>S.delete(ge).where(m.inArray(ge.id,n)));if(i)throw ie("DELETE_FAILED",i)}async deleteLanguagePageWithTree(r,n,a){const o=n.primaryPage;if(!this.pageTreeBuilder.findPageInPrimaryTree(o,a.primaryTree))throw ie("ERROR_DELETING_PAGE","Primary page not found");const i=this.pageTreeBuilder.collectNestedChildIds(n);return await this.performDeletionWithIds([r,...i]),{tags:[`page-${r}`,...i.map(l=>`page-${l}`)],totalDeleted:1+i.length}}async deletePrimaryPageWithTree(r,n){const a=this.pageTreeBuilder.findPageInPrimaryTree(r,n.primaryTree);if(!a)throw ie("ERROR_DELETING_PAGE","Primary page not found");const o=this.pageTreeBuilder.collectNestedChildIds(a),s=this.pageTreeBuilder.findLanguagePagesForPrimary(r,n.languageTree),i=[];s.forEach(u=>{i.push(u.id);const c=this.pageTreeBuilder.collectNestedChildIds(u);i.push(...c)});const l=[...new Set([...o,...i])];return await this.performDeletionWithIds([r,...l]),{tags:[`page-${r}`,...l.map(u=>`page-${u}`)],totalDeleted:1+l.length}}async getCurrentEditor(r){var o;const{data:n,error:a}=await A(()=>S.select({currentEditor:g.currentEditor}).from(g).where(m.and(m.eq(g.id,r),m.eq(g.app,this.appId))).limit(1));return a||!n||n.length===0?null:((o=n[0])==null?void 0:o.currentEditor)||null}}class xv extends Z{getValidationSchema(){return _.z.object({revisionId:_.z.string().nonempty("Revision ID is required")})}async execute(t){if(await this.verifyAccess(),!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context,{error:n}=await A(()=>S.delete(Ie).where(m.and(m.eq(Ie.uid,t.revisionId),m.eq(Ie.app,r))));if(n)throw new b("Failed to delete page revision","DELETE_REVISION_ERROR");return{success:!0}}}class kv extends Z{getValidationSchema(){return _.z.object({pageId:_.z.string().nonempty(),name:_.z.string().nonempty(),slug:_.z.string().optional()})}async execute(t){if(await this.verifyAccess(),!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context;if(t.slug&&await this.doesSlugExist(t.slug))throw new b("Slug already exists","SLUG_EXISTS");const{data:n,error:a}=await A(()=>S.query.appPages.findFirst({where:m.and(m.eq(g.id,t.pageId),m.eq(g.app,r))}));if(a)throw a;if(!n)throw new b("Page not found","PAGE_NOT_FOUND");const o={...n,id:void 0,createdAt:void 0,name:t.name,currentEditor:null,changes:null,online:!1,libRefId:null,lastSaved:null,...t.slug&&{slug:t.slug}},[s]=await S.insert(g).values(o).returning({id:g.id});if(!s)throw new b("Failed to create duplicate page","INSERT_FAILED");return{id:s.id}}async doesSlugExist(t){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context,{data:n,error:a}=await A(()=>S.query.appPages.findFirst({where:m.and(m.eq(g.slug,t),m.eq(g.app,r)),columns:{id:!0}}));if(a)throw new b(`${a.message}`,"SLUG_CHECK_FAILED");return!!n}}var es={},zn,ts;function Pv(){if(ts)return zn;ts=1;const e={};return process.env.DOTENV_CONFIG_ENCODING!=null&&(e.encoding=process.env.DOTENV_CONFIG_ENCODING),process.env.DOTENV_CONFIG_PATH!=null&&(e.path=process.env.DOTENV_CONFIG_PATH),process.env.DOTENV_CONFIG_QUIET!=null&&(e.quiet=process.env.DOTENV_CONFIG_QUIET),process.env.DOTENV_CONFIG_DEBUG!=null&&(e.debug=process.env.DOTENV_CONFIG_DEBUG),process.env.DOTENV_CONFIG_OVERRIDE!=null&&(e.override=process.env.DOTENV_CONFIG_OVERRIDE),process.env.DOTENV_CONFIG_DOTENV_KEY!=null&&(e.DOTENV_KEY=process.env.DOTENV_CONFIG_DOTENV_KEY),zn=e,zn}var Dn,rs;function Cv(){if(rs)return Dn;rs=1;const e=/^dotenv_config_(encoding|path|quiet|debug|override|DOTENV_KEY)=(.+)$/;return Dn=function(r){const n=r.reduce(function(a,o){const s=o.match(e);return s&&(a[s[1]]=s[2]),a},{});return"quiet"in n||(n.quiet="true"),n},Dn}var ns;function zv(){return ns||(ns=1,(function(){ru().config(Object.assign({},Pv(),Cv()(process.argv)))})()),es}zv();const as="anthropic/claude-haiku-4.5";class Dv extends Z{getValidationSchema(){return _.z.object({prompt:_.z.string().min(1,"Prompt is required"),context:_.z.string().optional(),image:_.z.string().optional()})}async execute(t){if(await this.verifyAccess(),!this.context)throw new b("Context not set","CONTEXT_NOT_SET");try{const r=`You are an expert HTML/CSS developer specializing in Tailwind CSS and shadcn/ui design patterns.
|
|
358
358
|
|
|
359
359
|
Create pure HTML code only. Make it fully responsive using Tailwind CSS v3 classes exclusively - no custom CSS or classes allowed. Implement container queries (@container) where appropriate for enhanced responsive behavior.
|
|
360
360
|
|
|
@@ -404,15 +404,15 @@ IMAGE USAGE RULES:
|
|
|
404
404
|
|
|
405
405
|
The final output should be clean, semantic HTML that works across all devices and screen sizes.
|
|
406
406
|
|
|
407
|
-
${t.context?`Additional Context: ${t.context}`:""}
|
|
407
|
+
${t.context?`Additional Context: ${t.context}`:""}`;let a=(t.image?await Hn({model:as,system:r,messages:[{role:"user",content:[{type:"text",text:t.prompt},{type:"image",image:t.image}]}],temperature:.7}):await Hn({model:as,system:r,prompt:t.prompt,temperature:.7})).text.trim();return a=a.replace(/^```html\n?/i,""),a=a.replace(/^```\n?/,""),a=a.replace(/\n?```$/,""),a=a.trim(),{html:a}}catch(r){console.log("error",r),this.handleError(r)}}}const $v="anthropic/claude-haiku-4.5",os={title:"Generate title for the following page. Max length: 60 characters",description:"Generate description for the following page. Max length: 160 characters",ogTitle:"Generate og title for the following page. Max length: 60 characters",ogDescription:"Generate og description for the following page. Max length: 160 characters",searchTitle:"Generate search title for the following page. Max length: 60 characters",searchDescription:"Generate search description for the following page. Max length: 160 characters",jsonLD:"Generate json ld for the following page. Return only json ld"};class Mv extends Z{getValidationSchema(){return _.z.object({pageContext:_.z.string(),dynamic:_.z.boolean(),pageContent:_.z.string(),field:_.z.enum(["title","description","ogTitle","ogDescription","searchTitle","searchDescription","jsonLD"]),lang:_.z.string().nonempty(),keyword:_.z.string().optional()})}async execute(t){if(await this.verifyAccess(),!this.context)throw new b("Context not set","CONTEXT_NOT_SET");return{field:(await Hn({model:$v,system:`You are a SEO expert. Follow the instructions carefully.
|
|
408
408
|
Return plain string values except for json ld. For JSONLD, remove \`\`\`json\`\`\` and \`\`\`\`\` and return only valid JSON.
|
|
409
|
-
Instructions: ${
|
|
409
|
+
Instructions: ${os[t.field]}
|
|
410
410
|
${t.keyword?`Optimize the generated content for "${t.keyword}" keyword(s)`:""}
|
|
411
411
|
Page Context: ${t.pageContext}
|
|
412
412
|
Page Content: ${t.pageContent}
|
|
413
413
|
Dynamic: ${t.dynamic}
|
|
414
|
-
Language: ${t.lang}`,prompt:`${
|
|
414
|
+
Language: ${t.lang}`,prompt:`${os[t.field]}
|
|
415
415
|
Page Context: ${t.pageContext}
|
|
416
416
|
Page Content: ${t.pageContent}
|
|
417
417
|
Dynamic: ${t.dynamic}
|
|
418
|
-
Language: ${t.lang}`})).text}}}class Mv extends Z{getValidationSchema(){return _.z.object({block:_.z.any(),pageProps:_.z.any().optional().default({}),lang:_.z.string()})}async execute(t){var r;try{const{block:n,pageProps:a,lang:o}=t,s=n._type;if(s==="Repeater"&&((r=n==null?void 0:n.repeaterItems)!=null&&r.includes("{{#"))){const u=n.repeaterItems.replace("{{#","").replace("}}",""),c=ut.getChaiCollection(u);return c?await(c==null?void 0:c.fetch({block:n,pageProps:a,lang:o,draft:!0,inBuilder:!0}))??[]:[]}const i=fu.getRegisteredChaiBlock(s);return!i||!j.isFunction(i.dataProvider)?{}:await i.dataProvider({block:n,pageProps:a,lang:o,draft:!0,inBuilder:!0})??{}}catch(n){return this.handleError(n)}}}class Fv extends Z{getValidationSchema(){return _.z.object({lang:_.z.string(),pageType:_.z.string().optional(),pageProps:_.z.any().optional().default({})})}async execute(t){try{const{lang:r,pageType:n,pageProps:a={}}=t,o=await ut.getChaiGlobalData({lang:r,draft:!0,inBuilder:!0});if(!n)return{global:o};const s=ut.getChaiPageType(n);return s?{...s.dataProvider?await s.dataProvider({lang:r,draft:!0,inBuilder:!0,pageProps:a}):{},global:o}:{global:o}}catch(r){return this.handleError(r)}}}class Lv extends Z{constructor(){super(...arguments);Ie(this,"appId","")}getValidationSchema(){return _.z.object({})}async execute(){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");this.appId=this.context.appId;try{return await this.getChanges()}catch(r){if(r instanceof b)throw r;const n=r instanceof Error?r.message:"Failed to get changes";throw new b(n,"GET_CHANGES_ERROR")}}async getChanges(){const{data:r,error:n}=await N(()=>S.select({id:g.id,slug:g.slug,name:g.name,pageType:g.pageType,lang:g.lang,changes:g.changes,primaryPage:g.primaryPage,online:g.online,currentEditor:g.currentEditor}).from(g).where(m.and(m.eq(g.app,this.appId),m.isNotNull(g.changes))));if(n)throw new b("Error getting changed pages","ERROR_GETTING_CHANGES");const{data:a,error:o}=await N(()=>S.select({id:g.id,slug:g.slug,name:g.name,pageType:g.pageType,lang:g.lang,changes:g.changes,primaryPage:g.primaryPage,online:g.online}).from(g).where(m.and(m.eq(g.app,this.appId),m.isNull(g.currentEditor),m.eq(g.online,!1))));if(o)throw new b("Error getting offline pages","ERROR_GETTING_OFFLINE_PAGES");const s=(a||[]).map(p=>({...p,changes:["Take Online"]})),l=[...(r||[]).filter(p=>!s.some(d=>d.id===p.id)).map(p=>({...p,changes:p.changes})),...s],{data:u,error:c}=await N(()=>S.select({changes:me.changes}).from(me).where(m.and(m.eq(me.id,this.appId),m.isNotNull(me.changes))));return!c&&u&&u.length>0&&l.push({id:"THEME",slug:"",name:"Theme",pageType:"theme",lang:"",changes:["Updated"],primaryPage:null,online:!0}),l}}class Uv extends Z{getValidationSchema(){return _.z.object({})}async execute(){try{return ut.getChaiCollections().map(r=>j.omit(r,"fetch"))}catch(t){return this.handleError(t)}}}class jv extends Z{getValidationSchema(){return _.z.object({versions:_.z.object({version1:_.z.object({type:_.z.enum(["draft","revision","live"]),id:_.z.string()}),version2:_.z.object({type:_.z.enum(["draft","revision","live"]),id:_.z.string()})})})}async execute(t){this.validateContext();const r=await this.getBlocksForVersion(t.versions.version1.type,t.versions.version1.id),n=await this.getBlocksForVersion(t.versions.version2.type,t.versions.version2.id);return{version1:{blocks:r.blocks,seo:r.seo},version2:{blocks:n.blocks,seo:n.seo}}}async getBlocksForVersion(t,r){let n,a;switch(t){case"draft":({data:n,error:a}=await N(()=>S.query.appPages.findFirst({where:m.eq(g.id,r),columns:{blocks:!0,seo:!0}})));break;case"live":({data:n,error:a}=await N(()=>S.query.appPagesOnline.findFirst({where:m.eq(ge.id,r),columns:{blocks:!0,seo:!0}})));break;case"revision":({data:n,error:a}=await N(()=>S.query.appPagesRevisions.findFirst({where:m.eq(Se.uid,r),columns:{blocks:!0,seo:!0}})));break;default:throw new b(`Invalid version type: ${t}`,"INVALID_VERSION_TYPE")}if(a)throw new b(`Failed to fetch blocks for ${t} version: ${a.message}`,"FETCH_BLOCKS_ERROR");if(!n)throw new b(`No data found for ${t} version with id: ${r}`,"VERSION_NOT_FOUND");return{blocks:n.blocks||[],seo:n.seo||{}}}validateContext(){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET")}}class qv extends Z{getValidationSchema(){return _.z.object({id:_.z.string()})}async execute(t){var c;if(!this.context)throw re("CONTEXT_NOT_SET",new Error("CONTEXT_NOT_SET"));const{appId:r}=this.context,{id:n}=t,a=g,{data:o,error:s}=await N(()=>S.select({id:a.id,name:a.name,slug:a.slug,lang:a.lang,primaryPage:a.primaryPage,seo:a.seo,currentEditor:a.currentEditor,pageType:a.pageType,lastSaved:a.lastSaved,dynamic:a.dynamic,parent:a.parent,blocks:a.blocks}).from(a).where(m.and(m.eq(a.app,r),m.eq(a.id,n))).limit(1));if(s)throw re("PAGE_NOT_FOUND",s);if(!o||o.length===0)throw re("PAGE_NOT_FOUND",new Error("Page not found"));const i=o[0],l=i.primaryPage??i.id;let u=i.blocks??[];if(l!==i.id){const{data:p,error:d}=await N(()=>S.select({blocks:a.blocks}).from(a).where(m.and(m.eq(a.app,r),m.eq(a.id,l))).limit(1));if(d)throw re("BLOCKS_NOT_FOUND",d);u=((c=p==null?void 0:p[0])==null?void 0:c.blocks)??[]}return{...i,blocks:u,id:n,languagePageId:i.id}}}class Zv extends Z{getValidationSchema(){return _.z.object({pageType:_.z.string()})}async execute(t){try{const{pageType:r,...n}=t,a=ut.getChaiPageType(r);return a?a.getDynamicPages?await a.getDynamicPages(n):[]:{error:"Page type not found"}}catch(r){return this.handleError(r)}}}class Gv extends Z{getValidationSchema(){return _.z.object({id:_.z.string()})}async execute(t){if(!this.context)throw re("CONTEXT_NOT_SET",new Error("CONTEXT_NOT_SET"));const{appId:r}=this.context,{id:n}=t,{data:a,error:o}=await N(()=>S.select({id:g.id,name:g.name,slug:g.slug,lang:g.lang,primaryPage:g.primaryPage,pageType:g.pageType,seo:g.seo,currentEditor:g.currentEditor,online:g.online,parent:g.parent,metadata:g.metadata,dynamic:g.dynamic,dynamicSlugCustom:g.dynamicSlugCustom}).from(g).where(m.and(m.eq(g.app,r),m.or(m.eq(g.primaryPage,n),m.eq(g.id,n)))));if(o)throw re("LANGUAGE_PAGES_ERROR",o);return a.map(s=>j.omit(s,["app"]))}}class Bv extends Z{getValidationSchema(){return _.z.object({}).optional().default({})}async execute(){var l;if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:t}=this.context,r=await N(()=>S.select({id:K.id,name:K.name,type:K.type,createdAt:K.createdAt}).from(K).where(m.eq(K.app,t)).limit(1));if(r.error)throw new b("Failed to fetch site library","DB_ERROR");const n=r.data[0]||null,a=((l=process==null?void 0:process.env)==null?void 0:l.CHAIBUILDER_CLIENT_ID)||null;if(!a)return n?[{id:n.id,name:n.name,type:n.type,createdAt:n.createdAt,isSiteLibrary:!0}]:[];const{data:o,error:s}=await N(()=>S.select({id:K.id,name:K.name,type:K.type,createdAt:K.createdAt}).from(K).where(m.eq(K.client,a)));if(s)throw new b("Failed to fetch libraries","DB_ERROR");const i=(n==null?void 0:n.id)||null;return o.map(u=>({id:u.id,name:u.name,type:u.type,createdAt:u.createdAt,isSiteLibrary:i?u.id===i:!1}))}}class Vv extends Z{getValidationSchema(){return _.z.object({})}async execute(){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{data:t,error:r}=await N(()=>S.select({id:K.id}).from(K).where(m.eq(K.app,this.context.appId)).limit(1));if(r)throw new b("Failed to fetch site library","GET_SITE_LIBRARY_FAILED",r);if(!t||t.length===0)return[];const n=t[0],{data:a,error:o}=await N(()=>S.select({group:ne.group}).from(ne).where(m.eq(ne.library,n.id)));if(o)throw new b("Failed to fetch library groups","GET_LIBRARY_GROUPS_FAILED",o);const s=j.map(a,"group").filter(i=>i!=null);return j.map(j.uniq(s),i=>({id:i,name:i}))}}class Hv extends Z{getValidationSchema(){return _.z.object({id:_.z.string().min(1)})}async execute(t){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context,{id:n}=t,{data:a,error:o}=await N(()=>S.select({id:ne.id,name:ne.name,blocks:ne.blocks,library:ne.library,description:ne.description,group:ne.group,user:ne.user,preview:ne.preview,createdAt:ne.createdAt,html:ne.html,libraryApp:K.app,libraryName:K.name}).from(ne).leftJoin(K,m.eq(ne.library,K.id)).where(m.eq(ne.id,n)));if(o)throw new b("Failed to fetch library item","GET_LIBRARY_ITEM_FAILED",o);if(!a||a.length===0)throw new b("Library item not found","GET_LIBRARY_ITEM_FAILED");const s=a[0],i=Array.isArray(s.blocks)?[...s.blocks]:s.blocks;return s.libraryApp===r?j.set(i,"0._libBlockId",s.id):j.set(i,"0._libBlockId",void 0),{id:s.id,name:s.name,blocks:i,description:s.description,group:s.group,user:s.user,preview:s.preview,createdAt:s.createdAt,html:s.html}}}class Jv extends Z{getValidationSchema(){return _.z.object({id:_.z.string().min(1)})}async execute(t){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{id:r}=t,{data:n,error:a}=await N(()=>S.select({id:ne.id,name:ne.name,library:ne.library,group:ne.group,description:ne.description,preview:ne.preview}).from(ne).where(m.eq(ne.library,r)));if(a)throw new b("Failed to fetch library items","GET_LIBRARY_ITEMS_FAILED",a);return n||[]}}class Yv extends Z{getValidationSchema(){return _.z.object({pageId:_.z.string().min(1,"Page ID is required")})}async execute(t){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");try{return await this.getRevisions(t.pageId)}catch(r){if(r instanceof b)throw r;const n=r instanceof Error?r.message:"Failed to get page revisions";throw new b(n,"GET_PAGE_REVISIONS_ERROR")}}async getRevisions(t){const{data:r,error:n}=await N(()=>S.select({currentEditor:g.currentEditor,createdAt:g.createdAt}).from(g).where(m.and(m.eq(g.app,this.context.appId),m.eq(g.id,t)))),{data:a,error:o}=await N(()=>S.select({uid:Se.uid,currentEditor:Se.currentEditor,createdAt:Se.createdAt,type:Se.type}).from(Se).where(m.and(m.eq(Se.app,this.context.appId),m.eq(Se.id,t))));if(n){const u=n instanceof Error?`Error getting current page for revisions: ${n.message}`:"Error getting current page for revisions";throw new b(u,"ERROR_GETTING_CURRENT_PAGE_FOR_REVISIONS")}if(o){const u=o instanceof Error?`Error getting page revisions: ${o.message}`:"Error getting page revisions";throw new b(u,"ERROR_GETTING_PAGE_REVISIONS")}const s=r==null?void 0:r[0],l=[...s?[{...s,type:"published",uid:"current"}]:[],...a??[]];return j.orderBy(l,["createdAt"],["desc"])}}class Wv extends Z{getValidationSchema(){return _.z.object({})}async execute(){try{return await Promise.all(ut.getChaiPageTypes().map(async r=>({key:r.key,helpText:r.helpText??"",icon:r.icon??"",dynamicSegments:r.dynamicSegments??"",dynamicSlug:r.dynamicSlug??"",hasSlug:r.hasSlug??!0,name:typeof r.name=="function"?await r.name():r.name,...j.isFunction(r.defaultTrackingInfo)?{trackingDefault:r.defaultTrackingInfo()}:{},...j.isFunction(r.defaultSeo)?{defaultSeo:r.defaultSeo()}:{},...j.isFunction(r.defaultJSONLD)?{defaultJSONLD:r.defaultJSONLD()}:{}})))}catch(t){return this.handleError(t)}}}class Kv extends Z{getValidationSchema(){return _.z.object({id:_.z.string().nonempty(),type:_.z.enum(["draft","live","revision"])})}async execute(t){if(!this.context)throw re("CONTEXT_NOT_SET",new Error("CONTEXT_NOT_SET"));let r,n;switch(t.type){case"draft":({data:r,error:n}=await N(()=>S.query.appPages.findFirst({where:m.and(m.eq(g.id,t.id),m.eq(g.lang,t.lang??""))})));break;case"live":({data:r,error:n}=await N(()=>S.query.appPagesOnline.findFirst({where:m.and(m.eq(ge.id,t.id),m.eq(ge.lang,t.lang??""))})));break;case"revision":({data:r,error:n}=await N(()=>S.query.appPagesRevisions.findFirst({where:m.and(m.eq(Se.uid,t.id),m.eq(Se.lang,t.lang??""))})));break}if(n||!r)throw re("NOT_FOUND",n||new Error("Page not found"));let a=(r==null?void 0:r.blocks)??[];return a=await this.getMergedBlocks(a,t.type==="draft",this.context.appId),{...r,blocks:a}}async getMergedBlocks(t,r,n){const a=r?g:ge,o=t.filter(({_type:c})=>c==="GlobalBlock"||c==="PartialBlock");if(o.length===0)return t;const s=o.map(c=>j.get(c,"partialBlockId",j.get(c,"globalBlock",""))).filter(c=>c!=="");if(s.length===0)return t;const{data:i,error:l}=await N(()=>S.select({id:a.id,blocks:a.blocks}).from(a).where(m.and(m.eq(a.app,n),m.inArray(a.id,s))));if(l)throw re("PARTIAL_BLOCKS_FETCH_ERROR",l);const u=new Map;i&&i.forEach(c=>{u.set(c.id,c.blocks??[])});for(let c=0;c<o.length;c++){const p=o[c];if(!p)continue;const d=j.get(p,"partialBlockId",j.get(p,"globalBlock",""));if(d==="")continue;let v=u.get(d)??[];v.length>0&&(v=v.map(w=>(j.isEmpty(w._parent)&&(w._parent=p._parent),j.has(p,"_show")&&(w._show=p._show),w)));const E=t.indexOf(p);E!==-1&&t.splice(E,1,...v)}return t}}class Xv extends Z{getValidationSchema(){return _.z.object({})}async execute(){return{role:"admin",permissions:null}}}class Qv extends Z{getValidationSchema(){return _.z.undefined()}async execute(){if(!this.context)throw re("CONTEXT_NOT_SET",new Error("CONTEXT_NOT_SET"));const{appId:t}=this.context,{data:r,error:n}=await N(()=>S.select({id:g.id,designTokens:g.designTokens,name:g.name,slug:g.slug,links:g.links,partialBlocks:g.partialBlocks}).from(g).where(m.and(m.eq(g.lang,""),m.eq(g.app,t))));if(n)throw re("FETCH_SITE_DATA_FAILED",n);const a={};return j.each(r,o=>{var s;a[o.id]={name:o.name,isPartial:j.isEmpty(o.slug),partialBlocks:o.partialBlocks?(s=o.partialBlocks)==null?void 0:s.split("|").filter(Boolean):[],links:o.links?o.links.split("|").filter(Boolean):[],designTokens:o.designTokens??{}}}),a}}class e_ extends Z{getValidationSchema(){return _.z.object({pageType:_.z.string().min(1)})}async execute(t){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context,{pageType:n}=t,{data:a,error:o}=await N(()=>S.query.libraries.findFirst({where:m.eq(K.app,r),columns:{id:!0}}));if(o)throw new b("Failed to fetch site library","GET_SITE_LIBRARY_FAILED",o);const{data:s,error:i}=await N(()=>S.select({id:K.id}).from(K).where(m.eq(K.type,"shared")));if(i)throw new b("Failed to fetch shared libraries","GET_SHARED_LIBRARIES_FAILED",i);const l=[...a?[a.id]:[],...(s||[]).map(p=>p.id)];if(l.length===0)return[];const{data:u,error:c}=await N(()=>S.select({id:te.id,library:te.library,pageId:te.pageId,pageType:te.pageType,name:te.name,description:te.description,preview:te.preview,user:te.user,createdAt:te.createdAt}).from(te).where(m.and(m.eq(te.pageType,n),m.inArray(te.library,l))));if(c)throw new b("Failed to fetch templates","GET_TEMPLATES_FAILED",c);return u||[]}}class t_ extends Z{getValidationSchema(){return _.z.object({lang:_.z.string().optional()})}async execute(t){if(!this.context)throw re("CONTEXT_NOT_SET",new Error("CONTEXT_NOT_SET"));const{appId:r}=this.context,a=(t??{lang:""}).lang??"",{data:o,error:s}=await N(()=>S.select({id:g.id,name:g.name,slug:g.slug,pageType:g.pageType,currentEditor:g.currentEditor,parent:g.parent,online:g.online,lastSaved:g.lastSaved,createdAt:g.createdAt,dynamic:g.dynamic,dynamicSlugCustom:g.dynamicSlugCustom,primaryPage:g.primaryPage}).from(g).where(m.and(m.eq(g.app,r),m.eq(g.lang,a))));if(s)throw re("ERROR_GETTING_WEBSITE_PAGES",s);if(!o||o.length===0)return[];const i=o.filter(p=>!j.isEmpty(p.slug)).map(p=>p.id),{data:l,error:u}=await N(()=>S.select({pageId:te.pageId}).from(te).where(m.inArray(te.pageId,i)));if(u)throw re("ERROR_GETTING_TEMPLATE_INFO",u);const c=new Set((l||[]).map(p=>p.pageId));return o.map(p=>({...p,pageType:p.pageType??"page",isTemplate:c.has(p.id)}))}}class r_ extends Z{getValidationSchema(){return _.z.object({draft:_.z.boolean()})}async execute(t){if(!this.context)throw re("CONTEXT_NOT_SET",new Error("CONTEXT_NOT_SET"));const{appId:r}=this.context,{draft:n}=t,a=n?me:pr,{data:o,error:s}=await N(()=>S.select({theme:a.theme,fallbackLang:a.fallbackLang,languages:a.languages,settings:a.settings,designTokens:a.designTokens}).from(a).where(m.eq(a.id,r)).limit(1));if(s)throw re("ERROR_PROJECT_CONFIG",s);if(!o||o.length===0)throw re("PROJECT_NOT_FOUND",new Error("Project not found"));const i=j.first(o);return{...this.getDefaultSettings(),...i,fallbackLang:(i==null?void 0:i.fallbackLang)||this.getDefaultSettings().fallbackLang,languages:(i==null?void 0:i.languages)||this.getDefaultSettings().languages,theme:(i==null?void 0:i.theme)||this.getDefaultSettings().theme,appKey:this.generateDeterministicUuid(r)}}getDefaultSettings(){return{fallbackLang:"en",languages:[],theme:{colors:{card:["#FFFFFF","#09090B"],ring:["#2563EB","#3B82F6"],input:["#E4E4E7","#27272A"],muted:["#F4F4F5","#27272A"],accent:["#F4F4F5","#27272A"],border:["#E4E4E7","#27272A"],popover:["#FFFFFF","#09090B"],primary:["#2563EB","#3B82F6"],secondary:["#F4F4F5","#27272A"],background:["#FFFFFF","#09090B"],foreground:["#09090B","#FFFFFF"],destructive:["#EF4444","#7F1D1D"],"card-foreground":["#09090B","#FFFFFF"],"muted-foreground":["#71717A","#A1A1AA"],"accent-foreground":["#09090B","#FFFFFF"],"popover-foreground":["#09090B","#FFFFFF"],"primary-foreground":["#FFFFFF","#FFFFFF"],"secondary-foreground":["#09090B","#FFFFFF"],"destructive-foreground":["#FFFFFF","#FFFFFF"]},fontFamily:{body:"Roboto",heading:"Poppins"},borderRadius:"30px"},settings:{},designTokens:{}}}generateDeterministicUuid(t){const r=os.createHash("sha256").update(t).digest("hex");return[r.substring(0,8),r.substring(8,12),"4"+r.substring(13,16),(parseInt(r.substring(16,17),16)&3|8).toString(16)+r.substring(17,20),r.substring(20,32)].join("-")}}class n_ extends Z{getValidationSchema(){return _.z.object({id:_.z.string().min(1),description:_.z.string().optional(),name:_.z.string().min(1),pageType:_.z.string().min(1),previewImage:_.z.string().optional(),previewImageUrl:_.z.string().optional()})}async execute(t){var w;if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r,userId:n}=this.context,{id:a,description:o,name:s,pageType:i,previewImage:l,previewImageUrl:u}=t,{data:c,error:p}=await N(()=>S.query.libraries.findFirst({where:m.eq(K.app,r),columns:{id:!0}}));if(p)throw new b("Failed to fetch site library","GET_SITE_LIBRARY_FAILED",p);if(!c)throw new b("Library not found for this app","GET_SITE_LIBRARY_FAILED");let d=u;if(l){const I=ya("UPLOAD_TO_STORAGE");I==null||I.setContext(this.context);const P=`template-${Date.now()}.webp`,C=`${r}/templates`,h=await(I==null?void 0:I.execute({file:l,fileName:P,contentType:"image/webp",folder:C}));if(h!=null&&h.error)throw new b("Failed to upload preview image","UPLOAD_PREVIEW_FAILED",h.error);d=((w=h==null?void 0:h.data)==null?void 0:w.url)||u}const{data:v,error:E}=await N(()=>S.insert(te).values({library:c.id,user:n??null,pageId:a,description:o??null,name:s+" Template",pageType:i,preview:d??null}).returning({id:te.id,library:te.library,pageType:te.pageType,pageId:te.pageId,description:te.description,preview:te.preview}));if(E||!v||v.length===0)throw new b("Failed to mark page as template","UPDATE_FAILED",E);return v[0]}}class a_ extends Z{constructor(){super(...arguments);Ie(this,"appId","");Ie(this,"userId","")}getValidationSchema(){return _.z.object({ids:_.z.array(_.z.string()).optional()})}async execute(r){this.validateContext(),this.appId=this.context.appId,this.userId=this.context.userId??"";try{const n=r.ids??[];if(n.length===0)throw new b("IDS_REQUIRED","At least one page ID or THEME must be provided");const a=await Promise.all(n.map(o=>o==="THEME"?this.publishTheme():this.publishPage(o)));return await this.clearChanges(n),{tags:j.uniq(j.flattenDeep(a))}}catch(n){return this.handleExecutionError(n)}}validateContext(){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET")}async publishTheme(){const r=await this.cloneApp(),{error:n}=await N(()=>S.delete(pr).where(m.eq(pr.id,this.appId)));if(n)throw new b("Error deleting online theme","ERROR_PUBLISHING_THEME",n);const{error:a}=await N(()=>S.insert(pr).values({...r,changes:null}));if(a)throw new b("Error inserting online theme","ERROR_PUBLISHING_THEME",a);const{error:o}=await N(()=>S.update(me).set({changes:null}).where(m.eq(me.id,this.appId)));if(o)throw new b("Error updating theme","ERROR_PUBLISHING_THEME",o);return[`website-settings-${this.appId}`]}async cloneApp(){const{data:r,error:n}=await N(()=>S.query.apps.findFirst({where:m.eq(me.id,this.appId)}));if(n||!r)throw new b("Site not found","SITE_NOT_FOUND",n);return r}async clearChanges(r){const n=r.filter(o=>o!=="THEME");if(n.length===0)return;const{error:a}=await N(()=>S.update(g).set({changes:null,online:!0}).where(m.and(m.inArray(g.id,n),m.eq(g.app,this.appId))));if(a)throw new b("Error clearing changes","ERROR_CLEARING_CHANGES",a)}async getPartialBlockUsage(r){const{data:n}=await N(()=>S.query.appPagesOnline.findMany({where:m.and(m.eq(ge.app,this.appId),m.like(ge.partialBlocks,`%${r}%`)),columns:{id:!0}}));return j.uniq(n??[]).map(a=>a.id).map(a=>`page-${a}`)}async publishPage(r){const n=await this.clonePage(r);await this.addOnlinePage(n);const a=[`page-${n.primaryPage??n.id}`];return j.isEmpty(n.slug)&&a.push(...await this.getPartialBlockUsage(n.primaryPage??n.id)),a}async createRevision(r){const{data:n,error:a}=await N(()=>S.query.appPagesOnline.findFirst({where:m.eq(ge.id,r)}));if(a||!n||!j.isEmpty(n.primaryPage))return!1;const{error:o}=await N(()=>S.insert(Se).values({...n,type:"published",uid:void 0}));if(o)throw new b("Error creating revision","ERROR_CREATING_REVISION",o);return!0}async addOnlinePage(r){await this.createRevision(r.id);const{error:n}=await N(()=>S.delete(ge).where(m.eq(ge.id,r.id)));if(n)throw new b("Error deleting online page","ERROR_PUBLISHING_PAGE",n);const{changes:a,createdAt:o,...s}=r,{data:i,error:l}=await N(()=>S.insert(ge).values({...s,currentEditor:this.userId}).returning({id:ge.id,primaryPage:ge.primaryPage}));if(l||!i||i.length===0)throw new b("Error publishing page","ERROR_PUBLISHING_PAGE",l);return i[0]}async clonePage(r){const{data:n,error:a}=await N(()=>S.query.appPages.findFirst({where:m.and(m.eq(g.id,r),m.eq(g.app,this.appId))}));if(a||!n)throw new b("Page not found","PAGE_NOT_FOUND",a);return n}handleExecutionError(r){throw r instanceof b?r:new b(`Failed to publish changes: ${r instanceof Error?r.message:"Unknown error"}`,"PUBLISH_CHANGES_FAILED")}}class o_ extends Z{getValidationSchema(){return _.z.object({revisionId:_.z.string().nonempty(),discardCurrent:_.z.boolean(),pageId:_.z.string().optional()})}async execute(t){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context;let n,a;if(t.revisionId==="current"){if(!t.pageId)throw new b("pageId is required when restoring current revision","PAGE_ID_REQUIRED");const{data:o,error:s}=await N(()=>S.query.appPagesOnline.findFirst({where:m.and(m.eq(ge.id,t.pageId),m.eq(ge.app,r)),columns:{id:!0,blocks:!0}}));if(s)throw new b("Error fetching live page","FETCH_ERROR");if(!o)throw new b("Live page not found","PAGE_NOT_FOUND");n=o.id,a=o.blocks}else{const{data:o,error:s}=await N(()=>S.query.appPagesRevisions.findFirst({where:m.and(m.eq(Se.uid,t.revisionId),m.eq(Se.app,r)),columns:{id:!0,blocks:!0,type:!0}}));if(s)throw new b("Error fetching revision","FETCH_ERROR");if(!o)throw new b("Revision not found","REVISION_NOT_FOUND");n=o.id,a=o.blocks}if(!t.discardCurrent){const{data:o,error:s}=await N(()=>S.query.appPages.findFirst({where:m.and(m.eq(g.id,n),m.eq(g.app,r))}));if(s)throw new b("Error fetching current page","FETCH_ERROR");if(!o)throw new b("Current page not found","PAGE_NOT_FOUND");const i=o.blocks,l={id:n,blocks:i,type:"draft",createdAt:"now()",...j.pick(o,["name","slug","pageType","lang","app","currentEditor"])};await S.insert(Se).values(l)}return await S.update(g).set({blocks:a}).where(m.eq(g.id,n)),{success:!0,pageId:n}}}class s_ extends Z{getValidationSchema(){return _.z.object({pageType:_.z.string(),query:_.z.string()})}async execute(t){try{const{pageType:r,query:n}=t,a=ut.getChaiPageType(r);if(!a)return{error:"Page type not found"};if(a.search){const o=await a.search(n);return o instanceof Error?{error:o.message}:o}return[]}catch(r){return this.handleError(r)}}}class i_ extends Z{getValidationSchema(){return _.z.object({pageType:_.z.string().min(1),query:_.z.string().optional()})}async execute(t){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context,{pageType:n,query:a=""}=t,o=this.isUUID(a),s=[m.eq(g.app,r),m.isNull(g.primaryPage),m.eq(g.pageType,n)];let i;a?o?i=m.and(...s,m.eq(g.id,a)):i=m.and(...s,m.or(m.ilike(g.slug,`%${a}%`),m.ilike(g.name,`%${a}%`))):i=m.and(...s);const{data:l,error:u}=await N(()=>S.select({id:g.id,slug:g.slug,name:g.name}).from(g).where(i));if(u)throw new b("Failed to search pages","ERROR_SEARCHING_PAGES",u);return l||[]}isUUID(t){return t.length===36}}class l_ extends Z{constructor(){super(...arguments);Ie(this,"appId","")}getValidationSchema(){return _.z.object({id:_.z.string().min(1,"Page ID is required")})}async execute(r){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");this.appId=this.context.appId;try{return await this.takeOffline(r.id)}catch(n){if(n instanceof b)throw n;const a=n instanceof Error?n.message:"Failed to take page offline";throw new b(a,"TAKE_OFFLINE_ERROR")}}async takeOffline(r){const n=await this.getPageType(r),{error:a}=await N(()=>S.update(g).set({online:!1}).where(m.and(m.eq(g.id,r),m.eq(g.app,this.appId))));if(a)throw new b("Error taking page offline","ERROR_TAKING_PAGE_OFFLINE");if(await this.deleteOnlinePage(r),n==="language")return{tags:[`page-${await this.getPrimaryPage(r)}`]};if(n==="partial")return{tags:[...(await this.getPartialBlockUsage(r)).map(l=>`page-${l}`)]};const{data:o,error:s}=await N(()=>S.select({id:g.id,slug:g.slug,lang:g.lang,pageType:g.pageType,name:g.name,online:g.online,seo:g.seo}).from(g).where(m.eq(g.id,r)));if(s||!o||o.length===0)throw new b("Error getting page after taking offline","ERROR_TAKING_PAGE_OFFLINE");return{tags:[`page-${r}`],page:o[0]}}async deleteOnlinePage(r){const{error:n}=await N(()=>S.delete(ge).where(m.eq(ge.id,r)));if(n)throw new b("Error deleting page from online pages table","ERROR_DELETING_PAGE_FROM_ONLINE_PAGES_TABLE");const{error:a}=await N(()=>S.delete(ge).where(m.eq(ge.primaryPage,r)));if(a)throw new b("Error deleting page from online pages table","ERROR_DELETING_PAGE_FROM_ONLINE_PAGES_TABLE")}async getPageType(r){const{data:n,error:a}=await N(()=>S.select({primaryPage:g.primaryPage,pageType:g.pageType,slug:g.slug}).from(g).where(m.and(m.eq(g.id,r),m.eq(g.app,this.appId))));if(a||!n||n.length===0)throw new b("Page not found","PAGE_NOT_FOUND");const o=n[0];return(i=>!i||i.trim()==="")(o.slug)?"partial":o.primaryPage?"language":"primary"}async getPrimaryPage(r){const{data:n,error:a}=await N(()=>S.select({id:g.id,primaryPage:g.primaryPage}).from(g).where(m.and(m.eq(g.id,r),m.eq(g.app,this.appId))));if(a||!n||n.length===0)throw new b("Error getting primary page","ERROR_GETTING_PRIMARY_PAGE");const o=n[0];return o.primaryPage??o.id}async getPartialBlockUsage(r){const{data:n,error:a}=await N(()=>S.select({id:g.id,partialBlocks:g.partialBlocks}).from(g).where(m.eq(g.app,this.appId)));return a||!n?[]:n.filter(o=>(o.partialBlocks||"").split("|").includes(r)).map(o=>o.id)}}class u_ extends Z{getValidationSchema(){return _.z.object({id:_.z.string().min(1)})}async execute(t){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{id:r}=t,{error:n}=await N(()=>S.delete(te).where(m.eq(te.pageId,r)));if(n)throw new b("Failed to unmark page as template","DELETE_FAILED",n);return{success:!0}}}class c_{constructor(t){Ie(this,"appId");Ie(this,"pageTreeBuilder");this.appId=t}updateNodeSlugInTree(t,r,n){for(const a of n){if(a.id===t)return a.slug=r,!0;if(a.children&&a.children.length>0&&this.updateNodeSlugInTree(t,r,a.children))return!0}return!1}validateSlugAvailabilityInTree(t,r,n,a,o=!1){const s=i=>{for(const l of i){const u=l.dynamic??!1;if(l.slug===t&&l.id!==r&&u===n||l.children&&l.children.length>0&&s(l.children))return!0}return!1};if(s(a.primaryTree)){const i=o?`Slug '${t}' conflicts with a primary page slug. Language page slugs cannot overlap with primary page slugs.`:`Slug '${t}' is already in use. Please choose another slug`;throw new b(i,"SLUG_ALREADY_EXISTS")}if(s(a.languageTree)){const i=o?`Slug '${t}' is already in use by another language page. Please choose another slug.`:`Slug '${t}' conflicts with a language page slug. Please choose another slug.`;throw new b(i,"SLUG_ALREADY_EXISTS")}}async isSlugChanged(t,r){if(!r)return!1;const{data:n,error:a}=await N(()=>S.select({slug:g.slug}).from(g).where(m.and(m.eq(g.id,t),m.eq(g.app,this.appId))).limit(1));if(a||!n||n.length===0)return!1;const o=n[0];return(o==null?void 0:o.slug)!==r}async isParentChanged(t,r){if(r===void 0)return!1;const{data:n,error:a}=await N(()=>S.select({parent:g.parent}).from(g).where(m.and(m.eq(g.id,t),m.eq(g.app,this.appId))).limit(1));if(a||!n||n.length===0)return!1;const o=n[0];return(o==null?void 0:o.parent)!==r}async handleSlugChangeWithTree(t,r){const n=r.slug;this.pageTreeBuilder||(this.pageTreeBuilder=new Ir(this.appId));const a=await this.pageTreeBuilder.getPagesTree();let o=this.pageTreeBuilder.findPageInPrimaryTree(t,a.primaryTree);if(!o&&(o=this.pageTreeBuilder.findPageInLanguageTree(t,a.languageTree),!o))throw new b("Page not found in tree","PAGE_NOT_FOUND_IN_TREE");const s=o.slug,i=o.dynamic||!1;this.validateSlugAvailabilityInTree(n,t,i,a);let l=[];const u=this.pageTreeBuilder.collectNestedChildSlugs(o,s,n);return l=[{id:t,newSlug:n},...u.map(c=>({id:c.id,newSlug:c.newSlug}))],l}async handleParentChangeWithTree(t,r){const n=r.parent;this.pageTreeBuilder||(this.pageTreeBuilder=new Ir(this.appId));const a=await this.pageTreeBuilder.getPagesTree(),o=this.pageTreeBuilder.findPageInPrimaryTree(t,a.primaryTree);if(!o)throw this.pageTreeBuilder.findPageInLanguageTree(t,a.languageTree)?new b("Cannot change parent of language pages directly","INVALID_OPERATION"):new b("Primary page not found in tree","PAGE_NOT_FOUND_IN_TREE");const s=o.slug,i=r.slug?r.slug:this.pageTreeBuilder.calculateSlugFromParent(n,s,a.primaryTree);this.validateSlugAvailabilityInTree(i,t,o.dynamic||!1,a),this.updateNodeSlugInTree(t,i,a.primaryTree);const l=this.pageTreeBuilder.collectNestedChildSlugs(o,s,i),u=[{id:t,newSlug:i},...l.map(d=>({id:d.id,newSlug:d.newSlug}))];for(const d of l)this.updateNodeSlugInTree(d.id,d.newSlug,a.primaryTree);const c=this.pageTreeBuilder.findLanguagePagesForPrimary(t,a.languageTree);let p;n&&(p=this.pageTreeBuilder.findLanguagePagesForPrimary(n,a.languageTree));for(const d of c){const v=p==null?void 0:p.filter(P=>P.lang===d.lang)[0],E=(v==null?void 0:v.id)||null,w=this.pageTreeBuilder.calculateSlugFromParent(E,d.slug,a.languageTree);this.validateSlugAvailabilityInTree(w,d.id,d.dynamic||!1,a,!0),this.updateNodeSlugInTree(d.id,w,a.languageTree);const I=this.pageTreeBuilder.collectNestedChildSlugs(d,d.slug,w);for(const P of I)this.updateNodeSlugInTree(P.id,P.newSlug,a.languageTree);u.push({id:d.id,newSlug:w}),u.push(...I.map(P=>({id:P.id,newSlug:P.newSlug})))}return u}async batchUpdateSlugs(t,r,n,a){const o=t.map(async i=>{const l={slug:i.newSlug,lastSaved:m.sql`now()`};if(i.id===n){const c=j.pick(r,["name","seo","blocks","currentEditor","buildTime","parent","pageType","dynamic","dynamicSlugCustom","links","partialBlocks","designTokens"]);Object.keys(c).forEach(p=>{c[p]===void 0&&delete c[p]}),Object.assign(l,{...c,changes:a})}const{error:u}=await N(()=>S.update(g).set(l).where(m.and(m.eq(g.id,i.id),m.eq(g.app,this.appId))));if(u)throw new b(`Failed to update page ${i.id}`,"UPDATE_PAGE_FAILED");return i.id});await Promise.all(o);const s=t.map(async i=>{await N(()=>S.update(ge).set({slug:i.newSlug}).where(m.and(m.eq(ge.id,i.id),m.eq(ge.app,this.appId))))});await Promise.all(s)}setPageTreeBuilder(t){this.pageTreeBuilder=t}}class d_ extends Z{constructor(){super(...arguments);Ie(this,"appId","");Ie(this,"pageTreeBuilder");Ie(this,"slugChangeHandler")}getValidationSchema(){return _.z.object({id:_.z.string().nonempty(),blocks:_.z.array(_.z.any()).optional(),currentEditor:_.z.string().optional(),slug:_.z.string().optional(),name:_.z.string().optional(),seo:_.z.record(_.z.string(),_.z.any()).optional(),buildTime:_.z.boolean().optional(),parent:_.z.union([_.z.string(),_.z.null()]).optional(),pageType:_.z.string().optional(),dynamic:_.z.boolean().optional(),dynamicSlugCustom:_.z.string().optional(),needTranslations:_.z.boolean().optional()})}async execute(r){this.validateContext(),this.appId=this.context.appId;try{if(this.isOnlyBlocksUpdate(r))return await this.updateBlocks(r.id,r.blocks),await this.buildResponse(r.id,r);const n=this.extractAllowedPageFields(r);this.slugChangeHandler=new c_(this.appId);const a=await this.slugChangeHandler.isSlugChanged(r.id,n.slug);return await this.slugChangeHandler.isParentChanged(r.id,n.parent)&&n.parent!==void 0?(this.pageTreeBuilder=new Ir(this.appId),this.slugChangeHandler.setPageTreeBuilder(this.pageTreeBuilder),await this.handleParentChangeWithHandler(r.id,n)):a&&n.slug?(this.pageTreeBuilder=new Ir(this.appId),this.slugChangeHandler.setPageTreeBuilder(this.pageTreeBuilder),await this.handleSlugChangeWithHandler(r.id,n)):await this.updatePageInDatabase(r.id,n),await this.buildResponse(r.id,n)}catch(n){return this.handleExecutionError(n)}}async updateBlocks(r,n){const a=this.getLinks(n),o=this.getPartialBlocks(n),s=this.getDesignTokens(n);console.log({links:a,partials:o,designTokens:s}),await this.updatePageInDatabase(r,{blocks:n,links:a,partialBlocks:o,designTokens:s})}getPartialBlocks(r){return j.compact(r.filter(n=>n._type==="GlobalBlock"||n._type==="PartialBlock").map(n=>j.get(n,"partialBlockId",j.get(n,"globalBlock",!1)))).join("|")}getLinks(r){const n=JSON.stringify(r),a=/pageType:[^:]+:([a-f0-9-]{36})/gi,o=[];let s;for(;(s=a.exec(n))!==null;)s[1]&&o.push(s[1]);return j.compact(o).join("|")}getDesignTokens(r){const n=/dt#[^ "]+/g,a={};for(const o of r){const s=JSON.stringify(o);let i;for(;(i=n.exec(s))!==null;)if(i[0]){const l=i[0];a[l]||(a[l]={}),a[l][o._id]=o._name||o._type}}return a}validateContext(){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET")}extractAllowedPageFields(r){return j.pick(r,["slug","name","seo","blocks","currentEditor","buildTime","parent","pageType","dynamic","dynamicSlugCustom"])}async handleSlugChangeWithHandler(r,n){const a=await this.slugChangeHandler.handleSlugChangeWithTree(r,n),o=this.determineChangeTypes(n);await this.slugChangeHandler.batchUpdateSlugs(a,n,r,o)}async handleParentChangeWithHandler(r,n){const a=await this.slugChangeHandler.handleParentChangeWithTree(r,n),o=this.determineChangeTypes(n);await this.slugChangeHandler.batchUpdateSlugs(a,n,r,o)}determineChangeTypes(r){const n=[],a=j.keys(r);return a.includes("blocks")&&n.push("Page"),a.includes("seo")&&n.push("SEO"),n.length>0?n:["Updated"]}async updatePageInDatabase(r,n){const a=this.determineChangeTypes(n),{error:o}=await N(()=>S.update(g).set({...n,changes:a,lastSaved:m.sql`now()`}).where(m.and(m.eq(g.id,r),m.eq(g.app,this.appId))));if(o)throw new b("Error updating page","ERROR_UPDATING_PAGE")}isOnlyBlocksUpdate(r){return j.keys(r).includes("blocks")}async fetchUpdatedPageData(r){const{data:n,error:a}=await N(()=>S.select({id:g.id,slug:g.slug,lang:g.lang,pageType:g.pageType,name:g.name,online:g.online,parent:g.parent,seo:g.seo}).from(g).where(m.eq(g.id,r)).limit(1));if(a||!n||n.length===0)throw new b("Error getting updated page","ERROR_GETTING_PAGE");return n[0]}async buildResponse(r,n){return this.isOnlyBlocksUpdate(n)?{success:!0}:{page:await this.fetchUpdatedPageData(r)}}handleExecutionError(r){throw console.log("Error updating page:",r),r instanceof b?r:new b(`Failed to update page: ${r instanceof Error?r.message:"Unknown error"}`,"UPDATE_PAGE_FAILED")}}class p_ extends Z{getValidationSchema(){return _.z.object({id:_.z.string().nonempty(),metadata:_.z.record(_.z.string(),_.z.any())})}async execute(t){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context,{data:n,error:a}=await N(()=>S.query.appPages.findFirst({where:m.and(m.eq(g.id,t.id),m.eq(g.app,r)),columns:{id:!0}}));if(a)throw new b(`Failed to fetch page: ${a.message}`,"FETCH_FAILED");if(!n)throw new b("Page not found","PAGE_NOT_FOUND");const{error:o}=await N(()=>S.update(g).set({metadata:t.metadata}).where(m.and(m.eq(g.id,t.id),m.eq(g.app,r))));if(o)throw console.error(o),new b("Failed to update page metadata","UPDATE_FAILED");return{success:!0}}}class f_ extends Z{getValidationSchema(){return _.z.object({data:_.z.record(_.z.string(),_.z.any())})}async execute(t){if(!this.context)throw re("CONTEXT_NOT_SET",new Error("CONTEXT_NOT_SET"));const{appId:r}=this.context,{data:n}=t,{data:a,error:o}=await N(()=>S.select({configData:me.configData}).from(me).where(m.eq(me.id,r)).limit(1));if(o)throw re("ERROR_UPDATE_WEBSITE_DATA",o);if(!a||a.length===0)throw re("APP_NOT_FOUND",new Error("App not found"));const s=j.first(a),l={...(s==null?void 0:s.configData)??{},...n},{error:u}=await N(()=>S.update(me).set({configData:l,changes:["Updated"]}).where(m.eq(me.id,r)));if(u)throw re("ERROR_UPDATE_WEBSITE_DATA",u);return{success:!0}}}class g_ extends Z{getValidationSchema(){return _.z.object({settings:_.z.any()})}async execute(t){if(!this.context)throw re("CONTEXT_NOT_SET",new Error("CONTEXT_NOT_SET"));const{appId:r}=this.context,a={...j.pick(t.settings,["theme","designTokens"]),changes:["Updated"]},{error:o}=await N(()=>S.update(me).set(a).where(m.eq(me.id,r)));if(o)throw re("ERROR_UPDATE_WEBSITE_SETTINGS",o);return{success:!0}}}class m_ extends Z{getValidationSchema(){return _.z.object({name:_.z.string().min(1),group:_.z.string().min(1),blocks:_.z.array(_.z.any()),description:_.z.string().optional(),previewImage:_.z.string().optional(),id:_.z.string().optional(),previewImageUrl:_.z.string().optional()})}async execute(t){var E;if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r,userId:n}=this.context,{name:a,group:o,blocks:s,description:i,previewImage:l,previewImageUrl:u,id:c}=t,{data:p,error:d}=await N(()=>S.query.libraries.findFirst({where:m.eq(K.app,r),columns:{id:!0}}));if(d)throw new b("Failed to fetch site library","GET_SITE_LIBRARY_FAILED",d);if(!p)throw new b("Library not found for this app","GET_SITE_LIBRARY_FAILED");let v=u;if(l){const w=ya("UPLOAD_TO_STORAGE");w==null||w.setContext(this.context);const I=`library-item-${Date.now()}.webp`,P=`${r}/library-items`,C=await(w==null?void 0:w.execute({file:l,fileName:I,contentType:"image/webp",folder:P}));if(C!=null&&C.error)throw new b("Failed to upload preview image","UPLOAD_PREVIEW_FAILED",C.error);v=((E=C==null?void 0:C.data)==null?void 0:E.url)||u}if(c){const w={name:a,blocks:s,library:p.id,description:i??null,group:o,user:n??null};v&&(w.preview=v);const{data:I,error:P}=await N(()=>S.update(ne).set(w).where(m.eq(ne.id,c)).returning());if(P||!I||I.length===0)throw new b("Failed to update library item","UPDATE_LIBRARY_ITEM_FAILED",P);return I[0]}else{const w=gu.randomUUID(),I=[...s];j.set(I,"0._libBlockId",w);const P={id:w,name:a,blocks:I,library:p.id,description:i??null,group:o,user:n??null,preview:v??null},{data:C,error:h}=await N(()=>S.insert(ne).values(P).returning());if(h||!C||C.length===0)throw new b("Failed to create library item","CREATE_LIBRARY_ITEM_FAILED",h);return C[0]}}}const At=class At{constructor(){Ie(this,"actions",{});ut.registerChaiPageType("page",{name:"Static Page",icon:'<svg stroke="currentColor" fill="currentColor" strokeWidth="0" viewBox="0 0 24 24" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M5 8V20H19V8H5ZM5 6H19V4H5V6ZM20 22H4C3.44772 22 3 21.5523 3 21V3C3 2.44772 3.44772 2 4 2H20C20.5523 2 21 2.44772 21 3V21C21 21.5523 20.5523 22 20 22ZM7 10H11V14H7V10ZM7 16H17V18H7V16ZM13 11H17V13H13V11Z"></path></svg>'}),ut.registerChaiPartialType("global",{name:"Global Block",helpText:"A global block can be reused in multiple pages.",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-hash-icon lucide-hash"><line x1="4" x2="20" y1="9" y2="9"/><line x1="4" x2="20" y1="15" y2="15"/><line x1="10" x2="8" y1="3" y2="21"/><line x1="16" x2="14" y1="3" y2="21"/></svg>'}),this.register("ASK_AI",new Sv),this.register("CREATE_PAGE",new Nv),this.register("DELETE_PAGE",new Ov),this.register("DUPLICATE_PAGE",new Rv),this.register("RESTORE_PAGE_REVISION",new o_),this.register("UPDATE_PAGE_METADATA",new p_),this.register("GENERATE_SEO_FIELD",new $v),this.register("GENERATE_HTML_FROM_PROMPT",new Dv),this.register("GET_REVISION_PAGE",new Kv),this.register("UPDATE_PAGE",new d_),this.register("GET_COMPARE_DATA",new jv),this.register("GET_SITE_WIDE_USAGE",new Qv),this.register("GET_WEBSITE_DRAFT_SETTINGS",new r_),this.register("GET_WEBSITE_PAGES",new t_),this.register("GET_LIBRARIES",new Bv),this.register("GET_DRAFT_PAGE",new qv),this.register("GET_LANGUAGE_PAGES",new Gv),this.register("UPSERT_LIBRARY_ITEM",new m_),this.register("MARK_AS_TEMPLATE",new n_),this.register("GET_LIBRARY_ITEM",new Hv),this.register("GET_LIBRARY_ITEMS",new Jv),this.register("DELETE_LIBRARY_ITEM",new Av),this.register("UNMARK_AS_TEMPLATE",new u_),this.register("GET_TEMPLATES_BY_TYPE",new e_),this.register("SEARCH_PAGES",new i_),this.register("GET_PAGE_REVISIONS",new Yv),this.register("PUBLISH_CHANGES",new a_),this.register("UPDATE_WEBSITE_SETTINGS",new g_),this.register("TAKE_OFFLINE",new l_),this.register("GET_CHANGES",new Lv),this.register("UPDATE_WEBSITE_DATA",new f_),this.register("GET_LIBRARY_GROUPS",new Vv),this.register("DELETE_PAGE_REVISION",new xv),this.register("GET_COLLECTIONS",new Uv),this.register("GET_BLOCK_ASYNC_PROPS",new Mv),this.register("GET_BUILDER_PAGE_DATA",new Fv),this.register("GET_PAGE_TYPES",new Wv),this.register("SEARCH_PAGE_TYPE_ITEMS",new s_),this.register("GET_DYNAMIC_PAGES",new Zv),this.register("GET_ROLE_AND_PERMISSIONS",new Xv)}static getInstance(){return At.instance||(At.instance=new At),At.instance}register(t,r){this.actions[t]=r}registerActions(t){for(const[r,n]of Object.entries(t))this.register(r,n)}getAction(t){return j.get(this.actions,t)}getAllActions(){return this.actions}};Ie(At,"instance");let on=At;const ya=e=>on.getInstance().getAction(e),h_=on.getInstance();exports.ActionError=b;exports.ChaiBaseAction=Z;exports.actionsRegistery=h_;exports.db=S;exports.getAskAiSystemPrompt=eu;exports.getChaiAction=ya;exports.safeQuery=N;exports.schema=ru;
|
|
418
|
+
Language: ${t.lang}`})).text}}}class Fv extends Z{getValidationSchema(){return _.z.object({block:_.z.any(),pageProps:_.z.any().optional().default({}),lang:_.z.string()})}async execute(t){var r;try{const{block:n,pageProps:a,lang:o}=t,s=n._type;if(s==="Repeater"&&((r=n==null?void 0:n.repeaterItems)!=null&&r.includes("{{#"))){const u=n.repeaterItems.replace("{{#","").replace("}}",""),c=ut.getChaiCollection(u);return c?await(c==null?void 0:c.fetch({block:n,pageProps:a,lang:o,draft:!0,inBuilder:!0}))??[]:[]}const i=gu.getRegisteredChaiBlock(s);return!i||!j.isFunction(i.dataProvider)?{}:await i.dataProvider({block:n,pageProps:a,lang:o,draft:!0,inBuilder:!0})??{}}catch(n){return this.handleError(n)}}}class Lv extends Z{getValidationSchema(){return _.z.object({lang:_.z.string(),pageType:_.z.string().optional(),pageProps:_.z.any().optional().default({})})}async execute(t){try{const{lang:r,pageType:n,pageProps:a={}}=t,o=await ut.getChaiGlobalData({lang:r,draft:!0,inBuilder:!0});if(!n)return{global:o};const s=ut.getChaiPageType(n);return s?{...s.dataProvider?await s.dataProvider({lang:r,draft:!0,inBuilder:!0,pageProps:a}):{},global:o}:{global:o}}catch(r){return this.handleError(r)}}}class Uv extends Z{constructor(){super(...arguments);Ee(this,"appId","")}getValidationSchema(){return _.z.object({})}async execute(){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");this.appId=this.context.appId;try{return await this.getChanges()}catch(r){if(r instanceof b)throw r;const n=r instanceof Error?r.message:"Failed to get changes";throw new b(n,"GET_CHANGES_ERROR")}}async getChanges(){const{data:r,error:n}=await A(()=>S.select({id:g.id,slug:g.slug,name:g.name,pageType:g.pageType,lang:g.lang,changes:g.changes,primaryPage:g.primaryPage,online:g.online,currentEditor:g.currentEditor}).from(g).where(m.and(m.eq(g.app,this.appId),m.isNotNull(g.changes))));if(n)throw new b("Error getting changed pages","ERROR_GETTING_CHANGES");const{data:a,error:o}=await A(()=>S.select({id:g.id,slug:g.slug,name:g.name,pageType:g.pageType,lang:g.lang,changes:g.changes,primaryPage:g.primaryPage,online:g.online}).from(g).where(m.and(m.eq(g.app,this.appId),m.isNull(g.currentEditor),m.eq(g.online,!1))));if(o)throw new b("Error getting offline pages","ERROR_GETTING_OFFLINE_PAGES");const s=(a||[]).map(p=>({...p,changes:["Take Online"]})),l=[...(r||[]).filter(p=>!s.some(d=>d.id===p.id)).map(p=>({...p,changes:p.changes})),...s],{data:u,error:c}=await A(()=>S.select({changes:Ae.changes}).from(Ae).where(m.and(m.eq(Ae.id,this.appId),m.isNotNull(Ae.changes))));return!c&&u&&u.length>0&&l.push({id:"THEME",slug:"",name:"Theme",pageType:"theme",lang:"",changes:["Updated"],primaryPage:null,online:!0}),l}}class jv extends Z{getValidationSchema(){return _.z.object({})}async execute(){try{return ut.getChaiCollections().map(r=>j.omit(r,"fetch"))}catch(t){return this.handleError(t)}}}class qv extends Z{getValidationSchema(){return _.z.object({versions:_.z.object({version1:_.z.object({type:_.z.enum(["draft","revision","live"]),id:_.z.string()}),version2:_.z.object({type:_.z.enum(["draft","revision","live"]),id:_.z.string()})})})}async execute(t){this.validateContext();const r=await this.getBlocksForVersion(t.versions.version1.type,t.versions.version1.id),n=await this.getBlocksForVersion(t.versions.version2.type,t.versions.version2.id);return{version1:{blocks:r.blocks,seo:r.seo},version2:{blocks:n.blocks,seo:n.seo}}}async getBlocksForVersion(t,r){let n,a;switch(t){case"draft":({data:n,error:a}=await A(()=>S.query.appPages.findFirst({where:m.eq(g.id,r),columns:{blocks:!0,seo:!0}})));break;case"live":({data:n,error:a}=await A(()=>S.query.appPagesOnline.findFirst({where:m.eq(ge.id,r),columns:{blocks:!0,seo:!0}})));break;case"revision":({data:n,error:a}=await A(()=>S.query.appPagesRevisions.findFirst({where:m.eq(Ie.uid,r),columns:{blocks:!0,seo:!0}})));break;default:throw new b(`Invalid version type: ${t}`,"INVALID_VERSION_TYPE")}if(a)throw new b(`Failed to fetch blocks for ${t} version: ${a.message}`,"FETCH_BLOCKS_ERROR");if(!n)throw new b(`No data found for ${t} version with id: ${r}`,"VERSION_NOT_FOUND");return{blocks:n.blocks||[],seo:n.seo||{}}}validateContext(){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET")}}class Zv extends Z{getValidationSchema(){return _.z.object({id:_.z.string()})}async execute(t){var c;if(!this.context)throw ie("CONTEXT_NOT_SET",new Error("CONTEXT_NOT_SET"));const{appId:r}=this.context,{id:n}=t,a=g,{data:o,error:s}=await A(()=>S.select({id:a.id,name:a.name,slug:a.slug,lang:a.lang,primaryPage:a.primaryPage,seo:a.seo,currentEditor:a.currentEditor,pageType:a.pageType,lastSaved:a.lastSaved,dynamic:a.dynamic,parent:a.parent,blocks:a.blocks}).from(a).where(m.and(m.eq(a.app,r),m.eq(a.id,n))).limit(1));if(s)throw ie("PAGE_NOT_FOUND",s);if(!o||o.length===0)throw ie("PAGE_NOT_FOUND",new Error("Page not found"));const i=o[0],l=i.primaryPage??i.id;let u=i.blocks??[];if(l!==i.id){const{data:p,error:d}=await A(()=>S.select({blocks:a.blocks}).from(a).where(m.and(m.eq(a.app,r),m.eq(a.id,l))).limit(1));if(d)throw ie("BLOCKS_NOT_FOUND",d);u=((c=p==null?void 0:p[0])==null?void 0:c.blocks)??[]}return{...i,blocks:u,id:n,languagePageId:i.id}}}class Gv extends Z{getValidationSchema(){return _.z.object({pageType:_.z.string()})}async execute(t){try{const{pageType:r,...n}=t,a=ut.getChaiPageType(r);return a?a.getDynamicPages?await a.getDynamicPages(n):[]:{error:"Page type not found"}}catch(r){return this.handleError(r)}}}class Bv extends Z{getValidationSchema(){return _.z.object({id:_.z.string()})}async execute(t){if(!this.context)throw ie("CONTEXT_NOT_SET",new Error("CONTEXT_NOT_SET"));const{appId:r}=this.context,{id:n}=t,{data:a,error:o}=await A(()=>S.select({id:g.id,name:g.name,slug:g.slug,lang:g.lang,primaryPage:g.primaryPage,pageType:g.pageType,seo:g.seo,currentEditor:g.currentEditor,online:g.online,parent:g.parent,metadata:g.metadata,dynamic:g.dynamic,dynamicSlugCustom:g.dynamicSlugCustom}).from(g).where(m.and(m.eq(g.app,r),m.or(m.eq(g.primaryPage,n),m.eq(g.id,n)))));if(o)throw ie("LANGUAGE_PAGES_ERROR",o);return a.map(s=>j.omit(s,["app"]))}}class Vv extends Z{getValidationSchema(){return _.z.object({}).optional().default({})}async execute(){var l;if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:t}=this.context,r=await A(()=>S.select({id:K.id,name:K.name,type:K.type,createdAt:K.createdAt}).from(K).where(m.eq(K.app,t)).limit(1));if(r.error)throw new b("Failed to fetch site library","DB_ERROR");const n=r.data[0]||null,a=((l=process==null?void 0:process.env)==null?void 0:l.CHAIBUILDER_CLIENT_ID)||null;if(!a)return n?[{id:n.id,name:n.name,type:n.type,createdAt:n.createdAt,isSiteLibrary:!0}]:[];const{data:o,error:s}=await A(()=>S.select({id:K.id,name:K.name,type:K.type,createdAt:K.createdAt}).from(K).where(m.eq(K.client,a)));if(s)throw new b("Failed to fetch libraries","DB_ERROR");const i=(n==null?void 0:n.id)||null;return o.map(u=>({id:u.id,name:u.name,type:u.type,createdAt:u.createdAt,isSiteLibrary:i?u.id===i:!1}))}}class Hv extends Z{getValidationSchema(){return _.z.object({})}async execute(){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{data:t,error:r}=await A(()=>S.select({id:K.id}).from(K).where(m.eq(K.app,this.context.appId)).limit(1));if(r)throw new b("Failed to fetch site library","GET_SITE_LIBRARY_FAILED",500,r);if(!t||t.length===0)return[];const n=t[0],{data:a,error:o}=await A(()=>S.select({group:re.group}).from(re).where(m.eq(re.library,n.id)));if(o)throw new b("Failed to fetch library groups","GET_LIBRARY_GROUPS_FAILED",500,o);const s=j.map(a,"group").filter(i=>i!=null);return j.map(j.uniq(s),i=>({id:i,name:i}))}}class Jv extends Z{getValidationSchema(){return _.z.object({id:_.z.string().min(1)})}async execute(t){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context,{id:n}=t,{data:a,error:o}=await A(()=>S.select({id:re.id,name:re.name,blocks:re.blocks,library:re.library,description:re.description,group:re.group,user:re.user,preview:re.preview,createdAt:re.createdAt,html:re.html,libraryApp:K.app,libraryName:K.name}).from(re).leftJoin(K,m.eq(re.library,K.id)).where(m.eq(re.id,n)));if(o)throw new b("Failed to fetch library item","GET_LIBRARY_ITEM_FAILED",500,o);if(!a||a.length===0)throw new b("Library item not found","GET_LIBRARY_ITEM_FAILED");const s=a[0],i=Array.isArray(s.blocks)?[...s.blocks]:s.blocks;return s.libraryApp===r?j.set(i,"0._libBlockId",s.id):j.set(i,"0._libBlockId",void 0),{id:s.id,name:s.name,blocks:i,description:s.description,group:s.group,user:s.user,preview:s.preview,createdAt:s.createdAt,html:s.html}}}class Yv extends Z{getValidationSchema(){return _.z.object({id:_.z.string().min(1)})}async execute(t){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{id:r}=t,{data:n,error:a}=await A(()=>S.select({id:re.id,name:re.name,library:re.library,group:re.group,description:re.description,preview:re.preview}).from(re).where(m.eq(re.library,r)));if(a)throw new b("Failed to fetch library items","GET_LIBRARY_ITEMS_FAILED",500,a);return n||[]}}class Wv extends Z{getValidationSchema(){return _.z.object({pageId:_.z.string().min(1,"Page ID is required")})}async execute(t){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");try{return await this.getRevisions(t.pageId)}catch(r){if(r instanceof b)throw r;const n=r instanceof Error?r.message:"Failed to get page revisions";throw new b(n,"GET_PAGE_REVISIONS_ERROR")}}async getRevisions(t){const{data:r,error:n}=await A(()=>S.select({currentEditor:g.currentEditor,createdAt:g.createdAt}).from(g).where(m.and(m.eq(g.app,this.context.appId),m.eq(g.id,t)))),{data:a,error:o}=await A(()=>S.select({uid:Ie.uid,currentEditor:Ie.currentEditor,createdAt:Ie.createdAt,type:Ie.type}).from(Ie).where(m.and(m.eq(Ie.app,this.context.appId),m.eq(Ie.id,t))));if(n){const u=n instanceof Error?`Error getting current page for revisions: ${n.message}`:"Error getting current page for revisions";throw new b(u,"ERROR_GETTING_CURRENT_PAGE_FOR_REVISIONS")}if(o){const u=o instanceof Error?`Error getting page revisions: ${o.message}`:"Error getting page revisions";throw new b(u,"ERROR_GETTING_PAGE_REVISIONS")}const s=r==null?void 0:r[0],l=[...s?[{...s,type:"published",uid:"current"}]:[],...a??[]];return j.orderBy(l,["createdAt"],["desc"])}}class Kv extends Z{getValidationSchema(){return _.z.object({})}async execute(){try{return await Promise.all(ut.getChaiPageTypes().map(async r=>({key:r.key,helpText:r.helpText??"",icon:r.icon??"",dynamicSegments:r.dynamicSegments??"",dynamicSlug:r.dynamicSlug??"",hasSlug:r.hasSlug??!0,name:typeof r.name=="function"?await r.name():r.name,...j.isFunction(r.defaultTrackingInfo)?{trackingDefault:r.defaultTrackingInfo()}:{},...j.isFunction(r.defaultSeo)?{defaultSeo:r.defaultSeo()}:{},...j.isFunction(r.defaultJSONLD)?{defaultJSONLD:r.defaultJSONLD()}:{}})))}catch(t){return this.handleError(t)}}}class Xv extends Z{getValidationSchema(){return _.z.object({id:_.z.string().nonempty(),type:_.z.enum(["draft","live","revision"])})}async execute(t){if(!this.context)throw ie("CONTEXT_NOT_SET",new Error("CONTEXT_NOT_SET"));let r,n;switch(t.type){case"draft":({data:r,error:n}=await A(()=>S.query.appPages.findFirst({where:m.and(m.eq(g.id,t.id),m.eq(g.lang,t.lang??""))})));break;case"live":({data:r,error:n}=await A(()=>S.query.appPagesOnline.findFirst({where:m.and(m.eq(ge.id,t.id),m.eq(ge.lang,t.lang??""))})));break;case"revision":({data:r,error:n}=await A(()=>S.query.appPagesRevisions.findFirst({where:m.and(m.eq(Ie.uid,t.id),m.eq(Ie.lang,t.lang??""))})));break}if(n||!r)throw ie("NOT_FOUND",n||new Error("Page not found"));let a=(r==null?void 0:r.blocks)??[];return a=await this.getMergedBlocks(a,t.type==="draft",this.context.appId),{...r,blocks:a}}async getMergedBlocks(t,r,n){const a=r?g:ge,o=t.filter(({_type:c})=>c==="GlobalBlock"||c==="PartialBlock");if(o.length===0)return t;const s=o.map(c=>j.get(c,"partialBlockId",j.get(c,"globalBlock",""))).filter(c=>c!=="");if(s.length===0)return t;const{data:i,error:l}=await A(()=>S.select({id:a.id,blocks:a.blocks}).from(a).where(m.and(m.eq(a.app,n),m.inArray(a.id,s))));if(l)throw ie("PARTIAL_BLOCKS_FETCH_ERROR",l);const u=new Map;i&&i.forEach(c=>{u.set(c.id,c.blocks??[])});for(let c=0;c<o.length;c++){const p=o[c];if(!p)continue;const d=j.get(p,"partialBlockId",j.get(p,"globalBlock",""));if(d==="")continue;let v=u.get(d)??[];v.length>0&&(v=v.map(w=>(j.isEmpty(w._parent)&&(w._parent=p._parent),j.has(p,"_show")&&(w._show=p._show),w)));const E=t.indexOf(p);E!==-1&&t.splice(E,1,...v)}return t}}class Qv extends Z{getValidationSchema(){return _.z.object({})}async execute(){return{role:"admin",permissions:null}}}class e_ extends Z{getValidationSchema(){return _.z.undefined()}async execute(){if(!this.context)throw ie("CONTEXT_NOT_SET",new Error("CONTEXT_NOT_SET"));const{appId:t}=this.context,{data:r,error:n}=await A(()=>S.select({id:g.id,designTokens:g.designTokens,name:g.name,slug:g.slug,links:g.links,partialBlocks:g.partialBlocks}).from(g).where(m.and(m.eq(g.lang,""),m.eq(g.app,t))));if(n)throw ie("FETCH_SITE_DATA_FAILED",n);const a={};return j.each(r,o=>{var s;a[o.id]={name:o.name,isPartial:j.isEmpty(o.slug),partialBlocks:o.partialBlocks?(s=o.partialBlocks)==null?void 0:s.split("|").filter(Boolean):[],links:o.links?o.links.split("|").filter(Boolean):[],designTokens:o.designTokens??{}}}),a}}class t_ extends Z{getValidationSchema(){return _.z.object({pageType:_.z.string().min(1)})}async execute(t){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context,{pageType:n}=t,{data:a,error:o}=await A(()=>S.query.libraries.findFirst({where:m.eq(K.app,r),columns:{id:!0}}));if(o)throw new b("Failed to fetch site library","GET_SITE_LIBRARY_FAILED",500,o);const{data:s,error:i}=await A(()=>S.select({id:K.id}).from(K).where(m.eq(K.type,"shared")));if(i)throw new b("Failed to fetch shared libraries","GET_SHARED_LIBRARIES_FAILED",500,i);const l=[...a?[a.id]:[],...(s||[]).map(p=>p.id)];if(l.length===0)return[];const{data:u,error:c}=await A(()=>S.select({id:te.id,library:te.library,pageId:te.pageId,pageType:te.pageType,name:te.name,description:te.description,preview:te.preview,user:te.user,createdAt:te.createdAt}).from(te).where(m.and(m.eq(te.pageType,n),m.inArray(te.library,l))));if(c)throw new b("Failed to fetch templates","GET_TEMPLATES_FAILED",500,c);return u||[]}}class r_ extends Z{getValidationSchema(){return _.z.object({lang:_.z.string().optional()})}async execute(t){if(!this.context)throw ie("CONTEXT_NOT_SET",new Error("CONTEXT_NOT_SET"));const{appId:r}=this.context,a=(t??{lang:""}).lang??"",{data:o,error:s}=await A(()=>S.select({id:g.id,name:g.name,slug:g.slug,pageType:g.pageType,currentEditor:g.currentEditor,parent:g.parent,online:g.online,lastSaved:g.lastSaved,createdAt:g.createdAt,dynamic:g.dynamic,dynamicSlugCustom:g.dynamicSlugCustom,primaryPage:g.primaryPage}).from(g).where(m.and(m.eq(g.app,r),m.eq(g.lang,a))));if(s)throw ie("ERROR_GETTING_WEBSITE_PAGES",s);if(!o||o.length===0)return[];const i=o.filter(p=>!j.isEmpty(p.slug)).map(p=>p.id),{data:l,error:u}=await A(()=>S.select({pageId:te.pageId}).from(te).where(m.inArray(te.pageId,i)));if(u)throw ie("ERROR_GETTING_TEMPLATE_INFO",u);const c=new Set((l||[]).map(p=>p.pageId));return o.map(p=>({...p,pageType:p.pageType??"page",isTemplate:c.has(p.id)}))}}class n_ extends Z{getValidationSchema(){return _.z.object({draft:_.z.boolean()})}async execute(t){if(!this.context)throw ie("CONTEXT_NOT_SET",new Error("CONTEXT_NOT_SET"));const{appId:r}=this.context,{draft:n}=t,a=n?Ae:fr,{data:o,error:s}=await A(()=>S.select({theme:a.theme,fallbackLang:a.fallbackLang,languages:a.languages,settings:a.settings,designTokens:a.designTokens}).from(a).where(m.eq(a.id,r)).limit(1));if(s)throw ie("ERROR_PROJECT_CONFIG",s);if(!o||o.length===0)throw ie("PROJECT_NOT_FOUND",new Error("Project not found"));const i=j.first(o);return{...this.getDefaultSettings(),...i,fallbackLang:(i==null?void 0:i.fallbackLang)||this.getDefaultSettings().fallbackLang,languages:(i==null?void 0:i.languages)||this.getDefaultSettings().languages,theme:(i==null?void 0:i.theme)||this.getDefaultSettings().theme,appKey:this.generateDeterministicUuid(r)}}getDefaultSettings(){return{fallbackLang:"en",languages:[],theme:{colors:{card:["#FFFFFF","#09090B"],ring:["#2563EB","#3B82F6"],input:["#E4E4E7","#27272A"],muted:["#F4F4F5","#27272A"],accent:["#F4F4F5","#27272A"],border:["#E4E4E7","#27272A"],popover:["#FFFFFF","#09090B"],primary:["#2563EB","#3B82F6"],secondary:["#F4F4F5","#27272A"],background:["#FFFFFF","#09090B"],foreground:["#09090B","#FFFFFF"],destructive:["#EF4444","#7F1D1D"],"card-foreground":["#09090B","#FFFFFF"],"muted-foreground":["#71717A","#A1A1AA"],"accent-foreground":["#09090B","#FFFFFF"],"popover-foreground":["#09090B","#FFFFFF"],"primary-foreground":["#FFFFFF","#FFFFFF"],"secondary-foreground":["#09090B","#FFFFFF"],"destructive-foreground":["#FFFFFF","#FFFFFF"]},fontFamily:{body:"Roboto",heading:"Poppins"},borderRadius:"30px"},settings:{},designTokens:{}}}generateDeterministicUuid(t){const r=ss.createHash("sha256").update(t).digest("hex");return[r.substring(0,8),r.substring(8,12),"4"+r.substring(13,16),(parseInt(r.substring(16,17),16)&3|8).toString(16)+r.substring(17,20),r.substring(20,32)].join("-")}}class a_ extends Z{getValidationSchema(){return _.z.object({id:_.z.string().min(1),description:_.z.string().optional(),name:_.z.string().min(1),pageType:_.z.string().min(1),previewImage:_.z.string().optional(),previewImageUrl:_.z.string().optional()})}async execute(t){var w;if(await this.verifyAccess(),!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r,userId:n}=this.context,{id:a,description:o,name:s,pageType:i,previewImage:l,previewImageUrl:u}=t,{data:c,error:p}=await A(()=>S.query.libraries.findFirst({where:m.eq(K.app,r),columns:{id:!0}}));if(p)throw new b("Failed to fetch site library","GET_SITE_LIBRARY_FAILED",500,p);if(!c)throw new b("Library not found for this app","GET_SITE_LIBRARY_FAILED");let d=u;if(l){const I=va("UPLOAD_TO_STORAGE");I==null||I.setContext(this.context);const P=`template-${Date.now()}.webp`,C=`${r}/templates`,h=await(I==null?void 0:I.execute({file:l,fileName:P,contentType:"image/webp",folder:C}));if(h!=null&&h.error)throw new b("Failed to upload preview image","UPLOAD_PREVIEW_FAILED",500,h.error);d=((w=h==null?void 0:h.data)==null?void 0:w.url)||u}const{data:v,error:E}=await A(()=>S.insert(te).values({library:c.id,user:n??null,pageId:a,description:o??null,name:s+" Template",pageType:i,preview:d??null}).returning({id:te.id,library:te.library,pageType:te.pageType,pageId:te.pageId,description:te.description,preview:te.preview}));if(E||!v||v.length===0)throw new b("Failed to mark page as template","UPDATE_FAILED",500,E);return v[0]}}class o_ extends Z{constructor(){super(...arguments);Ee(this,"appId","");Ee(this,"userId","")}getValidationSchema(){return _.z.object({ids:_.z.array(_.z.string()).optional()})}async execute(r){await this.verifyAccess(),this.validateContext(),this.appId=this.context.appId,this.userId=this.context.userId??"";try{const n=r.ids??[];if(n.length===0)throw new b("IDS_REQUIRED","At least one page ID or THEME must be provided");const a=await Promise.all(n.map(o=>o==="THEME"?this.publishTheme():this.publishPage(o)));return await this.clearChanges(n),{tags:j.uniq(j.flattenDeep(a))}}catch(n){return this.handleExecutionError(n)}}validateContext(){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET")}async publishTheme(){const r=await this.cloneApp(),{error:n}=await A(()=>S.delete(fr).where(m.eq(fr.id,this.appId)));if(n)throw new b("Error deleting online theme","ERROR_PUBLISHING_THEME",500,n);const{error:a}=await A(()=>S.insert(fr).values({...r,changes:null}));if(a)throw new b("Error inserting online theme","ERROR_PUBLISHING_THEME",500,a);const{error:o}=await A(()=>S.update(Ae).set({changes:null}).where(m.eq(Ae.id,this.appId)));if(o)throw new b("Error updating theme","ERROR_PUBLISHING_THEME",500,o);return[`website-settings-${this.appId}`]}async cloneApp(){const{data:r,error:n}=await A(()=>S.query.apps.findFirst({where:m.eq(Ae.id,this.appId)}));if(n||!r)throw new b("Site not found","SITE_NOT_FOUND",404,n);return r}async clearChanges(r){const n=r.filter(o=>o!=="THEME");if(n.length===0)return;const{error:a}=await A(()=>S.update(g).set({changes:null,online:!0}).where(m.and(m.inArray(g.id,n),m.eq(g.app,this.appId))));if(a)throw new b("Error clearing changes","ERROR_CLEARING_CHANGES",500,a)}async getPartialBlockUsage(r){const{data:n}=await A(()=>S.query.appPagesOnline.findMany({where:m.and(m.eq(ge.app,this.appId),m.like(ge.partialBlocks,`%${r}%`)),columns:{id:!0}}));return j.uniq(n??[]).map(a=>a.id).map(a=>`page-${a}`)}async publishPage(r){const n=await this.clonePage(r);await this.addOnlinePage(n);const a=[`page-${n.primaryPage??n.id}`];return j.isEmpty(n.slug)&&a.push(...await this.getPartialBlockUsage(n.primaryPage??n.id)),a}async createRevision(r){const{data:n,error:a}=await A(()=>S.query.appPagesOnline.findFirst({where:m.eq(ge.id,r)}));if(a||!n||!j.isEmpty(n.primaryPage))return!1;const{error:o}=await A(()=>S.insert(Ie).values({...n,type:"published",uid:void 0}));if(o)throw new b("Error creating revision","ERROR_CREATING_REVISION",500,o);return!0}async addOnlinePage(r){await this.createRevision(r.id);const{error:n}=await A(()=>S.delete(ge).where(m.eq(ge.id,r.id)));if(n)throw new b("Error deleting online page","ERROR_PUBLISHING_PAGE",500,n);const{changes:a,createdAt:o,...s}=r,{data:i,error:l}=await A(()=>S.insert(ge).values({...s,currentEditor:this.userId}).returning({id:ge.id,primaryPage:ge.primaryPage}));if(l||!i||i.length===0)throw new b("Error publishing page","ERROR_PUBLISHING_PAGE",500,l);return i[0]}async clonePage(r){const{data:n,error:a}=await A(()=>S.query.appPages.findFirst({where:m.and(m.eq(g.id,r),m.eq(g.app,this.appId))}));if(a||!n)throw new b("Page not found","PAGE_NOT_FOUND",404,a);return n}handleExecutionError(r){throw r instanceof b?r:new b(`Failed to publish changes: ${r instanceof Error?r.message:"Unknown error"}`,"PUBLISH_CHANGES_FAILED")}}class s_ extends Z{getValidationSchema(){return _.z.object({revisionId:_.z.string().nonempty(),discardCurrent:_.z.boolean(),pageId:_.z.string().optional()})}async execute(t){if(await this.verifyAccess(),!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context;let n,a;if(t.revisionId==="current"){if(!t.pageId)throw new b("pageId is required when restoring current revision","PAGE_ID_REQUIRED");const{data:o,error:s}=await A(()=>S.query.appPagesOnline.findFirst({where:m.and(m.eq(ge.id,t.pageId),m.eq(ge.app,r)),columns:{id:!0,blocks:!0}}));if(s)throw new b("Error fetching live page","FETCH_ERROR");if(!o)throw new b("Live page not found","PAGE_NOT_FOUND");n=o.id,a=o.blocks}else{const{data:o,error:s}=await A(()=>S.query.appPagesRevisions.findFirst({where:m.and(m.eq(Ie.uid,t.revisionId),m.eq(Ie.app,r)),columns:{id:!0,blocks:!0,type:!0}}));if(s)throw new b("Error fetching revision","FETCH_ERROR");if(!o)throw new b("Revision not found","REVISION_NOT_FOUND");n=o.id,a=o.blocks}if(!t.discardCurrent){const{data:o,error:s}=await A(()=>S.query.appPages.findFirst({where:m.and(m.eq(g.id,n),m.eq(g.app,r))}));if(s)throw new b("Error fetching current page","FETCH_ERROR");if(!o)throw new b("Current page not found","PAGE_NOT_FOUND");const i=o.blocks,l={id:n,blocks:i,type:"draft",createdAt:"now()",...j.pick(o,["name","slug","pageType","lang","app","currentEditor"])};await S.insert(Ie).values(l)}return await S.update(g).set({blocks:a}).where(m.eq(g.id,n)),{success:!0,pageId:n}}}class i_ extends Z{getValidationSchema(){return _.z.object({pageType:_.z.string(),query:_.z.string()})}async execute(t){try{const{pageType:r,query:n}=t,a=ut.getChaiPageType(r);if(!a)return{error:"Page type not found"};if(a.search){const o=await a.search(n);return o instanceof Error?{error:o.message}:o}return[]}catch(r){return this.handleError(r)}}}class l_ extends Z{getValidationSchema(){return _.z.object({pageType:_.z.string().min(1),query:_.z.string().optional()})}async execute(t){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context,{pageType:n,query:a=""}=t,o=this.isUUID(a),s=[m.eq(g.app,r),m.isNull(g.primaryPage),m.eq(g.pageType,n)];let i;a?o?i=m.and(...s,m.eq(g.id,a)):i=m.and(...s,m.or(m.ilike(g.slug,`%${a}%`),m.ilike(g.name,`%${a}%`))):i=m.and(...s);const{data:l,error:u}=await A(()=>S.select({id:g.id,slug:g.slug,name:g.name}).from(g).where(i));if(u)throw new b("Failed to search pages","ERROR_SEARCHING_PAGES",500,u);return l||[]}isUUID(t){return t.length===36}}class u_ extends Z{constructor(){super(...arguments);Ee(this,"appId","")}getValidationSchema(){return _.z.object({id:_.z.string().min(1,"Page ID is required")})}async execute(r){if(await this.verifyAccess(),!this.context)throw new b("Context not set","CONTEXT_NOT_SET");this.appId=this.context.appId;try{return await this.takeOffline(r.id)}catch(n){if(n instanceof b)throw n;const a=n instanceof Error?n.message:"Failed to take page offline";throw new b(a,"TAKE_OFFLINE_ERROR")}}async takeOffline(r){const n=await this.getPageType(r),{error:a}=await A(()=>S.update(g).set({online:!1}).where(m.and(m.eq(g.id,r),m.eq(g.app,this.appId))));if(a)throw new b("Error taking page offline","ERROR_TAKING_PAGE_OFFLINE");if(await this.deleteOnlinePage(r),n==="language")return{tags:[`page-${await this.getPrimaryPage(r)}`]};if(n==="partial")return{tags:[...(await this.getPartialBlockUsage(r)).map(l=>`page-${l}`)]};const{data:o,error:s}=await A(()=>S.select({id:g.id,slug:g.slug,lang:g.lang,pageType:g.pageType,name:g.name,online:g.online,seo:g.seo}).from(g).where(m.eq(g.id,r)));if(s||!o||o.length===0)throw new b("Error getting page after taking offline","ERROR_TAKING_PAGE_OFFLINE");return{tags:[`page-${r}`],page:o[0]}}async deleteOnlinePage(r){const{error:n}=await A(()=>S.delete(ge).where(m.eq(ge.id,r)));if(n)throw new b("Error deleting page from online pages table","ERROR_DELETING_PAGE_FROM_ONLINE_PAGES_TABLE");const{error:a}=await A(()=>S.delete(ge).where(m.eq(ge.primaryPage,r)));if(a)throw new b("Error deleting page from online pages table","ERROR_DELETING_PAGE_FROM_ONLINE_PAGES_TABLE")}async getPageType(r){const{data:n,error:a}=await A(()=>S.select({primaryPage:g.primaryPage,pageType:g.pageType,slug:g.slug}).from(g).where(m.and(m.eq(g.id,r),m.eq(g.app,this.appId))));if(a||!n||n.length===0)throw new b("Page not found","PAGE_NOT_FOUND");const o=n[0];return(i=>!i||i.trim()==="")(o.slug)?"partial":o.primaryPage?"language":"primary"}async getPrimaryPage(r){const{data:n,error:a}=await A(()=>S.select({id:g.id,primaryPage:g.primaryPage}).from(g).where(m.and(m.eq(g.id,r),m.eq(g.app,this.appId))));if(a||!n||n.length===0)throw new b("Error getting primary page","ERROR_GETTING_PRIMARY_PAGE");const o=n[0];return o.primaryPage??o.id}async getPartialBlockUsage(r){const{data:n,error:a}=await A(()=>S.select({id:g.id,partialBlocks:g.partialBlocks}).from(g).where(m.eq(g.app,this.appId)));return a||!n?[]:n.filter(o=>(o.partialBlocks||"").split("|").includes(r)).map(o=>o.id)}}class c_ extends Z{getValidationSchema(){return _.z.object({id:_.z.string().min(1)})}async execute(t){if(await this.verifyAccess(),!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{id:r}=t,{error:n}=await A(()=>S.delete(te).where(m.eq(te.pageId,r)));if(n)throw new b("Failed to unmark page as template","DELETE_FAILED",500,n);return{success:!0}}}class d_{constructor(t){Ee(this,"appId");Ee(this,"pageTreeBuilder");this.appId=t}updateNodeSlugInTree(t,r,n){for(const a of n){if(a.id===t)return a.slug=r,!0;if(a.children&&a.children.length>0&&this.updateNodeSlugInTree(t,r,a.children))return!0}return!1}validateSlugAvailabilityInTree(t,r,n,a,o=!1){const s=i=>{for(const l of i){const u=l.dynamic??!1;if(l.slug===t&&l.id!==r&&u===n||l.children&&l.children.length>0&&s(l.children))return!0}return!1};if(s(a.primaryTree)){const i=o?`Slug '${t}' conflicts with a primary page slug. Language page slugs cannot overlap with primary page slugs.`:`Slug '${t}' is already in use. Please choose another slug`;throw new b(i,"SLUG_ALREADY_EXISTS")}if(s(a.languageTree)){const i=o?`Slug '${t}' is already in use by another language page. Please choose another slug.`:`Slug '${t}' conflicts with a language page slug. Please choose another slug.`;throw new b(i,"SLUG_ALREADY_EXISTS")}}async isSlugChanged(t,r){if(!r)return!1;const{data:n,error:a}=await A(()=>S.select({slug:g.slug}).from(g).where(m.and(m.eq(g.id,t),m.eq(g.app,this.appId))).limit(1));if(a||!n||n.length===0)return!1;const o=n[0];return(o==null?void 0:o.slug)!==r}async isParentChanged(t,r){if(r===void 0)return!1;const{data:n,error:a}=await A(()=>S.select({parent:g.parent}).from(g).where(m.and(m.eq(g.id,t),m.eq(g.app,this.appId))).limit(1));if(a||!n||n.length===0)return!1;const o=n[0];return(o==null?void 0:o.parent)!==r}async handleSlugChangeWithTree(t,r){const n=r.slug;this.pageTreeBuilder||(this.pageTreeBuilder=new Sr(this.appId));const a=await this.pageTreeBuilder.getPagesTree();let o=this.pageTreeBuilder.findPageInPrimaryTree(t,a.primaryTree);if(!o&&(o=this.pageTreeBuilder.findPageInLanguageTree(t,a.languageTree),!o))throw new b("Page not found in tree","PAGE_NOT_FOUND_IN_TREE");const s=o.slug,i=o.dynamic||!1;this.validateSlugAvailabilityInTree(n,t,i,a);let l=[];const u=this.pageTreeBuilder.collectNestedChildSlugs(o,s,n);return l=[{id:t,newSlug:n},...u.map(c=>({id:c.id,newSlug:c.newSlug}))],l}async handleParentChangeWithTree(t,r){const n=r.parent;this.pageTreeBuilder||(this.pageTreeBuilder=new Sr(this.appId));const a=await this.pageTreeBuilder.getPagesTree(),o=this.pageTreeBuilder.findPageInPrimaryTree(t,a.primaryTree);if(!o)throw this.pageTreeBuilder.findPageInLanguageTree(t,a.languageTree)?new b("Cannot change parent of language pages directly","INVALID_OPERATION"):new b("Primary page not found in tree","PAGE_NOT_FOUND_IN_TREE");const s=o.slug,i=r.slug?r.slug:this.pageTreeBuilder.calculateSlugFromParent(n,s,a.primaryTree);this.validateSlugAvailabilityInTree(i,t,o.dynamic||!1,a),this.updateNodeSlugInTree(t,i,a.primaryTree);const l=this.pageTreeBuilder.collectNestedChildSlugs(o,s,i),u=[{id:t,newSlug:i},...l.map(d=>({id:d.id,newSlug:d.newSlug}))];for(const d of l)this.updateNodeSlugInTree(d.id,d.newSlug,a.primaryTree);const c=this.pageTreeBuilder.findLanguagePagesForPrimary(t,a.languageTree);let p;n&&(p=this.pageTreeBuilder.findLanguagePagesForPrimary(n,a.languageTree));for(const d of c){const v=p==null?void 0:p.filter(P=>P.lang===d.lang)[0],E=(v==null?void 0:v.id)||null,w=this.pageTreeBuilder.calculateSlugFromParent(E,d.slug,a.languageTree);this.validateSlugAvailabilityInTree(w,d.id,d.dynamic||!1,a,!0),this.updateNodeSlugInTree(d.id,w,a.languageTree);const I=this.pageTreeBuilder.collectNestedChildSlugs(d,d.slug,w);for(const P of I)this.updateNodeSlugInTree(P.id,P.newSlug,a.languageTree);u.push({id:d.id,newSlug:w}),u.push(...I.map(P=>({id:P.id,newSlug:P.newSlug})))}return u}async batchUpdateSlugs(t,r,n,a){const o=t.map(async i=>{const l={slug:i.newSlug,lastSaved:m.sql`now()`};if(i.id===n){const c=j.pick(r,["name","seo","blocks","currentEditor","buildTime","parent","pageType","dynamic","dynamicSlugCustom","links","partialBlocks","designTokens"]);Object.keys(c).forEach(p=>{c[p]===void 0&&delete c[p]}),Object.assign(l,{...c,changes:a})}const{error:u}=await A(()=>S.update(g).set(l).where(m.and(m.eq(g.id,i.id),m.eq(g.app,this.appId))));if(u)throw new b(`Failed to update page ${i.id}`,"UPDATE_PAGE_FAILED");return i.id});await Promise.all(o);const s=t.map(async i=>{await A(()=>S.update(ge).set({slug:i.newSlug}).where(m.and(m.eq(ge.id,i.id),m.eq(ge.app,this.appId))))});await Promise.all(s)}setPageTreeBuilder(t){this.pageTreeBuilder=t}}class p_ extends Z{constructor(){super(...arguments);Ee(this,"appId","");Ee(this,"pageTreeBuilder");Ee(this,"slugChangeHandler")}getValidationSchema(){return _.z.object({id:_.z.string().nonempty(),blocks:_.z.array(_.z.any()).optional(),currentEditor:_.z.string().optional(),slug:_.z.string().optional(),name:_.z.string().optional(),seo:_.z.record(_.z.string(),_.z.any()).optional(),buildTime:_.z.boolean().optional(),parent:_.z.union([_.z.string(),_.z.null()]).optional(),pageType:_.z.string().optional(),dynamic:_.z.boolean().optional(),dynamicSlugCustom:_.z.string().optional(),needTranslations:_.z.boolean().optional()})}async execute(r){await this.verifyAccess(),this.validateContext(),this.appId=this.context.appId;try{if(this.isOnlyBlocksUpdate(r))return await this.updateBlocks(r.id,r.blocks),await this.buildResponse(r.id,r);const n=this.extractAllowedPageFields(r);this.slugChangeHandler=new d_(this.appId);const a=await this.slugChangeHandler.isSlugChanged(r.id,n.slug);return await this.slugChangeHandler.isParentChanged(r.id,n.parent)&&n.parent!==void 0?(this.pageTreeBuilder=new Sr(this.appId),this.slugChangeHandler.setPageTreeBuilder(this.pageTreeBuilder),await this.handleParentChangeWithHandler(r.id,n)):a&&n.slug?(this.pageTreeBuilder=new Sr(this.appId),this.slugChangeHandler.setPageTreeBuilder(this.pageTreeBuilder),await this.handleSlugChangeWithHandler(r.id,n)):await this.updatePageInDatabase(r.id,n),await this.buildResponse(r.id,n)}catch(n){return this.handleExecutionError(n)}}async updateBlocks(r,n){const a=this.getLinks(n),o=this.getPartialBlocks(n),s=this.getDesignTokens(n);await this.updatePageInDatabase(r,{blocks:n,links:a,partialBlocks:o,designTokens:s})}getPartialBlocks(r){return j.compact(r.filter(n=>n._type==="GlobalBlock"||n._type==="PartialBlock").map(n=>j.get(n,"partialBlockId",j.get(n,"globalBlock",!1)))).join("|")}getLinks(r){const n=JSON.stringify(r),a=/pageType:[^:]+:([a-f0-9-]{36})/gi,o=[];let s;for(;(s=a.exec(n))!==null;)s[1]&&o.push(s[1]);return j.compact(o).join("|")}getDesignTokens(r){const n=/dt#[^ "]+/g,a={};for(const o of r){const s=JSON.stringify(o);let i;for(;(i=n.exec(s))!==null;)if(i[0]){const l=i[0];a[l]||(a[l]={}),a[l][o._id]=o._name||o._type}}return a}validateContext(){if(!this.context)throw new b("Context not set","CONTEXT_NOT_SET")}extractAllowedPageFields(r){return j.pick(r,["slug","name","seo","blocks","currentEditor","buildTime","parent","pageType","dynamic","dynamicSlugCustom"])}async handleSlugChangeWithHandler(r,n){const a=await this.slugChangeHandler.handleSlugChangeWithTree(r,n),o=this.determineChangeTypes(n);await this.slugChangeHandler.batchUpdateSlugs(a,n,r,o)}async handleParentChangeWithHandler(r,n){const a=await this.slugChangeHandler.handleParentChangeWithTree(r,n),o=this.determineChangeTypes(n);await this.slugChangeHandler.batchUpdateSlugs(a,n,r,o)}determineChangeTypes(r){const n=[],a=j.keys(r);return a.includes("blocks")&&n.push("Page"),a.includes("seo")&&n.push("SEO"),n.length>0?n:["Updated"]}async updatePageInDatabase(r,n){const a=this.determineChangeTypes(n),{error:o}=await A(()=>S.update(g).set({...n,changes:a,lastSaved:m.sql`now()`}).where(m.and(m.eq(g.id,r),m.eq(g.app,this.appId))));if(o)throw new b("Error updating page","ERROR_UPDATING_PAGE")}isOnlyBlocksUpdate(r){return j.keys(r).includes("blocks")}async fetchUpdatedPageData(r){const{data:n,error:a}=await A(()=>S.select({id:g.id,slug:g.slug,lang:g.lang,pageType:g.pageType,name:g.name,online:g.online,parent:g.parent,seo:g.seo}).from(g).where(m.eq(g.id,r)).limit(1));if(a||!n||n.length===0)throw new b("Error getting updated page","ERROR_GETTING_PAGE");return n[0]}async buildResponse(r,n){return this.isOnlyBlocksUpdate(n)?{success:!0}:{page:await this.fetchUpdatedPageData(r)}}handleExecutionError(r){throw console.log("Error updating page:",r),r instanceof b?r:new b(`Failed to update page: ${r instanceof Error?r.message:"Unknown error"}`,"UPDATE_PAGE_FAILED")}}class f_ extends Z{getValidationSchema(){return _.z.object({id:_.z.string().nonempty(),metadata:_.z.record(_.z.string(),_.z.any())})}async execute(t){if(await this.verifyAccess(),!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context,{data:n,error:a}=await A(()=>S.query.appPages.findFirst({where:m.and(m.eq(g.id,t.id),m.eq(g.app,r)),columns:{id:!0}}));if(a)throw new b(`Failed to fetch page: ${a.message}`,"FETCH_FAILED");if(!n)throw new b("Page not found","PAGE_NOT_FOUND");const{error:o}=await A(()=>S.update(g).set({metadata:t.metadata}).where(m.and(m.eq(g.id,t.id),m.eq(g.app,r))));if(o)throw console.error(o),new b("Failed to update page metadata","UPDATE_FAILED");return{success:!0}}}class g_ extends Z{getValidationSchema(){return _.z.object({settings:_.z.any()})}async execute(t){if(await this.verifyAccess(),!this.context)throw ie("CONTEXT_NOT_SET",new Error("CONTEXT_NOT_SET"));const{appId:r}=this.context,a={...j.pick(t.settings,["theme","designTokens"]),changes:["Updated"]},{error:o}=await A(()=>S.update(Ae).set(a).where(m.eq(Ae.id,r)));if(o)throw ie("ERROR_UPDATE_WEBSITE_SETTINGS",o);return{success:!0}}}class m_ extends Z{getValidationSchema(){return _.z.object({name:_.z.string().min(1),group:_.z.string().min(1),blocks:_.z.array(_.z.any()),description:_.z.string().optional(),previewImage:_.z.string().optional(),id:_.z.string().optional(),previewImageUrl:_.z.string().optional()})}async execute(t){var E;if(await this.verifyAccess(),!this.context)throw new b("Context not set","CONTEXT_NOT_SET");const{appId:r,userId:n}=this.context,{name:a,group:o,blocks:s,description:i,previewImage:l,previewImageUrl:u,id:c}=t,{data:p,error:d}=await A(()=>S.query.libraries.findFirst({where:m.eq(K.app,r),columns:{id:!0}}));if(d)throw new b("Failed to fetch site library","GET_SITE_LIBRARY_FAILED",500,d);if(!p)throw new b("Library not found for this app","GET_SITE_LIBRARY_FAILED");let v=u;if(l){const w=va("UPLOAD_TO_STORAGE");w==null||w.setContext(this.context);const I=`library-item-${Date.now()}.webp`,P=`${r}/library-items`,C=await(w==null?void 0:w.execute({file:l,fileName:I,contentType:"image/webp",folder:P}));if(C!=null&&C.error)throw new b("Failed to upload preview image","UPLOAD_PREVIEW_FAILED",500,C.error);v=((E=C==null?void 0:C.data)==null?void 0:E.url)||u}if(c){const w={name:a,blocks:s,library:p.id,description:i??null,group:o,user:n??null};v&&(w.preview=v);const{data:I,error:P}=await A(()=>S.update(re).set(w).where(m.eq(re.id,c)).returning());if(P||!I||I.length===0)throw new b("Failed to update library item","UPDATE_LIBRARY_ITEM_FAILED",500,P);return I[0]}else{const w=mu.randomUUID(),I=[...s];j.set(I,"0._libBlockId",w);const P={id:w,name:a,blocks:I,library:p.id,description:i??null,group:o,user:n??null,preview:v??null},{data:C,error:h}=await A(()=>S.insert(re).values(P).returning());if(h||!C||C.length===0)throw new b("Failed to create library item","CREATE_LIBRARY_ITEM_FAILED",500,h);return C[0]}}}const Nt=class Nt{constructor(){Ee(this,"actions",{});ut.registerChaiPageType("page",{name:"Static Page",icon:'<svg stroke="currentColor" fill="currentColor" strokeWidth="0" viewBox="0 0 24 24" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg"><path d="M5 8V20H19V8H5ZM5 6H19V4H5V6ZM20 22H4C3.44772 22 3 21.5523 3 21V3C3 2.44772 3.44772 2 4 2H20C20.5523 2 21 2.44772 21 3V21C21 21.5523 20.5523 22 20 22ZM7 10H11V14H7V10ZM7 16H17V18H7V16ZM13 11H17V13H13V11Z"></path></svg>'}),ut.registerChaiPartialType("global",{name:"Global Block",helpText:"A global block can be reused in multiple pages.",icon:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-hash-icon lucide-hash"><line x1="4" x2="20" y1="9" y2="9"/><line x1="4" x2="20" y1="15" y2="15"/><line x1="10" x2="8" y1="3" y2="21"/><line x1="16" x2="14" y1="3" y2="21"/></svg>'}),this.register("ASK_AI",new Sv),this.register("CHECK_USER_ACCESS",new Av),this.register("CREATE_PAGE",new Nv),this.register("DELETE_PAGE",new Rv),this.register("DUPLICATE_PAGE",new kv),this.register("RESTORE_PAGE_REVISION",new s_),this.register("UPDATE_PAGE_METADATA",new f_),this.register("GENERATE_SEO_FIELD",new Mv),this.register("GENERATE_HTML_FROM_PROMPT",new Dv),this.register("GET_REVISION_PAGE",new Xv),this.register("UPDATE_PAGE",new p_),this.register("GET_COMPARE_DATA",new qv),this.register("GET_SITE_WIDE_USAGE",new e_),this.register("GET_WEBSITE_DRAFT_SETTINGS",new n_),this.register("GET_WEBSITE_PAGES",new r_),this.register("GET_LIBRARIES",new Vv),this.register("GET_DRAFT_PAGE",new Zv),this.register("GET_LANGUAGE_PAGES",new Bv),this.register("UPSERT_LIBRARY_ITEM",new m_),this.register("MARK_AS_TEMPLATE",new a_),this.register("GET_LIBRARY_ITEM",new Jv),this.register("GET_LIBRARY_ITEMS",new Yv),this.register("DELETE_LIBRARY_ITEM",new Ov),this.register("UNMARK_AS_TEMPLATE",new c_),this.register("GET_TEMPLATES_BY_TYPE",new t_),this.register("SEARCH_PAGES",new l_),this.register("GET_PAGE_REVISIONS",new Wv),this.register("PUBLISH_CHANGES",new o_),this.register("UPDATE_WEBSITE_SETTINGS",new g_),this.register("TAKE_OFFLINE",new u_),this.register("GET_CHANGES",new Uv),this.register("GET_LIBRARY_GROUPS",new Hv),this.register("DELETE_PAGE_REVISION",new xv),this.register("GET_COLLECTIONS",new jv),this.register("GET_BLOCK_ASYNC_PROPS",new Fv),this.register("GET_BUILDER_PAGE_DATA",new Lv),this.register("GET_PAGE_TYPES",new Kv),this.register("SEARCH_PAGE_TYPE_ITEMS",new i_),this.register("GET_DYNAMIC_PAGES",new Gv),this.register("GET_ROLE_AND_PERMISSIONS",new Qv)}static getInstance(){return Nt.instance||(Nt.instance=new Nt),Nt.instance}register(t,r){this.actions[t]=r}registerActions(t){for(const[r,n]of Object.entries(t))this.register(r,n)}getAction(t){return j.get(this.actions,t)}getAllActions(){return this.actions}};Ee(Nt,"instance");let sn=Nt;const va=e=>sn.getInstance().getAction(e),h_=sn.getInstance();exports.ActionError=b;exports.ChaiBaseAction=Z;exports.actionsRegistery=h_;exports.db=S;exports.getAskAiSystemPrompt=tu;exports.getChaiAction=va;exports.safeQuery=A;exports.schema=nu;
|