@chaibuilder/sdk 4.0.0-beta.31 → 4.0.0-beta.33

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.
Files changed (152) hide show
  1. package/dist/{2SSKDMRQ-gmj-yWTy.js → 2SSKDMRQ-BXAXoR9y.js} +5 -5
  2. package/dist/{2SSKDMRQ-BksFOLpD.cjs → 2SSKDMRQ-BqOsh3tf.cjs} +1 -1
  3. package/dist/{AP7HFJJL-kVgc0R61.js → AP7HFJJL-B78LfetW.js} +1 -1
  4. package/dist/{AP7HFJJL-CO-deD_p.cjs → AP7HFJJL-Cv6sqAAd.cjs} +1 -1
  5. package/dist/{IconPicker-D_GRfhwS.js → IconPicker-BlO5Pnyu.js} +1 -1
  6. package/dist/{IconPicker-BJHUCDn4.cjs → IconPicker-D4yq_b-k.cjs} +1 -1
  7. package/dist/{WDYDFRGG-C9_E3QW0.js → WDYDFRGG-BE7jgVqa.js} +4 -4
  8. package/dist/{WDYDFRGG-KPpWFul_.cjs → WDYDFRGG-Dz9d3cVW.cjs} +1 -1
  9. package/dist/{actions-registery-Bj-j1k5i.js → actions-registery-D3-4Yha7.js} +1108 -1061
  10. package/dist/{actions-registery-Cy1lqUVI.cjs → actions-registery-vPaY-3dZ.cjs} +25 -25
  11. package/dist/actions.cjs +1 -1
  12. package/dist/actions.js +2 -2
  13. package/dist/{active-in-another-tab-1GoKTVcF.js → active-in-another-tab-CA47uafJ.js} +2 -2
  14. package/dist/{active-in-another-tab-iEd5fZD0.cjs → active-in-another-tab-CNn_R-55.cjs} +1 -1
  15. package/dist/{add-new-language-page-B3GUvWdP.js → add-new-language-page-B-kPbhFd.js} +3 -3
  16. package/dist/{add-new-language-page-Cq8R42Ro.cjs → add-new-language-page-QAZbAFQe.cjs} +1 -1
  17. package/dist/{add-new-page-DiHnECAR.cjs → add-new-page-D4nbAHOp.cjs} +1 -1
  18. package/dist/add-new-page-Y0d9tHh0.js +31 -0
  19. package/dist/{ai-panel-content-BPpawv4D.cjs → ai-panel-content-DXbebC-m.cjs} +1 -1
  20. package/dist/{ai-panel-content-tExD3yhH.js → ai-panel-content-WMOeK5pF.js} +5 -5
  21. package/dist/{ai-panel-default-lang-DnYLHSaS.js → ai-panel-default-lang-CM_psX_h.js} +7 -7
  22. package/dist/{ai-panel-default-lang-C6N4wUUF.cjs → ai-panel-default-lang-hmfyAYPM.cjs} +2 -2
  23. package/dist/{ai-panel-other-lang-D1pCJluY.js → ai-panel-other-lang-BKANRJAb.js} +13 -13
  24. package/dist/{ai-panel-other-lang-C65lVVtZ.cjs → ai-panel-other-lang-D4GL1b-W.cjs} +1 -1
  25. package/dist/{ai-prompt-input-Dws5BHhQ.cjs → ai-prompt-input-Dwd0-pcD.cjs} +1 -1
  26. package/dist/{ai-prompt-input-B2q30bhR.js → ai-prompt-input-mxXtWptn.js} +13 -13
  27. package/dist/{ai-translation-prompt-DnwG2BmF.cjs → ai-translation-prompt-7M2aEZ1w.cjs} +1 -1
  28. package/dist/{ai-translation-prompt-Dnn6i_t3.js → ai-translation-prompt-C_Pb7BE4.js} +1 -1
  29. package/dist/{apply-binding-chfbBKi2.js → apply-binding-BYCW1k2l.js} +1 -1
  30. package/dist/{apply-binding-9XSrYzAE.cjs → apply-binding-xiigK7eK.cjs} +1 -1
  31. package/dist/{change-password-modal-LKtYY-8V.cjs → change-password-modal-BYZoefwT.cjs} +1 -1
  32. package/dist/{change-password-modal-C0MMizgl.js → change-password-modal-Dqf_mleR.js} +5 -5
  33. package/dist/{code-editor-CWOmKcUc.js → code-editor-1fSEocLK.js} +1 -1
  34. package/dist/{code-editor-Cim6jQVF.cjs → code-editor-uN7W7KMD.cjs} +1 -1
  35. package/dist/{continue-editing-in-this-client-oxYWGWON.js → continue-editing-in-this-client-DD7bBhjD.js} +2 -2
  36. package/dist/{continue-editing-in-this-client-Dd6nKIvX.cjs → continue-editing-in-this-client-DDM65ror.cjs} +1 -1
  37. package/dist/{core-BWQrViOY.cjs → core-czmLeR0h.cjs} +1 -1
  38. package/dist/{core-QlWEXm1d.js → core-nSRy3D7z.js} +16 -15
  39. package/dist/core.cjs +1 -1
  40. package/dist/core.d.ts +14 -2
  41. package/dist/core.js +19 -19
  42. package/dist/{css-import-modal-CXulmaB4.cjs → css-import-modal-BU7bJAaT.cjs} +1 -1
  43. package/dist/{css-import-modal-6bMTRlCg.js → css-import-modal-pBNRVmGj.js} +1 -1
  44. package/dist/default-theme-options-DN-3gIjM.cjs +22 -0
  45. package/dist/{plugin-BSjgGgwo.js → default-theme-options-saBIkWGT.js} +114 -114
  46. package/dist/{delete-page-D0tdn6VW.cjs → delete-page-8oEYsHPE.cjs} +1 -1
  47. package/dist/delete-page-B53nkF74.js +71 -0
  48. package/dist/{design-token-usage-D-hrcKz1.cjs → design-token-usage-Cm9m4AMz.cjs} +1 -1
  49. package/dist/{design-token-usage-lf7N_uOk.js → design-token-usage-DzWav2ip.js} +14 -14
  50. package/dist/{digital-asset-manager-DJhRhLGC.js → digital-asset-manager-1yLYGPuf.js} +5 -5
  51. package/dist/digital-asset-manager-BaTvMY8Q.cjs +1 -0
  52. package/dist/{duplicate-page-ChSp1TYN.cjs → duplicate-page-C2DZI4U0.cjs} +1 -1
  53. package/dist/{duplicate-page-CXzYy7vx.js → duplicate-page-DCRVR-kF.js} +6 -6
  54. package/dist/{dynamic-page-selector-btGtkyyv.cjs → dynamic-page-selector-CZJQnc-Q.cjs} +1 -1
  55. package/dist/{dynamic-page-selector-r5IR9_7k.js → dynamic-page-selector-DCGWkLVV.js} +12 -12
  56. package/dist/get-chai-builder-theme-C_qofMh_.cjs +1 -0
  57. package/dist/{get-chai-builder-theme-BpuwSLeS.js → get-chai-builder-theme-CyOkIlte.js} +1 -1
  58. package/dist/{image-compression-DsZ1oqpb.js → image-compression-DPFITwOL.js} +2 -2
  59. package/dist/image-compression-UaU7Bwqe.cjs +1 -0
  60. package/dist/{image-editor-CilPMtAC.js → image-editor-C0EYZJY_.js} +1 -1
  61. package/dist/{image-editor-BdW476J8.cjs → image-editor-DkgZrSGr.cjs} +1 -1
  62. package/dist/{index-DtMksfXx.js → index-BDrc0HJQ.js} +1729 -1680
  63. package/dist/index-BuXfCtgR.cjs +5 -0
  64. package/dist/{index-DsQXiNA_.js → index-C7bidKtE.js} +2786 -2752
  65. package/dist/index-DKjYF53r.cjs +160 -0
  66. package/dist/{json-diff-viewer-BkrnLb3B.cjs → json-diff-viewer-88jEhq8D.cjs} +1 -1
  67. package/dist/{json-diff-viewer-D3N3w3Ax.js → json-diff-viewer-wmzIZcuQ.js} +34 -34
  68. package/dist/{lang-panel-BAaaP4Qc.js → lang-panel--kWBnU_W.js} +7 -7
  69. package/dist/{lang-panel-BjDRrpwN.cjs → lang-panel-I_ABfjOZ.cjs} +1 -1
  70. package/dist/manage-design-tokens-CslCEOXU.cjs +1 -0
  71. package/dist/manage-design-tokens-JdVKj09s.js +445 -0
  72. package/dist/manage-design-tokens-modal-DA15ou0u.cjs +1 -0
  73. package/dist/{manage-design-tokens-modal-9qpcb-EC.js → manage-design-tokens-modal-xKxC72Bc.js} +9 -9
  74. package/dist/{mark-as-template-DNHYNjI9.js → mark-as-template-AbZrkEYl.js} +7 -7
  75. package/dist/{mark-as-template-IYRjta97.cjs → mark-as-template-ClQjC2p2.cjs} +1 -1
  76. package/dist/{nested-path-selector-content-Be-pbnVl.js → nested-path-selector-content-B04k-PPB.js} +1 -1
  77. package/dist/{nested-path-selector-content-CWmPgU-L.cjs → nested-path-selector-content-dFwZaM1r.cjs} +1 -1
  78. package/dist/{no-language-page-content-C-ltY7bj.js → no-language-page-content-CbUqxuC4.js} +2 -2
  79. package/dist/{no-language-page-content-8_J6y-cm.cjs → no-language-page-content-pzkWJAg6.cjs} +1 -1
  80. package/dist/{no-language-page-dialog-D5NXpDHi.js → no-language-page-dialog-AavD_Mmc.js} +2 -2
  81. package/dist/{no-language-page-dialog-BOZZZzqx.cjs → no-language-page-dialog-DhlOVXUm.cjs} +1 -1
  82. package/dist/{page-creator-BuHHnqiQ.js → page-creator-2OZveMsR.js} +95 -95
  83. package/dist/{page-creator-wtbae2U7.cjs → page-creator-DMjnStPf.cjs} +1 -1
  84. package/dist/{page-lock-pPGlTxj7.js → page-lock-5MwwTWe8.js} +2 -2
  85. package/dist/{page-lock-DN4iJc-V.cjs → page-lock-B3CpoFTs.cjs} +1 -1
  86. package/dist/{page-locked-dialog-Bl-ojgIW.js → page-locked-dialog-BhNZC9wZ.js} +13 -13
  87. package/dist/{page-locked-dialog-B_vdgv24.cjs → page-locked-dialog-ZOvjnxRI.cjs} +1 -1
  88. package/dist/page-manager-new-BcI-1Dms.cjs +1 -0
  89. package/dist/{page-manager-new-Bg8H6yrg.js → page-manager-new-l68-Lc9h.js} +85 -88
  90. package/dist/{page-manager-search-and-filter-CDXunXNd.cjs → page-manager-search-and-filter-BOpne6v-.cjs} +1 -1
  91. package/dist/{page-manager-search-and-filter-CyfO7O96.js → page-manager-search-and-filter-DJn98D02.js} +31 -30
  92. package/dist/{page-revisions-content-BKT8S9_g.cjs → page-revisions-content-B00tDCzu.cjs} +1 -1
  93. package/dist/{page-revisions-content-B-egQgoZ.js → page-revisions-content-Bqp-9bae.js} +23 -23
  94. package/dist/pages.cjs +1 -1
  95. package/dist/pages.d.ts +14 -2
  96. package/dist/pages.js +12 -12
  97. package/dist/{publish-pages-content-D2B_ScCQ.js → publish-pages-content-CtZLSG6O.js} +68 -75
  98. package/dist/publish-pages-content-DfYG0biw.cjs +1 -0
  99. package/dist/render.cjs +1 -1
  100. package/dist/render.js +5 -5
  101. package/dist/{rte-widget-modal-c3T09VeO.js → rte-widget-modal-DGEWoQ1b.js} +1 -1
  102. package/dist/{rte-widget-modal-CC1KcrAT.cjs → rte-widget-modal-DX66uSPv.cjs} +1 -1
  103. package/dist/runtime.cjs +6 -6
  104. package/dist/runtime.d.ts +2 -0
  105. package/dist/runtime.js +36 -35
  106. package/dist/{save-to-lib-dT1NDd5w.js → save-to-lib-CCxX5ZmQ.js} +26 -26
  107. package/dist/{save-to-lib-CiM0wiIr.cjs → save-to-lib-DmAjdhzU.cjs} +1 -1
  108. package/dist/sdk.css +1 -1
  109. package/dist/{selected-block-display-BgqcPsXI.cjs → selected-block-display-Csce27bR.cjs} +1 -1
  110. package/dist/{selected-block-display-BQndDPcY.js → selected-block-display-Cv6jBhJD.js} +20 -20
  111. package/dist/{seo-panel-DXZvGYEM.cjs → seo-panel-BZYXeYzE.cjs} +1 -1
  112. package/dist/{seo-panel-Z93Zf_bz.js → seo-panel-Ctstjs-d.js} +25 -25
  113. package/dist/{shared-json-ld-DwvUDGAS.cjs → shared-json-ld-BDWtjHgw.cjs} +1 -1
  114. package/dist/{shared-json-ld-Ct68RlWD.js → shared-json-ld-BNHGmUBd.js} +45 -45
  115. package/dist/{slug-input-CAqkFZBq.js → slug-input-Bui1Qmvh.js} +1 -1
  116. package/dist/{slug-input-Curnt2n3.cjs → slug-input-IAl_jfHr.cjs} +1 -1
  117. package/dist/supabase-actions.cjs +1 -1
  118. package/dist/supabase-actions.js +272 -206
  119. package/dist/{take-over-request-D6y2HcDr.cjs → take-over-request-Bl6jS1cK.cjs} +1 -1
  120. package/dist/{take-over-request-C6ngP1QR.js → take-over-request-Ceuqyk5K.js} +13 -13
  121. package/dist/{translation-warning-modal-B876S5yp.cjs → translation-warning-modal-CCmmwz1C.cjs} +1 -1
  122. package/dist/{translation-warning-modal-kRcfrPgo.js → translation-warning-modal-DA5dt2FA.js} +9 -9
  123. package/dist/types.d.ts +14 -2
  124. package/dist/{unmark-as-template-DeeWUTco.js → unmark-as-template-CKVMibvu.js} +13 -13
  125. package/dist/{unmark-as-template-f1dl_YTz.cjs → unmark-as-template-OEUqo0uc.cjs} +1 -1
  126. package/dist/unpublish-page-A5qn6E6g.js +28 -0
  127. package/dist/{unpublish-page-DEPFjGuu.cjs → unpublish-page-C81bYHLI.cjs} +1 -1
  128. package/dist/{unpublished-partials-modal-Ts5ZhAK9.js → unpublished-partials-modal-FqzTp5el.js} +3 -3
  129. package/dist/{unpublished-partials-modal-CEFXp1D1.cjs → unpublished-partials-modal-af5uDL7Y.cjs} +1 -1
  130. package/dist/utils.cjs +1 -1
  131. package/dist/utils.js +1 -1
  132. package/dist/web-blocks.cjs +1 -1
  133. package/dist/web-blocks.js +1 -1
  134. package/dist/{web-preview-CoT8r96b.js → web-preview-vge6uUSa.js} +1 -1
  135. package/dist/{web-preview-DTDoIE-c.cjs → web-preview-xtKkQOXy.cjs} +1 -1
  136. package/package.json +2 -7
  137. package/dist/add-new-page-C5HlQfzy.js +0 -31
  138. package/dist/delete-page-LnzR01A8.js +0 -71
  139. package/dist/digital-asset-manager-eCJHNSjj.cjs +0 -1
  140. package/dist/get-chai-builder-theme-B5RkBTsB.cjs +0 -1
  141. package/dist/image-compression-DZ9WMmyn.cjs +0 -1
  142. package/dist/index-CAhDwfHE.cjs +0 -5
  143. package/dist/index-mPCp0j2h.cjs +0 -160
  144. package/dist/manage-design-tokens-BknGNAKE.cjs +0 -1
  145. package/dist/manage-design-tokens-Co5677WS.js +0 -428
  146. package/dist/manage-design-tokens-modal-BcgdwEXE.cjs +0 -1
  147. package/dist/page-manager-new-5W5M9_ue.cjs +0 -1
  148. package/dist/plugin-DHpuZZXz.cjs +0 -22
  149. package/dist/publish-pages-content-WJHTVYnx.cjs +0 -1
  150. package/dist/theme-panel-footer-CGZL2F7R.js +0 -26
  151. package/dist/theme-panel-footer-IgGj-_OA.cjs +0 -1
  152. package/dist/unpublish-page-U_79Pwc0.js +0 -28
@@ -1,52 +1,52 @@
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"),q=require("lodash-es"),iu=require("./_commonjsHelpers-DwGv2jUC.cjs"),lu=require("fs"),uu=require("path"),cu=require("os"),is=require("crypto"),du=require("drizzle-orm/postgres-js"),pu=require("postgres"),g=require("drizzle-orm/pg-core"),h=require("drizzle-orm"),fu=require("./models-5gOsRC56.cjs"),w=require("zod"),gu=require("./core-BWQrViOY.cjs"),hu=require("node:crypto");var ls="vercel.ai.error",mu=Symbol.for(ls),ba,Ea,H=class us extends(Ea=Error,ba=mu,Ea){constructor({name:t,message:r,cause:n}){super(r),this[ba]=!0,this.name=t,this.cause=n}static isInstance(t){return us.hasMarker(t,ls)}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}},cs="AI_APICallError",ds=`vercel.ai.error.${cs}`,yu=Symbol.for(ds),Ia,Sa,$e=class extends(Sa=H,Ia=yu,Sa){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:cs,message:e,cause:s}),this[Ia]=!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,ds)}},ps="AI_EmptyResponseBodyError",fs=`vercel.ai.error.${ps}`,vu=Symbol.for(fs),Aa,Na,wu=class extends(Na=H,Aa=vu,Na){constructor({message:e="Empty response body"}={}){super({name:ps,message:e}),this[Aa]=!0}static isInstance(e){return H.hasMarker(e,fs)}};function Wt(e){return e==null?"unknown error":typeof e=="string"?e:e instanceof Error?e.message:JSON.stringify(e)}var gs="AI_InvalidArgumentError",hs=`vercel.ai.error.${gs}`,_u=Symbol.for(hs),Oa,xa,Tu=class extends(xa=H,Oa=_u,xa){constructor({message:t,cause:r,argument:n}){super({name:gs,message:t,cause:r}),this[Oa]=!0,this.argument=n}static isInstance(t){return H.hasMarker(t,hs)}},ms="AI_InvalidPromptError",ys=`vercel.ai.error.${ms}`,bu=Symbol.for(ys),Ra,ka,qt=class extends(ka=H,Ra=bu,ka){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,ys)}},vs="AI_JSONParseError",ws=`vercel.ai.error.${vs}`,Eu=Symbol.for(ws),Pa,Ca,Gr=class extends(Ca=H,Pa=Eu,Ca){constructor({text:e,cause:t}){super({name:vs,message:`JSON parsing failed: Text: ${e}.
2
- Error message: ${Wt(t)}`,cause:t}),this[Pa]=!0,this.text=e}static isInstance(e){return H.hasMarker(e,ws)}},_s="AI_TypeValidationError",Ts=`vercel.ai.error.${_s}`,Iu=Symbol.for(Ts),Da,za,xt=class Mn extends(za=H,Da=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[Da]=!0,this.value=t}static isInstance(t){return H.hasMarker(t,Ts)}static wrap({value:t,cause:r}){return Mn.isInstance(r)&&r.value===t?r:new Mn({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 bs extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}}const Es={};function vt(e){return Es}function Is(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 Fn(e,t){return typeof t=="bigint"?t.toString():t}function un(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function Wn(e){return e==null}function Kn(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 $a=Symbol("evaluating");function Y(e,t,r){let n;Object.defineProperty(e,t,{get(){if(n!==$a)return n===void 0&&(n=$a,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 Ma(e){return JSON.stringify(e)}function Au(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const Ss="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function gr(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const Nu=un(()=>{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 As(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 xu(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}const Ru={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 Du(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 zu(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 Fr(e){return typeof e=="string"?e:e==null?void 0:e.message}function wt(e,t,r){var a,o,s,i,l,u;const n={...e,path:e.path??[]};if(!e.message){const c=Fr((s=(o=(a=e.inst)==null?void 0:a._zod.def)==null?void 0:o.error)==null?void 0:s.call(o,e))??Fr((i=t==null?void 0:t.error)==null?void 0:i.call(t,e))??Fr((l=r.customError)==null?void 0:l.call(r,e))??Fr((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 Xn(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function hr(...e){const[t,r,n]=e;return typeof t=="string"?{message:t,code:"custom",input:r,inst:n}:{...t}}const Ns=(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,Fn,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Os=T("$ZodError",Ns),xs=T("$ZodError",Ns,{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 Qn=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=>wt(l,o,vt())));throw Ss(i,a==null?void 0:a.callee),i}return s.value},ea=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=>wt(l,o,vt())));throw Ss(i,a==null?void 0:a.callee),i}return s.value},cn=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??Os)(o.issues.map(s=>wt(s,a,vt())))}:{success:!0,data:o.value}},Uu=cn(xs),dn=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=>wt(s,a,vt())))}:{success:!0,data:o.value}},ju=dn(xs),qu=e=>(t,r,n)=>{const a=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Qn(e)(t,r,a)},Zu=e=>(t,r,n)=>Qn(e)(t,r,n),Gu=e=>async(t,r,n)=>{const a=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return ea(e)(t,r,a)},Bu=e=>async(t,r,n)=>ea(e)(t,r,n),Vu=e=>(t,r,n)=>{const a=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return cn(e)(t,r,a)},Hu=e=>(t,r,n)=>cn(e)(t,r,n),Ju=e=>async(t,r,n)=>{const a=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return dn(e)(t,r,a)},Yu=e=>async(t,r,n)=>dn(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})$/,Fa=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}$/,ks="(?:(?:\\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(`^${ks}$`);function Ps(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(`^${Ps(e)}$`)}function hc(e){const t=Ps({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(`^${ks}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}$`)},yc=/^-?\d+$/,Cs=/^-?\d+(?:\.\d+)?$/,vc=/^(?:true|false)$/i,wc=/^null$/i,_c=/^[^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=[])}),Ds={number:"number",bigint:"bigint",object:"date"},zs=T("$ZodCheckLessThan",(e,t)=>{Me.init(e,t);const r=Ds[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})}}),$s=T("$ZodCheckGreaterThan",(e,t)=>{Me.init(e,t);const r=Ds[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]=Ru[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!Wn(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=Xn(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!Wn(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=Xn(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!Wn(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=Xn(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})}}),pn=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)=>{pn.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=_c),pn.init(e,t)}),xc=T("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Tc),pn.init(e,t)}),Rc=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 Dc{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 Ie=(e,t,r)=>su(e,typeof t!="symbol"?t+"":t,r);const ut=require("./register-partial-type-ig9fUWIJ.cjs"),q=require("lodash-es"),iu=require("./_commonjsHelpers-DwGv2jUC.cjs"),lu=require("fs"),uu=require("path"),cu=require("os"),is=require("crypto"),du=require("drizzle-orm/postgres-js"),pu=require("postgres"),g=require("drizzle-orm/pg-core"),h=require("drizzle-orm"),fu=require("./models-5gOsRC56.cjs"),w=require("zod"),gu=require("./core-czmLeR0h.cjs"),hu=require("node:crypto");var ls="vercel.ai.error",mu=Symbol.for(ls),Ea,ba,H=class us extends(ba=Error,Ea=mu,ba){constructor({name:t,message:r,cause:n}){super(r),this[Ea]=!0,this.name=t,this.cause=n}static isInstance(t){return us.hasMarker(t,ls)}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}},cs="AI_APICallError",ds=`vercel.ai.error.${cs}`,yu=Symbol.for(ds),Ia,Sa,$e=class extends(Sa=H,Ia=yu,Sa){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:cs,message:e,cause:s}),this[Ia]=!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,ds)}},ps="AI_EmptyResponseBodyError",fs=`vercel.ai.error.${ps}`,vu=Symbol.for(fs),Aa,Na,wu=class extends(Na=H,Aa=vu,Na){constructor({message:e="Empty response body"}={}){super({name:ps,message:e}),this[Aa]=!0}static isInstance(e){return H.hasMarker(e,fs)}};function Kt(e){return e==null?"unknown error":typeof e=="string"?e:e instanceof Error?e.message:JSON.stringify(e)}var gs="AI_InvalidArgumentError",hs=`vercel.ai.error.${gs}`,_u=Symbol.for(hs),Oa,Ra,Tu=class extends(Ra=H,Oa=_u,Ra){constructor({message:t,cause:r,argument:n}){super({name:gs,message:t,cause:r}),this[Oa]=!0,this.argument=n}static isInstance(t){return H.hasMarker(t,hs)}},ms="AI_InvalidPromptError",ys=`vercel.ai.error.${ms}`,Eu=Symbol.for(ys),xa,ka,Zt=class extends(ka=H,xa=Eu,ka){constructor({prompt:e,message:t,cause:r}){super({name:ms,message:`Invalid prompt: ${t}`,cause:r}),this[xa]=!0,this.prompt=e}static isInstance(e){return H.hasMarker(e,ys)}},vs="AI_JSONParseError",ws=`vercel.ai.error.${vs}`,bu=Symbol.for(ws),Pa,Ca,Gr=class extends(Ca=H,Pa=bu,Ca){constructor({text:e,cause:t}){super({name:vs,message:`JSON parsing failed: Text: ${e}.
2
+ Error message: ${Kt(t)}`,cause:t}),this[Pa]=!0,this.text=e}static isInstance(e){return H.hasMarker(e,ws)}},_s="AI_TypeValidationError",Ts=`vercel.ai.error.${_s}`,Iu=Symbol.for(Ts),Da,za,xt=class Mn extends(za=H,Da=Iu,za){constructor({value:t,cause:r}){super({name:_s,message:`Type validation failed: Value: ${JSON.stringify(t)}.
3
+ Error message: ${Kt(r)}`,cause:r}),this[Da]=!0,this.value=t}static isInstance(t){return H.hasMarker(t,Ts)}static wrap({value:t,cause:r}){return Mn.isInstance(r)&&r.value===t?r:new Mn({value:t,cause:r})}};function E(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 d=0;d<c.length;d++){const p=c[d];p in i||(i[p]=u[p].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 Vt extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Es extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}}const bs={};function wt(e){return bs}function Is(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 Fn(e,t){return typeof t=="bigint"?t.toString():t}function un(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function Wn(e){return e==null}function Kn(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 $a=Symbol("evaluating");function Y(e,t,r){let n;Object.defineProperty(e,t,{get(){if(n!==$a)return n===void 0&&(n=$a,n=r()),n},set(a){Object.defineProperty(e,t,{value:a})},configurable:!0})}function Ct(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 Ma(e){return JSON.stringify(e)}function Au(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const Ss="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function gr(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const Nu=un(()=>{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 Ht(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 As(e){return Ht(e)?{...e}:Array.isArray(e)?[...e]:e}const Ou=new Set(["string","number","symbol"]);function Jt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function It(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 Ct(this,"shape",s),s},checks:[]});return It(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 Ct(this,"shape",s),s},checks:[]});return It(e,o)}function Cu(e,t){if(!Ht(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 Ct(this,"shape",o),o}});return It(e,a)}function Du(e,t){if(!Ht(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 Ct(this,"shape",n),n}});return It(e,r)}function zu(e,t){const r=bt(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t._zod.def.shape};return Ct(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:[]});return It(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 Ct(this,"shape",l),l},checks:[]});return It(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 Ct(this,"shape",o),o}});return It(t,n)}function Gt(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 Bt(e,t){return t.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function Fr(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=Fr((s=(o=(a=e.inst)==null?void 0:a._zod.def)==null?void 0:o.error)==null?void 0:s.call(o,e))??Fr((i=t==null?void 0:t.error)==null?void 0:i.call(t,e))??Fr((l=r.customError)==null?void 0:l.call(r,e))??Fr((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 Xn(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function hr(...e){const[t,r,n]=e;return typeof t=="string"?{message:t,code:"custom",input:r,inst:n}:{...t}}const Ns=(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,Fn,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Os=E("$ZodError",Ns),Rs=E("$ZodError",Ns,{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 Qn=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 Vt;if(s.issues.length){const i=new((a==null?void 0:a.Err)??e)(s.issues.map(l=>_t(l,o,wt())));throw Ss(i,a==null?void 0:a.callee),i}return s.value},ea=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,wt())));throw Ss(i,a==null?void 0:a.callee),i}return s.value},cn=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 Vt;return o.issues.length?{success:!1,error:new(e??Os)(o.issues.map(s=>_t(s,a,wt())))}:{success:!0,data:o.value}},Uu=cn(Rs),dn=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,wt())))}:{success:!0,data:o.value}},ju=dn(Rs),qu=e=>(t,r,n)=>{const a=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Qn(e)(t,r,a)},Zu=e=>(t,r,n)=>Qn(e)(t,r,n),Gu=e=>async(t,r,n)=>{const a=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return ea(e)(t,r,a)},Bu=e=>async(t,r,n)=>ea(e)(t,r,n),Vu=e=>(t,r,n)=>{const a=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return cn(e)(t,r,a)},Hu=e=>(t,r,n)=>cn(e)(t,r,n),Ju=e=>async(t,r,n)=>{const a=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return dn(e)(t,r,a)},Yu=e=>async(t,r,n)=>dn(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})$/,Fa=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}=))?$/,xs=/^[A-Za-z0-9_-]*$/,pc=/^\+[1-9]\d{6,14}$/,ks="(?:(?:\\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(`^${ks}$`);function Ps(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(`^${Ps(e)}$`)}function hc(e){const t=Ps({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(`^${ks}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}$`)},yc=/^-?\d+$/,Cs=/^-?\d+(?:\.\d+)?$/,vc=/^(?:true|false)$/i,wc=/^null$/i,_c=/^[^A-Z]*$/,Tc=/^[^a-z]*$/,Me=E("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),Ds={number:"number",bigint:"bigint",object:"date"},zs=E("$ZodCheckLessThan",(e,t)=>{Me.init(e,t);const r=Ds[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})}}),$s=E("$ZodCheckGreaterThan",(e,t)=>{Me.init(e,t);const r=Ds[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})}}),Ec=E("$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})}}),bc=E("$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=E("$ZodCheckMaxLength",(e,t)=>{var r;Me.init(e,t),(r=e._zod.def).when??(r.when=n=>{const a=n.value;return!Wn(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=Xn(a);n.issues.push({origin:s,code:"too_big",maximum:t.maximum,inclusive:!0,input:a,inst:e,continue:!t.abort})}}),Sc=E("$ZodCheckMinLength",(e,t)=>{var r;Me.init(e,t),(r=e._zod.def).when??(r.when=n=>{const a=n.value;return!Wn(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=Xn(a);n.issues.push({origin:s,code:"too_small",minimum:t.minimum,inclusive:!0,input:a,inst:e,continue:!t.abort})}}),Ac=E("$ZodCheckLengthEquals",(e,t)=>{var r;Me.init(e,t),(r=e._zod.def).when??(r.when=n=>{const a=n.value;return!Wn(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=Xn(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})}}),pn=E("$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=E("$ZodCheckRegex",(e,t)=>{pn.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=E("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=_c),pn.init(e,t)}),Rc=E("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Tc),pn.init(e,t)}),xc=E("$ZodCheckIncludes",(e,t)=>{Me.init(e,t);const r=Jt(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=E("$ZodCheckStartsWith",(e,t)=>{Me.init(e,t);const r=new RegExp(`^${Jt(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=E("$ZodCheckEndsWith",(e,t)=>{Me.init(e,t);const r=new RegExp(`.*${Jt(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=E("$ZodCheckOverwrite",(e,t)=>{Me.init(e,t),e._zod.check=r=>{r.value=t.tx(r.value)}});class Dc{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 zc={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=zc;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}))}),ta=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()??mc(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}}),he=T("$ZodStringFormat",(e,t)=>{pn.init(e,t),ta.init(e,t)}),$c=T("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=nc),he.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=Fa(n))}else t.pattern??(t.pattern=Fa());he.init(e,t)}),Fc=T("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=ac),he.init(e,t)}),Lc=T("$ZodURL",(e,t)=>{he.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()),he.init(e,t)}),jc=T("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=tc),he.init(e,t)}),qc=T("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Wu),he.init(e,t)}),Zc=T("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Ku),he.init(e,t)}),Gc=T("$ZodULID",(e,t)=>{t.pattern??(t.pattern=Xu),he.init(e,t)}),Bc=T("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Qu),he.init(e,t)}),Vc=T("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=ec),he.init(e,t)}),Hc=T("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=hc(t)),he.init(e,t)}),Jc=T("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=fc),he.init(e,t)}),Yc=T("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=gc(t)),he.init(e,t)}),Wc=T("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=rc),he.init(e,t)}),Kc=T("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=ic),he.init(e,t),e._zod.bag.format="ipv4"}),Xc=T("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=lc),he.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),he.init(e,t)}),ed=T("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=cc),he.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 Ms(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),he.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=r=>{Ms(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 Ms(r)}const nd=T("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Rs),he.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),he.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)=>{he.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})}}),Fs=T("$ZodNumber",(e,t)=>{ce.init(e,t),e._zod.pattern=e._zod.bag.pattern??Cs,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),Fs.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=wc,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 La(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=>La(u,r,s))):La(l,r,s)}return o.length?Promise.all(o).then(()=>r):r}});function Br(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 Ls(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=xu(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(r)}}function Us(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=>Br(v,r,p,t,c))):Br(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=un(()=>Ls(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",_=v._zod.run({value:u[d],issues:[]},l);_ instanceof Promise?c.push(_.then(I=>Br(I,i,d,u,E))):Br(_,i,d,u,E)}return o?Us(c,u,i,l,n.value,e):c.length?Promise.all(c).then(()=>i):i}}),hd=T("$ZodObjectJIT",(e,t)=>{gd.init(e,t);const r=e._zod.parse,n=un(()=>Ls(t)),a=d=>{var m;const v=new Dc(["shape","payload","ctx"]),E=n.value,_=z=>{const x=Ma(z);return`shape[${x}]._zod.run({ value: input[${x}], issues: [] }, ctx)`};v.write("const input = payload.value;");const I=Object.create(null);let P=0;for(const z of E.keys)I[z]=`key_${P++}`;v.write("const newResult = {};");for(const z of E.keys){const x=I[z],y=Ma(z),O=d[z],D=((m=O==null?void 0:O._zod)==null?void 0:m.optout)==="optional";v.write(`const ${x} = ${_(z)};`),D?v.write(`
6
- if (${x}.issues.length) {
5
+ `))}}const zc={major:4,minor:3,patch:5},ce=E("$ZodType",(e,t)=>{var a;var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=zc;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=Gt(i),d;for(const p of l){if(p._zod.def.when){if(!p._zod.def.when(i))continue}else if(c)continue;const v=i.issues.length,b=p._zod.check(i);if(b instanceof Promise&&(u==null?void 0:u.async)===!1)throw new Vt;if(d||b instanceof Promise)d=(d??Promise.resolve()).then(async()=>{await b,i.issues.length!==v&&(c||(c=Gt(i,v)))});else{if(i.issues.length===v)continue;c||(c=Gt(i,v))}}return d?d.then(()=>i):i},s=(i,l,u)=>{if(Gt(i))return i.aborted=!0,i;const c=o(l,n,u);if(c instanceof Promise){if(u.async===!1)throw new Vt;return c.then(d=>e._zod.parse(d,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(d=>s(d,i,l)):s(c,i,l)}const u=e._zod.parse(i,l);if(u instanceof Promise){if(l.async===!1)throw new Vt;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}))}),ta=E("$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()??mc(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=E("$ZodStringFormat",(e,t)=>{pn.init(e,t),ta.init(e,t)}),$c=E("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=nc),me.init(e,t)}),Mc=E("$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=Fa(n))}else t.pattern??(t.pattern=Fa());me.init(e,t)}),Fc=E("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=ac),me.init(e,t)}),Lc=E("$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=E("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=sc()),me.init(e,t)}),jc=E("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=tc),me.init(e,t)}),qc=E("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Wu),me.init(e,t)}),Zc=E("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Ku),me.init(e,t)}),Gc=E("$ZodULID",(e,t)=>{t.pattern??(t.pattern=Xu),me.init(e,t)}),Bc=E("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Qu),me.init(e,t)}),Vc=E("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=ec),me.init(e,t)}),Hc=E("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=hc(t)),me.init(e,t)}),Jc=E("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=fc),me.init(e,t)}),Yc=E("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=gc(t)),me.init(e,t)}),Wc=E("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=rc),me.init(e,t)}),Kc=E("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=ic),me.init(e,t),e._zod.bag.format="ipv4"}),Xc=E("$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=E("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=uc),me.init(e,t)}),ed=E("$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 Ms(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}const td=E("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=dc),me.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=r=>{Ms(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}});function rd(e){if(!xs.test(e))return!1;const t=e.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return Ms(r)}const nd=E("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=xs),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=E("$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=E("$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})}}),Fs=E("$ZodNumber",(e,t)=>{ce.init(e,t),e._zod.pattern=e._zod.bag.pattern??Cs,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=E("$ZodNumberFormat",(e,t)=>{bc.init(e,t),Fs.init(e,t)}),ld=E("$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=E("$ZodNull",(e,t)=>{ce.init(e,t),e._zod.pattern=wc,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=E("$ZodAny",(e,t)=>{ce.init(e,t),e._zod.parse=r=>r}),dd=E("$ZodUnknown",(e,t)=>{ce.init(e,t),e._zod.parse=r=>r}),pd=E("$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 La(e,t,r){e.issues.length&&t.issues.push(...Bt(r,e.issues)),t.value[r]=e.value}const fd=E("$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=>La(u,r,s))):La(l,r,s)}return o.length?Promise.all(o).then(()=>r):r}});function Br(e,t,r,n,a){if(e.issues.length){if(a&&!(r in n))return;t.issues.push(...Bt(r,e.issues))}e.value===void 0?r in n&&(t.value[r]=void 0):t.value[r]=e.value}function Ls(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 Us(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 d in t){if(i.has(d))continue;if(u==="never"){s.push(d);continue}const p=l.run({value:t[d],issues:[]},n);p instanceof Promise?e.push(p.then(v=>Br(v,r,d,t,c))):Br(p,r,d,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=E("$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=un(()=>Ls(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 d of c.values)l[u].add(d)}}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=[],d=s.shape;for(const p of s.keys){const v=d[p],b=v._zod.optout==="optional",_=v._zod.run({value:u[p],issues:[]},l);_ instanceof Promise?c.push(_.then(I=>Br(I,i,p,u,b))):Br(_,i,p,u,b)}return o?Us(c,u,i,l,n.value,e):c.length?Promise.all(c).then(()=>i):i}}),hd=E("$ZodObjectJIT",(e,t)=>{gd.init(e,t);const r=e._zod.parse,n=un(()=>Ls(t)),a=p=>{var m;const v=new Dc(["shape","payload","ctx"]),b=n.value,_=z=>{const R=Ma(z);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 z of b.keys)I[z]=`key_${P++}`;v.write("const newResult = {};");for(const z of b.keys){const R=I[z],y=Ma(z),O=p[z],D=((m=O==null?void 0:O._zod)==null?void 0:m.optout)==="optional";v.write(`const ${R} = ${_(z)};`),D?v.write(`
6
+ if (${R}.issues.length) {
7
7
  if (${y} in input) {
8
- payload.issues = payload.issues.concat(${x}.issues.map(iss => ({
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 (${x}.value === undefined) {
15
+ if (${R}.value === undefined) {
16
16
  if (${y} in input) {
17
17
  newResult[${y}] = undefined;
18
18
  }
19
19
  } else {
20
- newResult[${y}] = ${x}.value;
20
+ newResult[${y}] = ${R}.value;
21
21
  }
22
22
 
23
23
  `):v.write(`
24
- if (${x}.issues.length) {
25
- payload.issues = payload.issues.concat(${x}.issues.map(iss => ({
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 (${x}.value === undefined) {
31
+ if (${R}.value === undefined) {
32
32
  if (${y} in input) {
33
33
  newResult[${y}] = undefined;
34
34
  }
35
35
  } else {
36
- newResult[${y}] = ${x}.value;
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=gr,i=!Es.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?Us([],E,d,v,p,e):d):r(d,v):(d.issues.push({expected:"object",code:"invalid_type",input:E,inst:e}),d)}});function Ua(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=>wt(s,n,vt())))}),t)}const js=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=>Kn(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=>Ua(l,a,e,o)):Ua(i,a,e,o)}}),md=T("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,js.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=un(()=>{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])=>ja(r,l,u)):ja(r,o,s)}});function Ln(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=Ln(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=Ln(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 ja(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=Ln(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"&&Cs.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=>wt(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}}),wd=T("$ZodEnum",(e,t)=>{ce.init(e,t);const r=Is(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}}),_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}}),Td=T("$ZodTransform",(e,t)=>{ce.init(e,t),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new bs(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 qa(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}const qs=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(`^(${Kn(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=>qa(o,r.value)):qa(a,r.value)}return r.value===void 0?r:t.innerType._zod.run(r,n)}}),bd=T("$ZodExactOptional",(e,t)=>{qs.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(`^(${Kn(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=>Za(o,t)):Za(a,t)}});function Za(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=>Ga(o,e)):Ga(a,e)}});function Ga(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=>wt(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=>wt(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=>Lr(s,t.in,n)):Lr(o,t.in,n)}const a=t.in._zod.run(r,n);return a instanceof Promise?a.then(o=>Lr(o,t.out,n)):Lr(a,t.out,n)}});function Lr(e,t,r){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},r)}const xd=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(Ba):Ba(a)}});function Ba(e){return e.value=Object.freeze(e.value),e}const Rd=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=>Va(o,r,n,e));Va(a,r,n,e)}});function Va(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(hr(a))}}var Ha;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}(Ha=globalThis).__zod_globalRegistry??(Ha.__zod_globalRegistry=Cd());const ur=globalThis.__zod_globalRegistry;function Dd(e,t){return new e({type:"string",...k(t)})}function zd(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...k(t)})}function Ja(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 Ya(e,t){return new zs({check:"less_than",...k(t),value:e,inclusive:!1})}function bn(e,t){return new zs({check:"less_than",...k(t),value:e,inclusive:!0})}function Wa(e,t){return new $s({check:"greater_than",...k(t),value:e,inclusive:!1})}function En(e,t){return new $s({check:"greater_than",...k(t),value:e,inclusive:!0})}function Ka(e,t){return new bc({check:"multiple_of",...k(t),value:e})}function Zs(e,t){return new Ic({check:"max_length",...k(t),maximum:e})}function Vr(e,t){return new Sc({check:"min_length",...k(t),minimum:e})}function Gs(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 hp(e){return new xc({check:"string_format",format:"uppercase",...k(e)})}function mp(e,t){return new Rc({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 wp(e){return Kt(t=>t.normalize(e))}function _p(){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(hr(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(hr(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 Hr(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,_=t.processors[a.type];if(!_)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${a.type}`);_(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 Jr(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 _;const p=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){const I=(_=e.external.registry.get(c[0]))==null?void 0:_.id,P=e.external.uri??(m=>m);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 _ in E)delete E[_];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(z,R)=>C(p,z,R)};let o;const s=gr,i=!bs.jitless,u=i&&Nu.value,c=t.catchall;let d;e._zod.parse=(p,v)=>{d??(d=n.value);const b=p.value;return s(b)?i&&u&&(v==null?void 0:v.async)===!1&&v.jitless!==!0?(o||(o=a(t.shape)),p=o(p,v),c?Us([],b,p,v,d,e):p):r(p,v):(p.issues.push({expected:"object",code:"invalid_type",input:b,inst:e}),p)}});function Ua(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=>!Gt(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,wt())))}),t)}const js=E("$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=>Kn(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=>Ua(l,a,e,o)):Ua(i,a,e,o)}}),md=E("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,js.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=un(()=>{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=E("$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])=>ja(r,l,u)):ja(r,o,s)}});function Ln(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(Ht(e)&&Ht(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=Ln(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=Ln(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 ja(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}),Gt(e))return e;const s=Ln(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=E("$ZodRecord",(e,t)=>{ce.init(e,t),e._zod.parse=(r,n)=>{const a=r.value;if(!Ht(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(d=>{d.issues.length&&r.issues.push(...Bt(u,d.issues)),r.value[u]=d.value})):(c.issues.length&&r.issues.push(...Bt(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"&&Cs.test(i)&&l.issues.length&&l.issues.some(d=>d.code==="invalid_type"&&d.expected==="number")){const d=t.keyType._zod.run({value:Number(i),issues:[]},n);if(d instanceof Promise)throw new Error("Async schemas not supported in object keys currently");d.issues.length===0&&(l=d)}if(l.issues.length){t.mode==="loose"?r.value[i]=a[i]:r.issues.push({code:"invalid_key",origin:"record",issues:l.issues.map(d=>_t(d,n,wt())),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(d=>{d.issues.length&&r.issues.push(...Bt(i,d.issues)),r.value[l.value]=d.value})):(c.issues.length&&r.issues.push(...Bt(i,c.issues)),r.value[l.value]=c.value)}}return o.length?Promise.all(o).then(()=>r):r}}),wd=E("$ZodEnum",(e,t)=>{ce.init(e,t);const r=Is(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"?Jt(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=E("$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"?Jt(n):n?Jt(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=E("$ZodTransform",(e,t)=>{ce.init(e,t),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Es(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 Vt;return r.value=a,r}});function qa(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}const qs=E("$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(`^(${Kn(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=>qa(o,r.value)):qa(a,r.value)}return r.value===void 0?r:t.innerType._zod.run(r,n)}}),Ed=E("$ZodExactOptional",(e,t)=>{qs.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=E("$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(`^(${Kn(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=E("$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=>Za(o,t)):Za(a,t)}});function Za(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const Sd=E("$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=E("$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=>Ga(o,e)):Ga(a,e)}});function Ga(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=E("$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,wt()))},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,wt()))},input:r.value}),r.issues=[]),r)}}),Od=E("$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=>Lr(s,t.in,n)):Lr(o,t.in,n)}const a=t.in._zod.run(r,n);return a instanceof Promise?a.then(o=>Lr(o,t.out,n)):Lr(a,t.out,n)}});function Lr(e,t,r){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},r)}const Rd=E("$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(Ba):Ba(a)}});function Ba(e){return e.value=Object.freeze(e.value),e}const xd=E("$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=E("$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=>Va(o,r,n,e));Va(a,r,n,e)}});function Va(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(hr(a))}}var Ha;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}(Ha=globalThis).__zod_globalRegistry??(Ha.__zod_globalRegistry=Cd());const cr=globalThis.__zod_globalRegistry;function Dd(e,t){return new e({type:"string",...k(t)})}function zd(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...k(t)})}function Ja(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 Ya(e,t){return new zs({check:"less_than",...k(t),value:e,inclusive:!1})}function En(e,t){return new zs({check:"less_than",...k(t),value:e,inclusive:!0})}function Wa(e,t){return new $s({check:"greater_than",...k(t),value:e,inclusive:!1})}function bn(e,t){return new $s({check:"greater_than",...k(t),value:e,inclusive:!0})}function Ka(e,t){return new Ec({check:"multiple_of",...k(t),value:e})}function Zs(e,t){return new Ic({check:"max_length",...k(t),maximum:e})}function Vr(e,t){return new Sc({check:"min_length",...k(t),minimum:e})}function Gs(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 hp(e){return new Rc({check:"string_format",format:"uppercase",...k(e)})}function mp(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 Xt(e){return new Cc({check:"overwrite",tx:e})}function wp(e){return Xt(t=>t.normalize(e))}function _p(){return Xt(e=>e.trim())}function Tp(){return Xt(e=>e.toLowerCase())}function Ep(){return Xt(e=>e.toUpperCase())}function bp(){return Xt(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(hr(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(hr(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 Hr(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)??cr,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,d;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=(d=(c=e._zod).toJSONSchema)==null?void 0:d.call(c);if(i)s.schema=i;else{const p={...r,schemaPath:[...r.schemaPath,e],path:r.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,s.schema,p);else{const b=s.schema,_=t.processors[a.type];if(!_)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${a.type}`);_(e,t,b,p)}const v=e._zod.parent;v&&(s.ref||(s.ref=v),ue(v,t,p),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 Jr(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 d=(s=e.metadataRegistry.get(c[0]))==null?void 0:s.id;if(d){const p=n.get(d);if(p&&p!==c[0])throw new Error(`Duplicate schema id "${d}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(d,c[0])}}const a=c=>{var _;const d=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){const I=(_=e.external.registry.get(c[0]))==null?void 0:_.id,P=e.external.uri??(m=>m);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")}#/${d}/${C}`}}if(c[1]===r)return{ref:"#"};const v=`#/${d}/`,b=c[1].schema.id??`__schema${e.counter++}`;return{defId:b,ref:v+b}},o=c=>{if(c[1].schema.$ref)return;const d=c[1],{ref:p,defId:v}=a(c);d.def={...d.schema},v&&(d.defId=v);const b=d.schema;for(const _ in b)delete b[_];b.$ref=p};if(e.cycles==="throw")for(const c of e.seen.entries()){const d=c[1];if(d.cycle)throw new Error(`Cycle detected: #/${(i=d.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 Yr(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 _=e.seen.get(v),I=_.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 _.def&&JSON.stringify(p[C])===JSON.stringify(_.def[C])&&delete p[C]}const E=u._zod.parent;if(E&&E!==v){n(E);const _=e.seen.get(E);if(_!=null&&_.schema.$ref&&(p.$ref=_.schema.$ref,_.def))for(const I in p)I==="$ref"||I==="allOf"||I in _.def&&JSON.stringify(p[I])===JSON.stringify(_.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:Wr(t,"input",e.processors),output:Wr(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 xp=(e,t={})=>r=>{const n=Hr({...r,processors:t});return ue(e,n),Jr(n,e),Yr(n,e)},Wr=(e,t,r={})=>n=>{const{libraryOptions:a,target:o}=n??{},s=Hr({...a??{},target:o,io:t,processors:r});return ue(e,s),Jr(s,e),Yr(s,e)},Rp={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},Bs=(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=Rp[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}))])}},Vs=(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)},Hs=(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")},Js=(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")},Dp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema")},Ys=(e,t,r,n)=>{r.not={}},Ws=(e,t,r,n)=>{},Ks=(e,t,r,n)=>{},zp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema")},Xs=(e,t,r,n)=>{const a=e._zod.def,o=Is(a.entries);o.every(s=>typeof s=="number")&&(r.type="number"),o.every(s=>typeof s=="string")&&(r.type="string"),r.enum=o},Qs=(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"},ei=(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")},ti=(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")},ri=(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"]})},ni=(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)},ai=(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},oi=(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)},si=(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)}},ii=(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"}]},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},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,r.default=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,t.io==="input"&&(r._prefault=JSON.parse(JSON.stringify(a.defaultValue)))},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;let s;try{s=a.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}r.default=s},pi=(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},fi=(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},ra=(e,t,r,n)=>{const a=e._zod.def;ue(a.innerType,t,n);const o=t.seen.get(e);o.ref=a.innerType},gi=(e,t,r,n)=>{const a=e._zod.innerType;ue(a,t,n);const o=t.seen.get(e);o.ref=a},Xa={string:Bs,number:Vs,boolean:Hs,bigint:kp,symbol:Pp,null:Js,undefined:Cp,void:Dp,never:Ys,any:Ws,unknown:Ks,date:zp,enum:Xs,literal:Qs,nan:$p,template_literal:Mp,file:Fp,success:Lp,custom:ei,function:Up,transform:ti,map:jp,set:qp,array:ri,object:ni,union:ai,intersection:oi,tuple:Zp,record:si,nullable:ii,nonoptional:li,default:ui,prefault:ci,catch:di,pipe:pi,readonly:fi,promise:Gp,optional:ra,lazy:gi};function Bp(e,t){if("_idmap"in e){const n=e,a=Hr({...t,processors:Xa}),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;Jr(a,c),s[u]=Yr(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=Hr({...t,processors:Xa});return ue(e,r),Jr(r,e),Yr(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)=>{Os.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,Fn,2)}},addIssues:{value:r=>{e.issues.push(...r),e.message=JSON.stringify(e.issues,Fn,2)}},isEmpty:{get(){return e.issues.length===0}}})},Be=T("ZodError",ef,{Parent:Error}),tf=Qn(Be),rf=ea(Be),nf=cn(Be),hi=dn(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:Wr(e,"input"),output:Wr(e,"output")}}),e.toJSONSchema=xp(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)=>hi(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=()=>to(e),e.exactOptional=()=>Wf(e),e.nullable=()=>ro(e),e.nullish=()=>to(ro(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=>no(e,Jf(r)),e.default=r=>Qf(e,r),e.prefault=r=>tg(e,r),e.catch=r=>ag(e,r),e.pipe=r=>no(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)=>{ta.init(e,t),de.init(e,t),e._zod.processJSONSchema=(n,a,o)=>Bs(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(mp(...n)),e.startsWith=(...n)=>e.check(yp(...n)),e.endsWith=(...n)=>e.check(vp(...n)),e.min=(...n)=>e.check(Vr(...n)),e.max=(...n)=>e.check(Zs(...n)),e.length=(...n)=>e.check(Gs(...n)),e.nonempty=(...n)=>e.check(Vr(1,...n)),e.lowercase=n=>e.check(gp(n)),e.uppercase=n=>e.check(hp(n)),e.trim=()=>e.check(_p()),e.normalize=(...n)=>e.check(wp(...n)),e.toLowerCase=()=>e.check(Tp()),e.toUpperCase=()=>e.check(bp()),e.slugify=()=>e.check(Ep())}),ff=T("ZodString",(e,t)=>{ta.init(e,t),mi.init(e,t),e.email=r=>e.check(zd(gf,r)),e.url=r=>e.check(Ud(hf,r)),e.jwt=r=>e.check(tp(Rf,r)),e.emoji=r=>e.check(jd(mf,r)),e.guid=r=>e.check(Ja(Qa,r)),e.uuid=r=>e.check($d(Ur,r)),e.uuidv4=r=>e.check(Md(Ur,r)),e.uuidv6=r=>e.check(Fd(Ur,r)),e.uuidv7=r=>e.check(Ld(Ur,r)),e.nanoid=r=>e.check(qd(yf,r)),e.guid=r=>e.check(Ja(Qa,r)),e.cuid=r=>e.check(Zd(vf,r)),e.cuid2=r=>e.check(Gd(wf,r)),e.ulid=r=>e.check(Bd(_f,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(xf,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 R(e){return Dd(ff,e)}const ye=T("ZodStringFormat",(e,t)=>{he.init(e,t),mi.init(e,t)}),gf=T("ZodEmail",(e,t)=>{Fc.init(e,t),ye.init(e,t)}),Qa=T("ZodGUID",(e,t)=>{$c.init(e,t),ye.init(e,t)}),Ur=T("ZodUUID",(e,t)=>{Mc.init(e,t),ye.init(e,t)}),hf=T("ZodURL",(e,t)=>{Lc.init(e,t),ye.init(e,t)}),mf=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)}),wf=T("ZodCUID2",(e,t)=>{Zc.init(e,t),ye.init(e,t)}),_f=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)}),xf=T("ZodE164",(e,t)=>{ad.init(e,t),ye.init(e,t)}),Rf=T("ZodJWT",(e,t)=>{sd.init(e,t),ye.init(e,t)}),yi=T("ZodNumber",(e,t)=>{Fs.init(e,t),de.init(e,t),e._zod.processJSONSchema=(n,a,o)=>Vs(e,n,a),e.gt=(n,a)=>e.check(Wa(n,a)),e.gte=(n,a)=>e.check(En(n,a)),e.min=(n,a)=>e.check(En(n,a)),e.lt=(n,a)=>e.check(Ya(n,a)),e.lte=(n,a)=>e.check(bn(n,a)),e.max=(n,a)=>e.check(bn(n,a)),e.int=n=>e.check(eo(n)),e.safe=n=>e.check(eo(n)),e.positive=n=>e.check(Wa(0,n)),e.nonnegative=n=>e.check(En(0,n)),e.negative=n=>e.check(Ya(0,n)),e.nonpositive=n=>e.check(bn(0,n)),e.multipleOf=(n,a)=>e.check(Ka(n,a)),e.step=(n,a)=>e.check(Ka(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 Kr(e){return sp(yi,e)}const kf=T("ZodNumberFormat",(e,t)=>{id.init(e,t),yi.init(e,t)});function eo(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)=>Hs(e,r,n)});function na(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)=>Js(e,r,n)});function Df(e){return up(Cf,e)}const zf=T("ZodAny",(e,t)=>{cd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Ws()});function mt(){return cp(zf)}const $f=T("ZodUnknown",(e,t)=>{dd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Ks()});function Rt(){return dp($f)}const Mf=T("ZodNever",(e,t)=>{pd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Ys(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)=>ri(e,r,n,a),e.element=t.element,e.min=(r,n)=>e.check(Vr(r,n)),e.nonempty=r=>e.check(Vr(1,r)),e.max=(r,n)=>e.check(Zs(r,n)),e.length=(r,n)=>e.check(Gs(r,n)),e.unwrap=()=>e.element});function Ue(e,t){return Ip(Lf,e,t)}const Uf=T("ZodObject",(e,t)=>{hd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ni(e,r,n,a),Y(e,"shape",()=>t.shape),e.keyof=()=>wi(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:Ff()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=r=>Cu(e,r),e.safeExtend=r=>Du(e,r),e.merge=r=>zu(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(Ti,e,r[0])});function G(e,t){const r={type:"object",shape:e??{},...k(t)};return new Uf(r)}const vi=T("ZodUnion",(e,t)=>{js.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ai(e,r,n,a),e.options=t.options});function Pe(e,t){return new vi({type:"union",options:e,...k(t)})}const jf=T("ZodDiscriminatedUnion",(e,t)=>{vi.init(e,t),md.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)=>oi(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)=>si(e,r,n,a),e.keyType=t.keyType,e.valueType=t.valueType});function _t(e,t,r){return new Bf({type:"record",keyType:e,valueType:t,...k(r)})}const Un=T("ZodEnum",(e,t)=>{wd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(n,a,o)=>Xs(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 Un({...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 Un({...t,checks:[],...k(a),entries:o})}});function wi(e,t){const r=Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e;return new Un({type:"enum",entries:r,...k(t)})}const Vf=T("ZodLiteral",(e,t)=>{_d.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Qs(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)=>ti(e,r),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new bs(e.constructor.name);r.addIssue=o=>{if(typeof o=="string")r.issues.push(hr(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(hr(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)=>{qs.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ra(e,r,n,a),e.unwrap=()=>e._zod.def.innerType});function to(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)=>ra(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)=>ii(e,r,n,a),e.unwrap=()=>e._zod.def.innerType});function ro(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)=>ui(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():As(t)}})}const eg=T("ZodPrefault",(e,t)=>{Sd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ci(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():As(t)}})}const Ti=T("ZodNonOptional",(e,t)=>{Ad.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 rg(e,t){return new Ti({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)=>di(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)=>pi(e,r,n,a),e.in=t.in,e.out=t.out});function no(e,t){return new og({type:"pipe",in:e,out:t})}const sg=T("ZodReadonly",(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.innerType});function ig(e){return new sg({type:"readonly",innerType:e})}const lg=T("ZodLazy",(e,t)=>{Rd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>gi(e,r,n,a),e.unwrap=()=>e._zod.def.getter()});function ug(e){return new lg({type:"lazy",getter:e})}const aa=T("ZodCustom",(e,t)=>{kd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ei(e,r)});function cg(e,t){return Sp(aa,e??(()=>!0),t)}function dg(e,t={}){return Ap(aa,e,t)}function pg(e){return Np(e)}function Xr(e,t={}){const r=new aa({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 ao;(function(e){e.mergeShapes=(t,r)=>({...t,...r})})(ao||(ao={}));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 Qr 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 Qr))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()}}Qr.create=e=>new Qr(e);var oo;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t==null?void 0:t.message})(oo||(oo={}));var j;(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"})(j||(j={}));class so 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 In(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=In,onError:r=In,onRetry:n=In,onComment:a}=e;let o="",s=!0,i,l="",u="";function c(_){const I=s?_.replace(/^\xEF\xBB\xBF/,""):_,[P,C]=gg(`${o}${I}`);for(const m of P)p(m);o=C,s=!1}function p(_){if(_===""){v();return}if(_.startsWith(":")){a&&a(_.slice(_.startsWith(": ")?2:1));return}const I=_.indexOf(":");if(I!==-1){const P=_.slice(0,I),C=_[I+1]===" "?2:1,m=_.slice(I+C);d(P,m,_);return}d(_,"",_)}function d(_,I,P){switch(_){case"event":u=I;break;case"data":l=`${l}${I}
41
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const c of e.seen.entries()){const d=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(d.cycle){o(c);continue}if(d.count>1&&e.reused==="ref"){o(c);continue}}}function Yr(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 d=c.def??c.schema,p={...d},v=c.ref;if(c.ref=null,v){n(v);const _=e.seen.get(v),I=_.schema;if(I.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(d.allOf=d.allOf??[],d.allOf.push(I)):Object.assign(d,I),Object.assign(d,p),u._zod.parent===v)for(const C in d)C==="$ref"||C==="allOf"||C in p||delete d[C];if(I.$ref)for(const C in d)C==="$ref"||C==="allOf"||C in _.def&&JSON.stringify(d[C])===JSON.stringify(_.def[C])&&delete d[C]}const b=u._zod.parent;if(b&&b!==v){n(b);const _=e.seen.get(b);if(_!=null&&_.schema.$ref&&(d.$ref=_.schema.$ref,_.def))for(const I in d)I==="$ref"||I==="allOf"||I in _.def&&JSON.stringify(d[I])===JSON.stringify(_.def[I])&&delete d[I]}e.override({zodSchema:u,jsonSchema:d,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:Wr(t,"input",e.processors),output:Wr(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 Rp=(e,t={})=>r=>{const n=Hr({...r,processors:t});return ue(e,n),Jr(n,e),Yr(n,e)},Wr=(e,t,r={})=>n=>{const{libraryOptions:a,target:o}=n??{},s=Hr({...a??{},target:o,io:t,processors:r});return ue(e,s),Jr(s,e),Yr(s,e)},xp={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},Bs=(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(d=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:d.source}))])}},Vs=(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)},Hs=(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")},Js=(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")},Dp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema")},Ys=(e,t,r,n)=>{r.not={}},Ws=(e,t,r,n)=>{},Ks=(e,t,r,n)=>{},zp=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema")},Xs=(e,t,r,n)=>{const a=e._zod.def,o=Is(a.entries);o.every(s=>typeof s=="number")&&(r.type="number"),o.every(s=>typeof s=="string")&&(r.type="string"),r.enum=o},Qs=(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"},ei=(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")},ti=(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")},ri=(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"]})},ni=(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 d=o.shape[c]._zod;return t.io==="input"?d.optin===void 0:d.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)},ai=(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},oi=(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((p,v)=>ue(p,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:d}=e._zod.bag;typeof c=="number"&&(a.minItems=c),typeof d=="number"&&(a.maxItems=d)},si=(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 d of l)a.patternProperties[d.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(d=>typeof d=="string"||typeof d=="number");c.length>0&&(a.required=c)}},ii=(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"}]},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},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,r.default=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,t.io==="input"&&(r._prefault=JSON.parse(JSON.stringify(a.defaultValue)))},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;let s;try{s=a.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}r.default=s},pi=(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},fi=(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},ra=(e,t,r,n)=>{const a=e._zod.def;ue(a.innerType,t,n);const o=t.seen.get(e);o.ref=a.innerType},gi=(e,t,r,n)=>{const a=e._zod.innerType;ue(a,t,n);const o=t.seen.get(e);o.ref=a},Xa={string:Bs,number:Vs,boolean:Hs,bigint:kp,symbol:Pp,null:Js,undefined:Cp,void:Dp,never:Ys,any:Ws,unknown:Ks,date:zp,enum:Xs,literal:Qs,nan:$p,template_literal:Mp,file:Fp,success:Lp,custom:ei,function:Up,transform:ti,map:jp,set:qp,array:ri,object:ni,union:ai,intersection:oi,tuple:Zp,record:si,nullable:ii,nonoptional:li,default:ui,prefault:ci,catch:di,pipe:pi,readonly:fi,promise:Gp,optional:ra,lazy:gi};function Bp(e,t){if("_idmap"in e){const n=e,a=Hr({...t,processors:Xa}),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;Jr(a,c),s[u]=Yr(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=Hr({...t,processors:Xa});return ue(e,r),Jr(r,e),Yr(r,e)}const Vp=E("ZodISODateTime",(e,t)=>{Hc.init(e,t),ve.init(e,t)});function Hp(e){return rp(Vp,e)}const Jp=E("ZodISODate",(e,t)=>{Jc.init(e,t),ve.init(e,t)});function Yp(e){return np(Jp,e)}const Wp=E("ZodISOTime",(e,t)=>{Yc.init(e,t),ve.init(e,t)});function Kp(e){return ap(Wp,e)}const Xp=E("ZodISODuration",(e,t)=>{Wc.init(e,t),ve.init(e,t)});function Qp(e){return op(Xp,e)}const ef=(e,t)=>{Os.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,Fn,2)}},addIssues:{value:r=>{e.issues.push(...r),e.message=JSON.stringify(e.issues,Fn,2)}},isEmpty:{get(){return e.issues.length===0}}})},Be=E("ZodError",ef,{Parent:Error}),tf=Qn(Be),rf=ea(Be),nf=cn(Be),hi=dn(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=E("ZodType",(e,t)=>(ce.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:Wr(e,"input"),output:Wr(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)=>It(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)=>hi(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(Xt(r)),e.optional=()=>to(e),e.exactOptional=()=>Wf(e),e.nullable=()=>ro(e),e.nullish=()=>to(ro(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=>no(e,Jf(r)),e.default=r=>Qf(e,r),e.prefault=r=>tg(e,r),e.catch=r=>ag(e,r),e.pipe=r=>no(e,r),e.readonly=()=>ig(e),e.describe=r=>{const n=e.clone();return cr.add(n,{description:r}),n},Object.defineProperty(e,"description",{get(){var r;return(r=cr.get(e))==null?void 0:r.description},configurable:!0}),e.meta=(...r)=>{if(r.length===0)return cr.get(e);const n=e.clone();return cr.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=E("_ZodString",(e,t)=>{ta.init(e,t),de.init(e,t),e._zod.processJSONSchema=(n,a,o)=>Bs(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(mp(...n)),e.startsWith=(...n)=>e.check(yp(...n)),e.endsWith=(...n)=>e.check(vp(...n)),e.min=(...n)=>e.check(Vr(...n)),e.max=(...n)=>e.check(Zs(...n)),e.length=(...n)=>e.check(Gs(...n)),e.nonempty=(...n)=>e.check(Vr(1,...n)),e.lowercase=n=>e.check(gp(n)),e.uppercase=n=>e.check(hp(n)),e.trim=()=>e.check(_p()),e.normalize=(...n)=>e.check(wp(...n)),e.toLowerCase=()=>e.check(Tp()),e.toUpperCase=()=>e.check(Ep()),e.slugify=()=>e.check(bp())}),ff=E("ZodString",(e,t)=>{ta.init(e,t),mi.init(e,t),e.email=r=>e.check(zd(gf,r)),e.url=r=>e.check(Ud(hf,r)),e.jwt=r=>e.check(tp(xf,r)),e.emoji=r=>e.check(jd(mf,r)),e.guid=r=>e.check(Ja(Qa,r)),e.uuid=r=>e.check($d(Ur,r)),e.uuidv4=r=>e.check(Md(Ur,r)),e.uuidv6=r=>e.check(Fd(Ur,r)),e.uuidv7=r=>e.check(Ld(Ur,r)),e.nanoid=r=>e.check(qd(yf,r)),e.guid=r=>e.check(Ja(Qa,r)),e.cuid=r=>e.check(Zd(vf,r)),e.cuid2=r=>e.check(Gd(wf,r)),e.ulid=r=>e.check(Bd(_f,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(Ef,r)),e.ipv4=r=>e.check(Jd(bf,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 Dd(ff,e)}const ve=E("ZodStringFormat",(e,t)=>{me.init(e,t),mi.init(e,t)}),gf=E("ZodEmail",(e,t)=>{Fc.init(e,t),ve.init(e,t)}),Qa=E("ZodGUID",(e,t)=>{$c.init(e,t),ve.init(e,t)}),Ur=E("ZodUUID",(e,t)=>{Mc.init(e,t),ve.init(e,t)}),hf=E("ZodURL",(e,t)=>{Lc.init(e,t),ve.init(e,t)}),mf=E("ZodEmoji",(e,t)=>{Uc.init(e,t),ve.init(e,t)}),yf=E("ZodNanoID",(e,t)=>{jc.init(e,t),ve.init(e,t)}),vf=E("ZodCUID",(e,t)=>{qc.init(e,t),ve.init(e,t)}),wf=E("ZodCUID2",(e,t)=>{Zc.init(e,t),ve.init(e,t)}),_f=E("ZodULID",(e,t)=>{Gc.init(e,t),ve.init(e,t)}),Tf=E("ZodXID",(e,t)=>{Bc.init(e,t),ve.init(e,t)}),Ef=E("ZodKSUID",(e,t)=>{Vc.init(e,t),ve.init(e,t)}),bf=E("ZodIPv4",(e,t)=>{Kc.init(e,t),ve.init(e,t)}),If=E("ZodIPv6",(e,t)=>{Xc.init(e,t),ve.init(e,t)}),Sf=E("ZodCIDRv4",(e,t)=>{Qc.init(e,t),ve.init(e,t)}),Af=E("ZodCIDRv6",(e,t)=>{ed.init(e,t),ve.init(e,t)}),Nf=E("ZodBase64",(e,t)=>{td.init(e,t),ve.init(e,t)}),Of=E("ZodBase64URL",(e,t)=>{nd.init(e,t),ve.init(e,t)}),Rf=E("ZodE164",(e,t)=>{ad.init(e,t),ve.init(e,t)}),xf=E("ZodJWT",(e,t)=>{sd.init(e,t),ve.init(e,t)}),yi=E("ZodNumber",(e,t)=>{Fs.init(e,t),de.init(e,t),e._zod.processJSONSchema=(n,a,o)=>Vs(e,n,a),e.gt=(n,a)=>e.check(Wa(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(Ya(n,a)),e.lte=(n,a)=>e.check(En(n,a)),e.max=(n,a)=>e.check(En(n,a)),e.int=n=>e.check(eo(n)),e.safe=n=>e.check(eo(n)),e.positive=n=>e.check(Wa(0,n)),e.nonnegative=n=>e.check(bn(0,n)),e.negative=n=>e.check(Ya(0,n)),e.nonpositive=n=>e.check(En(0,n)),e.multipleOf=(n,a)=>e.check(Ka(n,a)),e.step=(n,a)=>e.check(Ka(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 Kr(e){return sp(yi,e)}const kf=E("ZodNumberFormat",(e,t)=>{id.init(e,t),yi.init(e,t)});function eo(e){return ip(kf,e)}const Pf=E("ZodBoolean",(e,t)=>{ld.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Hs(e,r,n)});function na(e){return lp(Pf,e)}const Cf=E("ZodNull",(e,t)=>{ud.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Js(e,r,n)});function Df(e){return up(Cf,e)}const zf=E("ZodAny",(e,t)=>{cd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Ws()});function yt(){return cp(zf)}const $f=E("ZodUnknown",(e,t)=>{dd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Ks()});function kt(){return dp($f)}const Mf=E("ZodNever",(e,t)=>{pd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Ys(e,r,n)});function Ff(e){return pp(Mf,e)}const Lf=E("ZodArray",(e,t)=>{fd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ri(e,r,n,a),e.element=t.element,e.min=(r,n)=>e.check(Vr(r,n)),e.nonempty=r=>e.check(Vr(1,r)),e.max=(r,n)=>e.check(Zs(r,n)),e.length=(r,n)=>e.check(Gs(r,n)),e.unwrap=()=>e.element});function Ue(e,t){return Ip(Lf,e,t)}const Uf=E("ZodObject",(e,t)=>{hd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ni(e,r,n,a),Y(e,"shape",()=>t.shape),e.keyof=()=>wi(Object.keys(e._zod.def.shape)),e.catchall=r=>e.clone({...e._zod.def,catchall:r}),e.passthrough=()=>e.clone({...e._zod.def,catchall:kt()}),e.loose=()=>e.clone({...e._zod.def,catchall:kt()}),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=>Du(e,r),e.merge=r=>zu(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(Ti,e,r[0])});function G(e,t){const r={type:"object",shape:e??{},...k(t)};return new Uf(r)}const vi=E("ZodUnion",(e,t)=>{js.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ai(e,r,n,a),e.options=t.options});function Pe(e,t){return new vi({type:"union",options:e,...k(t)})}const jf=E("ZodDiscriminatedUnion",(e,t)=>{vi.init(e,t),md.init(e,t)});function qf(e,t,r){return new jf({type:"union",options:t,discriminator:e,...k(r)})}const Zf=E("ZodIntersection",(e,t)=>{yd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>oi(e,r,n,a)});function Gf(e,t){return new Zf({type:"intersection",left:e,right:t})}const Bf=E("ZodRecord",(e,t)=>{vd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>si(e,r,n,a),e.keyType=t.keyType,e.valueType=t.valueType});function Tt(e,t,r){return new Bf({type:"record",keyType:e,valueType:t,...k(r)})}const Un=E("ZodEnum",(e,t)=>{wd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(n,a,o)=>Xs(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 Un({...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 Un({...t,checks:[],...k(a),entries:o})}});function wi(e,t){const r=Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e;return new Un({type:"enum",entries:r,...k(t)})}const Vf=E("ZodLiteral",(e,t)=>{_d.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>Qs(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=E("ZodTransform",(e,t)=>{Td.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ti(e,r),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Es(e.constructor.name);r.addIssue=o=>{if(typeof o=="string")r.issues.push(hr(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(hr(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=E("ZodOptional",(e,t)=>{qs.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ra(e,r,n,a),e.unwrap=()=>e._zod.def.innerType});function to(e){return new _i({type:"optional",innerType:e})}const Yf=E("ZodExactOptional",(e,t)=>{Ed.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ra(e,r,n,a),e.unwrap=()=>e._zod.def.innerType});function Wf(e){return new Yf({type:"optional",innerType:e})}const Kf=E("ZodNullable",(e,t)=>{bd.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 ro(e){return new Kf({type:"nullable",innerType:e})}const Xf=E("ZodDefault",(e,t)=>{Id.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.removeDefault=e.unwrap});function Qf(e,t){return new Xf({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():As(t)}})}const eg=E("ZodPrefault",(e,t)=>{Sd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ci(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():As(t)}})}const Ti=E("ZodNonOptional",(e,t)=>{Ad.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 rg(e,t){return new Ti({type:"nonoptional",innerType:e,...k(t)})}const ng=E("ZodCatch",(e,t)=>{Nd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>di(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=E("ZodPipe",(e,t)=>{Od.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>pi(e,r,n,a),e.in=t.in,e.out=t.out});function no(e,t){return new og({type:"pipe",in:e,out:t})}const sg=E("ZodReadonly",(e,t)=>{Rd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>fi(e,r,n,a),e.unwrap=()=>e._zod.def.innerType});function ig(e){return new sg({type:"readonly",innerType:e})}const lg=E("ZodLazy",(e,t)=>{xd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>gi(e,r,n,a),e.unwrap=()=>e._zod.def.getter()});function ug(e){return new lg({type:"lazy",getter:e})}const aa=E("ZodCustom",(e,t)=>{kd.init(e,t),de.init(e,t),e._zod.processJSONSchema=(r,n,a)=>ei(e,r)});function cg(e,t){return Sp(aa,e??(()=>!0),t)}function dg(e,t={}){return Ap(aa,e,t)}function pg(e){return Np(e)}function Xr(e,t={}){const r=new aa({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 ao;(function(e){e.mergeShapes=(t,r)=>({...t,...r})})(ao||(ao={}));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 Qr 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 Qr))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()}}Qr.create=e=>new Qr(e);var oo;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t==null?void 0:t.message})(oo||(oo={}));var j;(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"})(j||(j={}));class so 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 In(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=In,onError:r=In,onRetry:n=In,onComment:a}=e;let o="",s=!0,i,l="",u="";function c(_){const I=s?_.replace(/^\xEF\xBB\xBF/,""):_,[P,C]=gg(`${o}${I}`);for(const m of P)d(m);o=C,s=!1}function d(_){if(_===""){v();return}if(_.startsWith(":")){a&&a(_.slice(_.startsWith(": ")?2:1));return}const I=_.indexOf(":");if(I!==-1){const P=_.slice(0,I),C=_[I+1]===" "?2:1,m=_.slice(I+C);p(P,m,_);return}p(_,"",_)}function p(_,I,P){switch(_){case"event":u=I;break;case"data":l=`${l}${I}
42
42
  `;break;case"id":i=I.includes("\0")?void 0:I;break;case"retry":/^\d+$/.test(I)?n(parseInt(I,10)):r(new so(`Invalid \`retry\` value: "${I}"`,{type:"invalid-retry",value:I,line:P}));break;default:r(new so(`Unknown field "${_.length>20?`${_.slice(0,20)}…`:_}"`,{type:"unknown-field",field:_,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(_={}){o&&_.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(`
43
+ `)?l.slice(0,-1):l}),i=void 0,l="",u=""}function b(_={}){o&&_.consume&&d(o),s=!0,i=void 0,l="",u="",o=""}return{feed:c,reset:b}}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 hg 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 en(...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(io());return}const o=setTimeout(()=>{s(),n()},e),s=()=>{clearTimeout(o),r==null||r.removeEventListener("abort",i)},i=()=>{s(),a(io())};r==null||r.addEventListener("abort",i)})}function io(){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 Nr(e){return Object.fromEntries([...e.headers])}var{btoa:yg,atob:vg}=globalThis;function oa(e){const t=e.replace(/-/g,"+").replace(/_/g,"/"),r=vg(t);return Uint8Array.from(r,n=>n.codePointAt(0))}function tn(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCodePoint(e[r]);return yg(t)}var bi="AI_DownloadError",Ei=`vercel.ai.error.${bi}`,wg=Symbol.for(Ei),lo,uo,Sn=class extends(uo=H,lo=wg,uo){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:bi,message:a,cause:n}),this[lo]=!0,this.url=e,this.statusCode=t,this.statusText=r}static isInstance(e){return H.hasMarker(e,Ei)}},Or=({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()}`};Or();function sa(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 Ii({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 ia(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 xr(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 Si="4.0.3",bg=()=>globalThis.fetch,co=async({url:e,headers:t={},successfulResponseHandler:r,failedResponseHandler:n,abortSignal:a,fetch:o=bg()})=>{try{const s=await o(e,{method:"GET",headers:xr(t,`ai-sdk/provider-utils/${Si}`,ia()),signal:a}),i=Nr(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 Ii({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 Zr({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 po(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 Ai(e){const{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch{return po(e)}try{return po(e)}finally{Error.stackTraceLimit=t}}function Ni(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:Ni(e)}var Ng=Symbol("Let zodToJsonSchema decide on which parser to use"),fo={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"?{...fo,name:e}:{...fo,...e};function je(){return{}}function xg(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)!==j.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 Rg(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 Oi(e,t){return oe(e.type._def,t)}var Pg=(e,t)=>oe(e.innerType._def,t);function xi(e,t,r){const n=r??t.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((a,o)=>xi(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 Dg(e,t){return{...oe(e.innerType._def,t),default:e.defaultValue()}}function zg(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 An=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:()=>(An===void 0&&(An=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),An),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":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(`^${Nn(n.value,t)}`),n.message,t);break;case"endsWith":De(r,RegExp(`${Nn(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(Nn(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 Nn(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 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:go(t,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):e.pattern=go(t,n)}function go(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 hg 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 en(...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(io());return}const o=setTimeout(()=>{s(),n()},e),s=()=>{clearTimeout(o),r==null||r.removeEventListener("abort",i)},i=()=>{s(),a(io())};r==null||r.addEventListener("abort",i)})}function io(){return new DOMException("Delay was aborted","AbortError")}var lr=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 Nr(e){return Object.fromEntries([...e.headers])}var{btoa:yg,atob:vg}=globalThis;function oa(e){const t=e.replace(/-/g,"+").replace(/_/g,"/"),r=vg(t);return Uint8Array.from(r,n=>n.codePointAt(0))}function tn(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCodePoint(e[r]);return yg(t)}var Ei="AI_DownloadError",bi=`vercel.ai.error.${Ei}`,wg=Symbol.for(bi),lo,uo,Sn=class extends(uo=H,lo=wg,uo){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:Ei,message:a,cause:n}),this[lo]=!0,this.url=e,this.statusCode=t,this.statusText=r}static isInstance(e){return H.hasMarker(e,bi)}},Or=({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()}`};Or();function sa(e){return e==null?"unknown error":typeof e=="string"?e:e instanceof Error?e.message:JSON.stringify(e)}function Pt(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 Ii({error:e,url:t,requestBodyValues:r}){if(Pt(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 ia(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 Rr(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 Si="4.0.3",Eg=()=>globalThis.fetch,co=async({url:e,headers:t={},successfulResponseHandler:r,failedResponseHandler:n,abortSignal:a,fetch:o=Eg()})=>{try{const s=await o(e,{method:"GET",headers:Rr(t,`ai-sdk/provider-utils/${Si}`,ia()),signal:a}),i=Nr(s);if(!s.ok){let l;try{l=await n({response:s,url:e,requestBodyValues:{}})}catch(u){throw Pt(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&&(Pt(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 Ii({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 Zr({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 po(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 Ai(e){const{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch{return po(e)}try{return po(e)}finally{Error.stackTraceLimit=t}}function Ni(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:Ni(e)}var Ng=Symbol("Let zodToJsonSchema decide on which parser to use"),fo={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"?{...fo,name:e}:{...fo,...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)!==j.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 Oi(e,t){return oe(e.type._def,t)}var Pg=(e,t)=>oe(e.innerType._def,t);function Ri(e,t,r){const n=r??t.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((a,o)=>Ri(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 Dg(e,t){return{...oe(e.innerType._def,t),default:e.defaultValue()}}function zg(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 An=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:()=>(An===void 0&&(An=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),An),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 xi(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(`^${Nn(n.value,t)}`),n.message,t);break;case"endsWith":De(r,RegExp(`${Nn(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(Nn(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 Nn(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 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:go(t,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):e.pattern=go(t,n)}function go(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 ki(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)===j.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)===j.ZodEnum)return{...l,propertyNames:{enum:e.keyType._def.values}};if(((s=e.keyType)==null?void 0:s._def.typeName)===j.ZodBranded&&e.keyType._def.type._def.typeName===j.ZodString&&((i=e.keyType._def.type._def.checks)!=null&&i.length)){const{type:u,...c}=Oi(e.keyType._def,t);return{...l,propertyNames:c}}}return l}function qg(e,t){if(t.mapStrategy==="record")return ki(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 jn={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 jn&&(!n._def.checks||!n._def.checks.length))){const n=r.reduce((a,o)=>{const s=jn[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:[jn[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()},eh=(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 th(e,t){return oe(e.type._def,t)}function rh(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 nh(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 ah(){return{not:je()}}function oh(){return je()}var sh=(e,t)=>oe(e.innerType._def,t),ih=(e,t,r)=>{switch(t){case j.ZodString:return Ri(e,r);case j.ZodNumber:return Yg(e);case j.ZodObject:return Wg(e,r);case j.ZodBigInt:return Rg(e);case j.ZodBoolean:return kg();case j.ZodDate:return xi(e,r);case j.ZodUndefined:return ah();case j.ZodNull:return Bg();case j.ZodArray:return xg(e,r);case j.ZodUnion:case j.ZodDiscriminatedUnion:return Vg(e,r);case j.ZodIntersection:return Fg(e,r);case j.ZodTuple:return nh(e,r);case j.ZodRecord:return ki(e,r);case j.ZodLiteral:return Lg(e);case j.ZodEnum:return $g(e);case j.ZodNativeEnum:return Zg(e);case j.ZodNullable:return Jg(e,r);case j.ZodOptional:return Qg(e,r);case j.ZodMap:return qg(e,r);case j.ZodSet:return rh(e,r);case j.ZodLazy:return()=>e.getter()._def;case j.ZodPromise:return th(e,r);case j.ZodNaN:case j.ZodNever:return Gg();case j.ZodEffects:return zg(e,r);case j.ZodAny:return je();case j.ZodUnknown:return oh();case j.ZodDefault:return Dg(e,r);case j.ZodBranded:return Oi(e,r);case j.ZodReadonly:return sh(e,r);case j.ZodCatch:return Pg(e,r);case j.ZodPipeline:return eh(e,r);case j.ZodFunction:case j.ZodVoid:case j.ZodSymbol:return;default:return(n=>{})()}},lh=(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=uh(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=ih(e,e.typeName,t),i=typeof s=="function"?oe(s(),t):s;if(i&&ch(e,t,i),t.postProcess){const l=t.postProcess(i,e,t);return o.jsonSchema=i,l}return o.jsonSchema=i,i}var uh=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:lh(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}},ch=(e,t,r)=>(e.description&&(r.description=e.description),r),dh=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}]))}},ph=(e,t)=>{var r;const n=dh(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},qn=Symbol.for("vercel.ai.schema");function Xt(e){let t;return()=>(t==null&&(t=e()),t)}function fn(e,{validate:t}={}){return{[qn]:!0,_type:void 0,get jsonSchema(){return typeof e=="function"&&(e=e()),e},validate:t}}function fh(e){return typeof e=="object"&&e!==null&&qn in e&&e[qn]===!0&&"jsonSchema"in e&&"validate"in e}function Qt(e){return e==null?fn({properties:{},additionalProperties:!1}):fh(e)?e:"~standard"in e?e["~standard"].vendor==="zod"?Ct(e):gh(e):e()}function gh(e){return fn(()=>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 hh(e,t){var r;const n=(r=void 0)!=null?r:!1;return fn(()=>ph(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 mh(e,t){var r;const n=(r=void 0)!=null?r:!1;return fn(()=>Ni(Bp(e,{target:"draft-7",io:"input",reused:n?"ref":"inline"})),{validate:async a=>{const o=await hi(e,a);return o.success?{success:!0,value:o.data}:{success:!1,error:o.error}}})}function yh(e){return"_zod"in e}function Ct(e,t){return yh(e)?mh(e):hh(e)}async function Zn({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 vh({text:e,schema:t}){try{const r=Ai(e);return t==null?r:Zn({value:r,schema:t})}catch(r){throw Gr.isInstance(r)||xt.isInstance(r)?r:new Gr({text:e,cause:r})}}async function We({text:e,schema:t}){try{const r=Ai(e);return t==null?{success:!0,value:r,rawValue:r}:await rt({value:r,schema:t})}catch(r){return{success:!1,error:Gr.isInstance(r)?r:new Gr({text:e,cause:r}),rawValue:void 0}}}function wh({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new hg).pipeThrough(new TransformStream({async transform({data:r},n){r!=="[DONE]"&&n.enqueue(await We({text:r,schema:t}))}}))}var _h=()=>globalThis.fetch,rn=async({url:e,headers:t,body:r,failedResponseHandler:n,successfulResponseHandler:a,abortSignal:o,fetch:s})=>Th({url:e,headers:{"Content-Type":"application/json",...t},body:{content:JSON.stringify(r),values:r},failedResponseHandler:n,successfulResponseHandler:a,abortSignal:o,fetch:s}),Th=async({url:e,headers:t={},body:r,successfulResponseHandler:n,failedResponseHandler:a,abortSignal:o,fetch:s=_h()})=>{try{const i=await s(e,{method:"POST",headers:xr(t,`ai-sdk/provider-utils/${Si}`,ia()),body:r.content,signal:o}),l=Nr(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 Ii({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=Nr(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 vh({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)})}}},bh=e=>async({response:t})=>{const r=Nr(t);if(t.body==null)throw new wu({});return{responseHeaders:r,value:wh({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=Nr(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 Eh(e){return e==null?void 0:e.replace(/\/$/,"")}function Ih(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}async function*Sh({execute:e,input:t,options:r}){const n=e(t,r);if(Ih(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 On,ho;function Ah(){if(ho)return On;ho=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}),On=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 On}var xn,mo;function Nh(){if(mo)return xn;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 _ of r(d))!n.call(p,_)&&_!==v&&e(p,_,{get:()=>d[_],enumerable:!(E=t(d,_))||E.enumerable});return p},s=p=>o(e({},"__esModule",{value:!0}),p),i={};a(i,{getContext:()=>l.getContext,getVercelOidcToken:()=>u,getVercelOidcTokenSync:()=>c}),xn=s(i);var l=Ah();async function u(){return""}function c(){return""}return xn}var Pi=Nh(),Oh="vercel.ai.gateway.error",Rn=Symbol.for(Oh),yo,vo,qe=class Ci extends(vo=Error,yo=Rn,vo){constructor({message:t,statusCode:r=500,cause:n}){super(t),this[yo]=!0,this.statusCode=r,this.cause=n}static isInstance(t){return Ci.hasMarker(t)}static hasMarker(t){return typeof t=="object"&&t!==null&&Rn in t&&t[Rn]===!0}},Di="GatewayAuthenticationError",xh=`vercel.ai.gateway.error.${Di}`,wo=Symbol.for(xh),_o,To,la=class zi extends(To=qe,_o=wo,To){constructor({message:t="Authentication failed",statusCode:r=401,cause:n}={}){super({message:t,statusCode:r,cause:n}),this[_o]=!0,this.name=Di,this.type="authentication_error"}static isInstance(t){return qe.hasMarker(t)&&wo 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 ki(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)===j.ZodString&&((a=e.keyType._def.checks)!=null&&a.length)){const{type:u,...c}=xi(e.keyType._def,t);return{...l,propertyNames:c}}else{if(((o=e.keyType)==null?void 0:o._def.typeName)===j.ZodEnum)return{...l,propertyNames:{enum:e.keyType._def.values}};if(((s=e.keyType)==null?void 0:s._def.typeName)===j.ZodBranded&&e.keyType._def.type._def.typeName===j.ZodString&&((i=e.keyType._def.type._def.checks)!=null&&i.length)){const{type:u,...c}=Oi(e.keyType._def,t);return{...l,propertyNames:c}}}return l}function qg(e,t){if(t.mapStrategy==="record")return ki(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 jn={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 jn&&(!n._def.checks||!n._def.checks.length))){const n=r.reduce((a,o)=>{const s=jn[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:[jn[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()},eh=(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 th(e,t){return oe(e.type._def,t)}function rh(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 nh(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 ah(){return{not:je()}}function oh(){return je()}var sh=(e,t)=>oe(e.innerType._def,t),ih=(e,t,r)=>{switch(t){case j.ZodString:return xi(e,r);case j.ZodNumber:return Yg(e);case j.ZodObject:return Wg(e,r);case j.ZodBigInt:return xg(e);case j.ZodBoolean:return kg();case j.ZodDate:return Ri(e,r);case j.ZodUndefined:return ah();case j.ZodNull:return Bg();case j.ZodArray:return Rg(e,r);case j.ZodUnion:case j.ZodDiscriminatedUnion:return Vg(e,r);case j.ZodIntersection:return Fg(e,r);case j.ZodTuple:return nh(e,r);case j.ZodRecord:return ki(e,r);case j.ZodLiteral:return Lg(e);case j.ZodEnum:return $g(e);case j.ZodNativeEnum:return Zg(e);case j.ZodNullable:return Jg(e,r);case j.ZodOptional:return Qg(e,r);case j.ZodMap:return qg(e,r);case j.ZodSet:return rh(e,r);case j.ZodLazy:return()=>e.getter()._def;case j.ZodPromise:return th(e,r);case j.ZodNaN:case j.ZodNever:return Gg();case j.ZodEffects:return zg(e,r);case j.ZodAny:return je();case j.ZodUnknown:return oh();case j.ZodDefault:return Dg(e,r);case j.ZodBranded:return Oi(e,r);case j.ZodReadonly:return sh(e,r);case j.ZodCatch:return Pg(e,r);case j.ZodPipeline:return eh(e,r);case j.ZodFunction:case j.ZodVoid:case j.ZodSymbol:return;default:return(n=>{})()}},lh=(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=uh(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=ih(e,e.typeName,t),i=typeof s=="function"?oe(s(),t):s;if(i&&ch(e,t,i),t.postProcess){const l=t.postProcess(i,e,t);return o.jsonSchema=i,l}return o.jsonSchema=i,i}var uh=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:lh(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}},ch=(e,t,r)=>(e.description&&(r.description=e.description),r),dh=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}]))}},ph=(e,t)=>{var r;const n=dh(t);let a=typeof t=="object"&&t.definitions?Object.entries(t.definitions).reduce((u,[c,d])=>{var p;return{...u,[c]:(p=oe(d._def,{...n,currentPath:[...n.basePath,n.definitionPath,c]},!0))!=null?p: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},qn=Symbol.for("vercel.ai.schema");function Qt(e){let t;return()=>(t==null&&(t=e()),t)}function fn(e,{validate:t}={}){return{[qn]:!0,_type:void 0,get jsonSchema(){return typeof e=="function"&&(e=e()),e},validate:t}}function fh(e){return typeof e=="object"&&e!==null&&qn in e&&e[qn]===!0&&"jsonSchema"in e&&"validate"in e}function er(e){return e==null?fn({properties:{},additionalProperties:!1}):fh(e)?e:"~standard"in e?e["~standard"].vendor==="zod"?Dt(e):gh(e):e()}function gh(e){return fn(()=>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 hh(e,t){var r;const n=(r=void 0)!=null?r:!1;return fn(()=>ph(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 mh(e,t){var r;const n=(r=void 0)!=null?r:!1;return fn(()=>Ni(Bp(e,{target:"draft-7",io:"input",reused:n?"ref":"inline"})),{validate:async a=>{const o=await hi(e,a);return o.success?{success:!0,value:o.data}:{success:!1,error:o.error}}})}function yh(e){return"_zod"in e}function Dt(e,t){return yh(e)?mh(e):hh(e)}async function Zn({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=er(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 vh({text:e,schema:t}){try{const r=Ai(e);return t==null?r:Zn({value:r,schema:t})}catch(r){throw Gr.isInstance(r)||xt.isInstance(r)?r:new Gr({text:e,cause:r})}}async function We({text:e,schema:t}){try{const r=Ai(e);return t==null?{success:!0,value:r,rawValue:r}:await rt({value:r,schema:t})}catch(r){return{success:!1,error:Gr.isInstance(r)?r:new Gr({text:e,cause:r}),rawValue:void 0}}}function wh({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new hg).pipeThrough(new TransformStream({async transform({data:r},n){r!=="[DONE]"&&n.enqueue(await We({text:r,schema:t}))}}))}var _h=()=>globalThis.fetch,rn=async({url:e,headers:t,body:r,failedResponseHandler:n,successfulResponseHandler:a,abortSignal:o,fetch:s})=>Th({url:e,headers:{"Content-Type":"application/json",...t},body:{content:JSON.stringify(r),values:r},failedResponseHandler:n,successfulResponseHandler:a,abortSignal:o,fetch:s}),Th=async({url:e,headers:t={},body:r,successfulResponseHandler:n,failedResponseHandler:a,abortSignal:o,fetch:s=_h()})=>{try{const i=await s(e,{method:"POST",headers:Rr(t,`ai-sdk/provider-utils/${Si}`,ia()),body:r.content,signal:o}),l=Nr(i);if(!i.ok){let u;try{u=await a({response:i,url:e,requestBodyValues:r.values})}catch(c){throw Pt(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&&(Pt(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 Ii({error:i,url:e,requestBodyValues:r.values})}};async function Ge(e){return typeof e=="function"&&(e=e()),Promise.resolve(e)}var Yt=({errorSchema:e,errorToMessage:t,isRetryable:r})=>async({response:n,url:a,requestBodyValues:o})=>{const s=await n.text(),i=Nr(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 vh({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)})}}},Eh=e=>async({response:t})=>{const r=Nr(t);if(t.body==null)throw new wu({});return{responseHeaders:r,value:wh({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=Nr(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 bh(e){return e==null?void 0:e.replace(/\/$/,"")}function Ih(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}async function*Sh({execute:e,input:t,options:r}){const n=e(t,r);if(Ih(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 On,ho;function Ah(){if(ho)return On;ho=1;var e=Object.defineProperty,t=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,n=Object.prototype.hasOwnProperty,a=(c,d)=>{for(var p in d)e(c,p,{get:d[p],enumerable:!0})},o=(c,d,p,v)=>{if(d&&typeof d=="object"||typeof d=="function")for(let b of r(d))!n.call(c,b)&&b!==p&&e(c,b,{get:()=>d[b],enumerable:!(v=t(d,b))||v.enumerable});return c},s=c=>o(e({},"__esModule",{value:!0}),c),i={};a(i,{SYMBOL_FOR_REQ_CONTEXT:()=>l,getContext:()=>u}),On=s(i);const l=Symbol.for("@vercel/request-context");function u(){var d,p;return((p=(d=globalThis[l])==null?void 0:d.get)==null?void 0:p.call(d))??{}}return On}var Rn,mo;function Nh(){if(mo)return Rn;mo=1;var e=Object.defineProperty,t=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,n=Object.prototype.hasOwnProperty,a=(d,p)=>{for(var v in p)e(d,v,{get:p[v],enumerable:!0})},o=(d,p,v,b)=>{if(p&&typeof p=="object"||typeof p=="function")for(let _ of r(p))!n.call(d,_)&&_!==v&&e(d,_,{get:()=>p[_],enumerable:!(b=t(p,_))||b.enumerable});return d},s=d=>o(e({},"__esModule",{value:!0}),d),i={};a(i,{getContext:()=>l.getContext,getVercelOidcToken:()=>u,getVercelOidcTokenSync:()=>c}),Rn=s(i);var l=Ah();async function u(){return""}function c(){return""}return Rn}var Pi=Nh(),Oh="vercel.ai.gateway.error",xn=Symbol.for(Oh),yo,vo,qe=class Ci extends(vo=Error,yo=xn,vo){constructor({message:t,statusCode:r=500,cause:n}){super(t),this[yo]=!0,this.statusCode=r,this.cause=n}static isInstance(t){return Ci.hasMarker(t)}static hasMarker(t){return typeof t=="object"&&t!==null&&xn in t&&t[xn]===!0}},Di="GatewayAuthenticationError",Rh=`vercel.ai.gateway.error.${Di}`,wo=Symbol.for(Rh),_o,To,la=class zi extends(To=qe,_o=wo,To){constructor({message:t="Authentication failed",statusCode:r=401,cause:n}={}){super({message:t,statusCode:r,cause:n}),this[_o]=!0,this.name=Di,this.type="authentication_error"}static isInstance(t){return qe.hasMarker(t)&&wo 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 zi({message:s,statusCode:a,cause:o})}},$i="GatewayInvalidRequestError",Rh=`vercel.ai.gateway.error.${$i}`,bo=Symbol.for(Rh),Eo,Io,kh=class extends(Io=qe,Eo=bo,Io){constructor({message:e="Invalid request",statusCode:t=400,cause:r}={}){super({message:e,statusCode:t,cause:r}),this[Eo]=!0,this.name=$i,this.type="invalid_request_error"}static isInstance(e){return qe.hasMarker(e)&&bo in e}},Mi="GatewayRateLimitError",Ph=`vercel.ai.gateway.error.${Mi}`,So=Symbol.for(Ph),Ao,No,Ch=class extends(No=qe,Ao=So,No){constructor({message:e="Rate limit exceeded",statusCode:t=429,cause:r}={}){super({message:e,statusCode:t,cause:r}),this[Ao]=!0,this.name=Mi,this.type="rate_limit_exceeded"}static isInstance(e){return qe.hasMarker(e)&&So in e}},Fi="GatewayModelNotFoundError",Dh=`vercel.ai.gateway.error.${Fi}`,Oo=Symbol.for(Dh),zh=Xt(()=>Ct(G({modelId:R()}))),xo,Ro,$h=class extends(Ro=qe,xo=Oo,Ro){constructor({message:e="Model not found",statusCode:t=404,modelId:r,cause:n}={}){super({message:e,statusCode:t,cause:n}),this[xo]=!0,this.name=Fi,this.type="model_not_found",this.modelId=r}static isInstance(e){return qe.hasMarker(e)&&Oo in e}},Li="GatewayInternalServerError",Mh=`vercel.ai.gateway.error.${Li}`,ko=Symbol.for(Mh),Po,Co,Do=class extends(Co=qe,Po=ko,Co){constructor({message:e="Internal server error",statusCode:t=500,cause:r}={}){super({message:e,statusCode:t,cause:r}),this[Po]=!0,this.name=Li,this.type="internal_server_error"}static isInstance(e){return qe.hasMarker(e)&&ko in e}},Ui="GatewayResponseError",Fh=`vercel.ai.gateway.error.${Ui}`,zo=Symbol.for(Fh),$o,Mo,Lh=class extends(Mo=qe,$o=zo,Mo){constructor({message:e="Invalid response from Gateway",statusCode:t=502,response:r,validationError:n,cause:a}={}){super({message:e,statusCode:t,cause:a}),this[$o]=!0,this.name=Ui,this.type="response_error",this.response=r,this.validationError=n}static isInstance(e){return qe.hasMarker(e)&&zo in e}};async function Fo({response:e,statusCode:t,defaultMessage:r="Gateway request failed",cause:n,authMethod:a}){const o=await rt({value:e,schema:Uh});if(!o.success)return new Lh({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 la.createContextualError({apiKeyProvided:a==="api-key",oidcTokenProvided:a==="oidc",statusCode:t,cause:n});case"invalid_request_error":return new kh({message:l,statusCode:t,cause:n});case"rate_limit_exceeded":return new Ch({message:l,statusCode:t,cause:n});case"model_not_found":{const u=await rt({value:s.error.param,schema:zh});return new $h({message:l,statusCode:t,modelId:u.success?u.value.modelId:void 0,cause:n})}case"internal_server_error":return new Do({message:l,statusCode:t,cause:n});default:return new Do({message:l,statusCode:t,cause:n})}}var Uh=Xt(()=>Ct(G({error:G({message:R(),type:R().nullish(),param:Rt().nullish(),code:Pe([R(),Kr()]).nullish()})})));function Tt(e,t){var r;return qe.isInstance(e)?e:$e.isInstance(e)?Fo({response:jh(e),statusCode:(r=e.statusCode)!=null?r:500,defaultMessage:"Gateway request failed",cause:e,authMethod:t}):Fo({response:{},statusCode:500,defaultMessage:e instanceof Error?`Gateway request failed: ${e.message}`:"Unknown Gateway error",cause:e,authMethod:t})}function jh(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 ji="ai-gateway-auth-method";async function Yt(e){const t=await rt({value:e[ji],schema:qh});return t.success?t.value:void 0}var qh=Xt(()=>Ct(Pe([ee("api-key"),ee("oidc")]))),Lo=class{constructor(e){this.config=e}async getAvailableModels(){try{const{value:e}=await co({url:`${this.config.baseURL}/config`,headers:await Ge(this.config.headers()),successfulResponseHandler:yr(Zh),failedResponseHandler:Jt({errorSchema:mt(),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 co({url:`${e.origin}/v1/credits`,headers:await Ge(this.config.headers()),successfulResponseHandler:yr(Gh),failedResponseHandler:Jt({errorSchema:mt(),errorToMessage:r=>r}),fetch:this.config.fetch});return t}catch(e){throw await Tt(e)}}},Zh=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:wi(["language","embedding","image"]).nullish()}))}))),Gh=Xt(()=>Ct(G({balance:R(),total_used:R()}).transform(({balance:e,total_used:t})=>({balance:e,totalUsed:t})))),Bh=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 rn({url:this.getUrl(),headers:en(a,e.headers,this.getModelConfigHeaders(this.modelId,!1),await Ge(this.config.o11yHeaders)),body:t,successfulResponseHandler:yr(mt()),failedResponseHandler:Jt({errorSchema:mt(),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 rn({url:this.getUrl(),headers:en(a,e.headers,this.getModelConfigHeaders(this.modelId,!0),await Ge(this.config.o11yHeaders)),body:t,successfulResponseHandler:bh(mt()),failedResponseHandler:Jt({errorSchema:mt(),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)}}},Vh=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 rn({url:this.getUrl(),headers:en(o,t??{},this.getModelConfigHeaders(),await Ge(this.config.o11yHeaders)),body:{values:e,...n?{providerOptions:n}:{}},successfulResponseHandler:yr(Hh),failedResponseHandler:Jt({errorSchema:mt(),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}}},Hh=Xt(()=>Ct(G({embeddings:Ue(Ue(Kr())),usage:G({tokens:Kr()}).nullish(),providerMetadata:_t(R(),_t(R(),Rt())).optional()}))),Jh=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 rn({url:this.getUrl(),headers:en(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(_=>Uo(_))},...s&&{mask:Uo(s)}},successfulResponseHandler:yr(Wh),failedResponseHandler:Jt({errorSchema:mt(),errorToMessage:_=>_}),...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 Uo(e){return e.type==="file"&&e.data instanceof Uint8Array?{...e,data:tn(e.data)}:e}var Yh=G({images:Ue(Rt()).optional()}).catchall(Rt()),Wh=G({images:Ue(R()),warnings:Ue(G({type:ee("other"),message:R()})).optional(),providerMetadata:_t(R(),Yh).optional()});async function Kh(){var e;return(e=Pi.getContext().headers)==null?void 0:e["x-vercel-id"]}var Xh="3.0.8",Qh="0.0.1";function em(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=Eh(e.baseURL))!=null?r:"https://ai-gateway.vercel.sh/v3/ai",l=async()=>{try{const _=await rm(e);return xr({Authorization:`Bearer ${_.token}`,"ai-gateway-protocol-version":Qh,[ji]:_.authMethod,...e.headers},`ai-sdk/gateway/${Xh}`)}catch(_){throw la.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:_})}},u=()=>{const _=Zr({settingValue:void 0,environmentVariableName:"VERCEL_DEPLOYMENT_ID"}),I=Zr({settingValue:void 0,environmentVariableName:"VERCEL_ENV"}),P=Zr({settingValue:void 0,environmentVariableName:"VERCEL_REGION"});return async()=>{const C=await Kh();return{..._&&{"ai-o11y-deployment-id":_},...I&&{"ai-o11y-environment":I},...P&&{"ai-o11y-region":P},...C&&{"ai-o11y-request-id":C}}}},c=_=>new Bh(_,{provider:"gateway",baseURL:i,headers:l,fetch:e.fetch,o11yHeaders:u()}),p=async()=>{var _,I,P;const C=(P=(I=(_=e._internal)==null?void 0:_.currentDate)==null?void 0:I.call(_).getTime())!=null?P:Date.now();return(!n||C-s>o)&&(s=C,n=new Lo({baseURL:i,headers:l,fetch:e.fetch}).getAvailableModels().then(m=>(a=m,m)).catch(async m=>{throw await Tt(m,await Yt(await l()))})),a?Promise.resolve(a):n},d=async()=>new Lo({baseURL:i,headers:l,fetch:e.fetch}).getCredits().catch(async _=>{throw await Tt(_,await Yt(await l()))}),v=function(_){if(new.target)throw new Error("The Gateway Provider model function cannot be called with the new keyword.");return c(_)};v.specificationVersion="v3",v.getAvailableModels=p,v.getCredits=d,v.imageModel=_=>new Jh(_,{provider:"gateway",baseURL:i,headers:l,fetch:e.fetch,o11yHeaders:u()}),v.languageModel=c;const E=_=>new Vh(_,{provider:"gateway",baseURL:i,headers:l,fetch:e.fetch,o11yHeaders:u()});return v.embeddingModel=E,v.textEmbeddingModel=E,v}var tm=em();async function rm(e){const t=Zr({settingValue:e.apiKey,environmentVariableName:"AI_GATEWAY_API_KEY"});return t?{token:t,authMethod:"api-key"}:{token:await Pi.getVercelOidcToken(),authMethod:"oidc"}}var nm=typeof globalThis=="object"?globalThis:typeof self=="object"?self:typeof window=="object"?window:typeof global=="object"?global:{},Ot="1.9.0",jo=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;function am(e){var t=new Set([e]),r=new Set,n=e.match(jo);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(jo);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 om=am(Ot),sm=Ot.split(".")[0],vr=Symbol.for("opentelemetry.js.api."+sm),wr=nm;function ua(e,t,r,n){var a;n===void 0&&(n=!1);var o=wr[vr]=(a=wr[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 _r(e){var t,r,n=(t=wr[vr])===null||t===void 0?void 0:t.version;if(!(!n||!om(n)))return(r=wr[vr])===null||r===void 0?void 0:r[e]}function ca(e,t){t.debug("@opentelemetry/api: Unregistering a global for "+e+" v"+Ot+".");var r=wr[vr];r&&delete r[e]}var im=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},lm=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))},um=(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,lm([],im(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 cm(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 dm=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},pm=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))},fm="diag",nn=(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,pm([],dm(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=cm((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 ua("diag",p,r,!0)};r.setLogger=n,r.disable=function(){ca(fm,r)},r.createComponentLogger=function(a){return new um(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 gm(e){return Symbol.for(e)}var hm=(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})(),mm=new hm,ym=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},vm=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))},wm=(function(){function e(){}return e.prototype.active=function(){return mm},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,vm([n],ym(a),!1))},e.prototype.bind=function(t,r){return r},e.prototype.enable=function(){return this},e.prototype.disable=function(){return this},e})(),_m=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},Tm=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))},kn="context",bm=new wm,qi=(function(){function e(){}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalContextManager=function(t){return ua(kn,t,nn.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,Tm([t,r,n],_m(o),!1))},e.prototype.bind=function(t,r){return this._getContextManager().bind(t,r)},e.prototype._getContextManager=function(){return _r(kn)||bm},e.prototype.disable=function(){this._getContextManager().disable(),ca(kn,nn.instance())},e})(),Gn;(function(e){e[e.NONE=0]="NONE",e[e.SAMPLED=1]="SAMPLED"})(Gn||(Gn={}));var Zi="0000000000000000",Gi="00000000000000000000000000000000",Em={traceId:Gi,spanId:Zi,traceFlags:Gn.NONE},dr=(function(){function e(t){t===void 0&&(t=Em),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})(),da=gm("OpenTelemetry Context Key SPAN");function pa(e){return e.getValue(da)||void 0}function Im(){return pa(qi.getInstance().active())}function fa(e,t){return e.setValue(da,t)}function Sm(e){return e.deleteValue(da)}function Am(e,t){return fa(e,new dr(t))}function Bi(e){var t;return(t=pa(e))===null||t===void 0?void 0:t.spanContext()}var Nm=/^([0-9a-f]{32})$/i,Om=/^[0-9a-f]{16}$/i;function xm(e){return Nm.test(e)&&e!==Gi}function Rm(e){return Om.test(e)&&e!==Zi}function Vi(e){return xm(e.traceId)&&Rm(e.spanId)}function km(e){return new dr(e)}var Pn=qi.getInstance(),Hi=(function(){function e(){}return e.prototype.startSpan=function(t,r,n){n===void 0&&(n=Pn.active());var a=!!(r!=null&&r.root);if(a)return new dr;var o=n&&Bi(n);return Pm(o)&&Vi(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??Pn.active(),u=this.startSpan(t,o,l),c=fa(l,u);return Pn.with(c,i,void 0,u)}},e})();function Pm(e){return typeof e=="object"&&typeof e.spanId=="string"&&typeof e.traceId=="string"&&typeof e.traceFlags=="number"}var Cm=new Hi,Dm=(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):Cm},e})(),zm=(function(){function e(){}return e.prototype.getTracer=function(t,r,n){return new Hi},e})(),$m=new zm,qo=(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 Dm(this,t,r,n)},e.prototype.getDelegate=function(){var t;return(t=this._delegate)!==null&&t!==void 0?t:$m},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})(),an;(function(e){e[e.UNSET=0]="UNSET",e[e.OK=1]="OK",e[e.ERROR=2]="ERROR"})(an||(an={}));var Cn="trace",Mm=(function(){function e(){this._proxyTracerProvider=new qo,this.wrapSpanContext=km,this.isSpanContextValid=Vi,this.deleteSpan=Sm,this.getSpan=pa,this.getActiveSpan=Im,this.getSpanContext=Bi,this.setSpan=fa,this.setSpanContext=Am}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalTracerProvider=function(t){var r=ua(Cn,this._proxyTracerProvider,nn.instance());return r&&this._proxyTracerProvider.setDelegate(t),r},e.prototype.getTracerProvider=function(){return _r(Cn)||this._proxyTracerProvider},e.prototype.getTracer=function(t,r){return this.getTracerProvider().getTracer(t,r)},e.prototype.disable=function(){ca(Cn,nn.instance()),this._proxyTracerProvider=new qo},e})(),Fm=Mm.getInstance(),Lm=Object.defineProperty,Um=(e,t)=>{for(var r in t)Lm(e,r,{get:t[r],enumerable:!0})},Ji="AI_InvalidArgumentError",Yi=`vercel.ai.error.${Ji}`,jm=Symbol.for(Yi),Wi,et=class extends H{constructor({parameter:e,value:t,message:r}){super({name:Ji,message:`Invalid argument for parameter ${e}: ${r}`}),this[Wi]=!0,this.parameter=e,this.value=t}static isInstance(e){return H.hasMarker(e,Yi)}};Wi=jm;var Ki="AI_InvalidToolApprovalError",Xi=`vercel.ai.error.${Ki}`,qm=Symbol.for(Xi),Qi,Zm=class extends H{constructor({approvalId:e}){super({name:Ki,message:`Tool approval response references unknown approvalId: "${e}". No matching tool-approval-request found in message history.`}),this[Qi]=!0,this.approvalId=e}static isInstance(e){return H.hasMarker(e,Xi)}};Qi=qm;var el="AI_InvalidToolInputError",tl=`vercel.ai.error.${el}`,Gm=Symbol.for(tl),rl,ga=class extends H{constructor({toolInput:e,toolName:t,cause:r,message:n=`Invalid input for tool ${t}: ${Wt(r)}`}){super({name:el,message:n,cause:r}),this[rl]=!0,this.toolInput=e,this.toolName=t}static isInstance(e){return H.hasMarker(e,tl)}};rl=Gm;var nl="AI_ToolCallNotFoundForApprovalError",al=`vercel.ai.error.${nl}`,Bm=Symbol.for(al),ol,ha=class extends H{constructor({toolCallId:e,approvalId:t}){super({name:nl,message:`Tool call "${e}" not found for approval request "${t}".`}),this[ol]=!0,this.toolCallId=e,this.approvalId=t}static isInstance(e){return H.hasMarker(e,al)}};ol=Bm;var sl="AI_NoObjectGeneratedError",il=`vercel.ai.error.${sl}`,Vm=Symbol.for(il),ll,yt=class extends H{constructor({message:e="No object generated.",cause:t,text:r,response:n,usage:a,finishReason:o}){super({name:sl,message:e,cause:t}),this[ll]=!0,this.text=r,this.response=n,this.usage=a,this.finishReason=o}static isInstance(e){return H.hasMarker(e,il)}};ll=Vm;var ul="AI_NoOutputGeneratedError",cl=`vercel.ai.error.${ul}`,Hm=Symbol.for(cl),dl,pl=class extends H{constructor({message:e="No output generated.",cause:t}={}){super({name:ul,message:e,cause:t}),this[dl]=!0}static isInstance(e){return H.hasMarker(e,cl)}};dl=Hm;var fl="AI_NoSuchToolError",gl=`vercel.ai.error.${fl}`,Jm=Symbol.for(gl),hl,Bn=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:fl,message:r}),this[hl]=!0,this.toolName=e,this.availableTools=t}static isInstance(e){return H.hasMarker(e,gl)}};hl=Jm;var ml="AI_ToolCallRepairError",yl=`vercel.ai.error.${ml}`,Ym=Symbol.for(yl),vl,Wm=class extends H{constructor({cause:e,originalError:t,message:r=`Error repairing tool call: ${Wt(e)}`}){super({name:ml,message:r,cause:e}),this[vl]=!0,this.originalError=t}static isInstance(e){return H.hasMarker(e,yl)}};vl=Ym;var Km=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}},wl="AI_InvalidMessageRoleError",_l=`vercel.ai.error.${wl}`,Xm=Symbol.for(_l),Tl,Qm=class extends H{constructor({role:e,message:t=`Invalid message role: '${e}'. Must be one of: "system", "user", "assistant", "tool".`}){super({name:wl,message:t}),this[Tl]=!0,this.role=e}static isInstance(e){return H.hasMarker(e,_l)}};Tl=Xm;var bl="AI_RetryError",El=`vercel.ai.error.${bl}`,ey=Symbol.for(El),Il,Zo=class extends H{constructor({message:e,reason:t,errors:r}){super({name:bl,message:e}),this[Il]=!0,this.reason=t,this.errors=r,this.lastError=r[r.length-1]}static isInstance(e){return H.hasMarker(e,El)}};Il=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.",Go=!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}Go||(Go=!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:Sl(a.finishReason),usage:Al(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:Sl(t.finishReason),usage:Al(t.usage)});break;default:r.enqueue(t);break}}}))}function Sl(e){return{unified:e==="unknown"?"other":e,raw:void 0}}function Al(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 on(e){if(typeof e!="string"){if(e.specificationVersion!=="v3"&&e.specificationVersion!=="v2"){const t=e;throw new Km({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:tm}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"?oa(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"?oa(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 Nl="6.0.11",dy=async({url:e})=>{var t;const r=e.toString();try{const n=await fetch(r,{headers:xr({},`ai-sdk/${Nl}`,ia())});if(!n.ok)throw new Sn({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 Sn.isInstance(n)?n:new Sn({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 Ol=Pe([R(),Xr(Uint8Array),Xr(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 xl(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?tn(new Uint8Array(e)):tn(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 my(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=>hy({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 hy({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}=xl(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:Bo(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:Bo(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 Qm({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&&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}=xl(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 Bo(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:Vo(r)}:n!=null&&n.toModelOutput?await n.toModelOutput({toolCallId:e,input:t,output:r}):typeof r=="string"?{type:"text",value:r}:{type:"json",value:Vo(r)}}function Vo(e){return e===void 0?null:e}function Vn({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 kl({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([Df(),R(),Kr(),na(),_t(R(),br.optional()),Ue(br)])),me=_t(R(),_t(R(),br.optional())),Pl=G({type:ee("text"),text:R(),providerOptions:me.optional()}),wy=G({type:ee("image"),image:Pe([Ol,Xr(URL)]),mediaType:R().optional(),providerOptions:me.optional()}),Cl=G({type:ee("file"),data:Pe([Ol,Xr(URL)]),filename:R().optional(),mediaType:R(),providerOptions:me.optional()}),_y=G({type:ee("reasoning"),text:R(),providerOptions:me.optional()}),Ty=G({type:ee("tool-call"),toolCallId:R(),toolName:R(),input:Rt(),providerOptions:me.optional(),providerExecuted:na().optional()}),by=qf("type",[G({type:ee("text"),value:R(),providerOptions:me.optional()}),G({type:ee("json"),value:br,providerOptions:me.optional()}),G({type:ee("execution-denied"),reason:R().optional(),providerOptions:me.optional()}),G({type:ee("error-text"),value:R(),providerOptions:me.optional()}),G({type:ee("error-json"),value:br,providerOptions:me.optional()}),G({type:ee("content"),value:Ue(Pe([G({type:ee("text"),text:R(),providerOptions:me.optional()}),G({type:ee("media"),data:R(),mediaType:R()}),G({type:ee("file-data"),data:R(),mediaType:R(),filename:R().optional(),providerOptions:me.optional()}),G({type:ee("file-url"),url:R(),providerOptions:me.optional()}),G({type:ee("file-id"),fileId:Pe([R(),_t(R(),R())]),providerOptions:me.optional()}),G({type:ee("image-data"),data:R(),mediaType:R(),providerOptions:me.optional()}),G({type:ee("image-url"),url:R(),providerOptions:me.optional()}),G({type:ee("image-file-id"),fileId:Pe([R(),_t(R(),R())]),providerOptions:me.optional()}),G({type:ee("custom"),providerOptions:me.optional()})]))})]),Dl=G({type:ee("tool-result"),toolCallId:R(),toolName:R(),output:by,providerOptions:me.optional()}),Ey=G({type:ee("tool-approval-request"),approvalId:R(),toolCallId:R()}),Iy=G({type:ee("tool-approval-response"),approvalId:R(),approved:na(),reason:R().optional()}),Sy=G({role:ee("system"),content:R(),providerOptions:me.optional()}),Ay=G({role:ee("user"),content:Pe([R(),Ue(Pe([Pl,wy,Cl]))]),providerOptions:me.optional()}),Ny=G({role:ee("assistant"),content:Pe([R(),Ue(Pe([Pl,Cl,_y,Ty,Dl,Ey]))]),providerOptions:me.optional()}),Oy=G({role:ee("tool"),content:Ue(Pe([Dl,Iy])),providerOptions:me.optional()}),xy=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(xy)});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 $l(e){if(!la.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})}},$i="GatewayInvalidRequestError",xh=`vercel.ai.gateway.error.${$i}`,Eo=Symbol.for(xh),bo,Io,kh=class extends(Io=qe,bo=Eo,Io){constructor({message:e="Invalid request",statusCode:t=400,cause:r}={}){super({message:e,statusCode:t,cause:r}),this[bo]=!0,this.name=$i,this.type="invalid_request_error"}static isInstance(e){return qe.hasMarker(e)&&Eo in e}},Mi="GatewayRateLimitError",Ph=`vercel.ai.gateway.error.${Mi}`,So=Symbol.for(Ph),Ao,No,Ch=class extends(No=qe,Ao=So,No){constructor({message:e="Rate limit exceeded",statusCode:t=429,cause:r}={}){super({message:e,statusCode:t,cause:r}),this[Ao]=!0,this.name=Mi,this.type="rate_limit_exceeded"}static isInstance(e){return qe.hasMarker(e)&&So in e}},Fi="GatewayModelNotFoundError",Dh=`vercel.ai.gateway.error.${Fi}`,Oo=Symbol.for(Dh),zh=Qt(()=>Dt(G({modelId:x()}))),Ro,xo,$h=class extends(xo=qe,Ro=Oo,xo){constructor({message:e="Model not found",statusCode:t=404,modelId:r,cause:n}={}){super({message:e,statusCode:t,cause:n}),this[Ro]=!0,this.name=Fi,this.type="model_not_found",this.modelId=r}static isInstance(e){return qe.hasMarker(e)&&Oo in e}},Li="GatewayInternalServerError",Mh=`vercel.ai.gateway.error.${Li}`,ko=Symbol.for(Mh),Po,Co,Do=class extends(Co=qe,Po=ko,Co){constructor({message:e="Internal server error",statusCode:t=500,cause:r}={}){super({message:e,statusCode:t,cause:r}),this[Po]=!0,this.name=Li,this.type="internal_server_error"}static isInstance(e){return qe.hasMarker(e)&&ko in e}},Ui="GatewayResponseError",Fh=`vercel.ai.gateway.error.${Ui}`,zo=Symbol.for(Fh),$o,Mo,Lh=class extends(Mo=qe,$o=zo,Mo){constructor({message:e="Invalid response from Gateway",statusCode:t=502,response:r,validationError:n,cause:a}={}){super({message:e,statusCode:t,cause:a}),this[$o]=!0,this.name=Ui,this.type="response_error",this.response=r,this.validationError=n}static isInstance(e){return qe.hasMarker(e)&&zo in e}};async function Fo({response:e,statusCode:t,defaultMessage:r="Gateway request failed",cause:n,authMethod:a}){const o=await rt({value:e,schema:Uh});if(!o.success)return new Lh({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 la.createContextualError({apiKeyProvided:a==="api-key",oidcTokenProvided:a==="oidc",statusCode:t,cause:n});case"invalid_request_error":return new kh({message:l,statusCode:t,cause:n});case"rate_limit_exceeded":return new Ch({message:l,statusCode:t,cause:n});case"model_not_found":{const u=await rt({value:s.error.param,schema:zh});return new $h({message:l,statusCode:t,modelId:u.success?u.value.modelId:void 0,cause:n})}case"internal_server_error":return new Do({message:l,statusCode:t,cause:n});default:return new Do({message:l,statusCode:t,cause:n})}}var Uh=Qt(()=>Dt(G({error:G({message:x(),type:x().nullish(),param:kt().nullish(),code:Pe([x(),Kr()]).nullish()})})));function Et(e,t){var r;return qe.isInstance(e)?e:$e.isInstance(e)?Fo({response:jh(e),statusCode:(r=e.statusCode)!=null?r:500,defaultMessage:"Gateway request failed",cause:e,authMethod:t}):Fo({response:{},statusCode:500,defaultMessage:e instanceof Error?`Gateway request failed: ${e.message}`:"Unknown Gateway error",cause:e,authMethod:t})}function jh(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 ji="ai-gateway-auth-method";async function Wt(e){const t=await rt({value:e[ji],schema:qh});return t.success?t.value:void 0}var qh=Qt(()=>Dt(Pe([ee("api-key"),ee("oidc")]))),Lo=class{constructor(e){this.config=e}async getAvailableModels(){try{const{value:e}=await co({url:`${this.config.baseURL}/config`,headers:await Ge(this.config.headers()),successfulResponseHandler:yr(Zh),failedResponseHandler:Yt({errorSchema:yt(),errorToMessage:t=>t}),fetch:this.config.fetch});return e}catch(e){throw await Et(e)}}async getCredits(){try{const e=new URL(this.config.baseURL),{value:t}=await co({url:`${e.origin}/v1/credits`,headers:await Ge(this.config.headers()),successfulResponseHandler:yr(Gh),failedResponseHandler:Yt({errorSchema:yt(),errorToMessage:r=>r}),fetch:this.config.fetch});return t}catch(e){throw await Et(e)}}},Zh=Qt(()=>Dt(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:wi(["language","embedding","image"]).nullish()}))}))),Gh=Qt(()=>Dt(G({balance:x(),total_used:x()}).transform(({balance:e,total_used:t})=>({balance:e,totalUsed:t})))),Bh=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 rn({url:this.getUrl(),headers:en(a,e.headers,this.getModelConfigHeaders(this.modelId,!1),await Ge(this.config.o11yHeaders)),body:t,successfulResponseHandler:yr(yt()),failedResponseHandler:Yt({errorSchema:yt(),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 Et(o,await Wt(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 rn({url:this.getUrl(),headers:en(a,e.headers,this.getModelConfigHeaders(this.modelId,!0),await Ge(this.config.o11yHeaders)),body:t,successfulResponseHandler:Eh(yt()),failedResponseHandler:Yt({errorSchema:yt(),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 Et(o,await Wt(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)}}},Vh=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 rn({url:this.getUrl(),headers:en(o,t??{},this.getModelConfigHeaders(),await Ge(this.config.o11yHeaders)),body:{values:e,...n?{providerOptions:n}:{}},successfulResponseHandler:yr(Hh),failedResponseHandler:Yt({errorSchema:yt(),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 Et(s,await Wt(o))}}getUrl(){return`${this.config.baseURL}/embedding-model`}getModelConfigHeaders(){return{"ai-embedding-model-specification-version":"3","ai-model-id":this.modelId}}},Hh=Qt(()=>Dt(G({embeddings:Ue(Ue(Kr())),usage:G({tokens:Kr()}).nullish(),providerMetadata:Tt(x(),Tt(x(),kt())).optional()}))),Jh=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 d=await Ge(this.config.headers());try{const{responseHeaders:p,value:v,rawValue:b}=await rn({url:this.getUrl(),headers:en(d,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(_=>Uo(_))},...s&&{mask:Uo(s)}},successfulResponseHandler:yr(Wh),failedResponseHandler:Yt({errorSchema:yt(),errorToMessage:_=>_}),...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:p}}}catch(p){throw Et(p,await Wt(d))}}getUrl(){return`${this.config.baseURL}/image-model`}getModelConfigHeaders(){return{"ai-image-model-specification-version":"3","ai-model-id":this.modelId}}};function Uo(e){return e.type==="file"&&e.data instanceof Uint8Array?{...e,data:tn(e.data)}:e}var Yh=G({images:Ue(kt()).optional()}).catchall(kt()),Wh=G({images:Ue(x()),warnings:Ue(G({type:ee("other"),message:x()})).optional(),providerMetadata:Tt(x(),Yh).optional()});async function Kh(){var e;return(e=Pi.getContext().headers)==null?void 0:e["x-vercel-id"]}var Xh="3.0.8",Qh="0.0.1";function em(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=bh(e.baseURL))!=null?r:"https://ai-gateway.vercel.sh/v3/ai",l=async()=>{try{const _=await rm(e);return Rr({Authorization:`Bearer ${_.token}`,"ai-gateway-protocol-version":Qh,[ji]:_.authMethod,...e.headers},`ai-sdk/gateway/${Xh}`)}catch(_){throw la.createContextualError({apiKeyProvided:!1,oidcTokenProvided:!1,statusCode:401,cause:_})}},u=()=>{const _=Zr({settingValue:void 0,environmentVariableName:"VERCEL_DEPLOYMENT_ID"}),I=Zr({settingValue:void 0,environmentVariableName:"VERCEL_ENV"}),P=Zr({settingValue:void 0,environmentVariableName:"VERCEL_REGION"});return async()=>{const C=await Kh();return{..._&&{"ai-o11y-deployment-id":_},...I&&{"ai-o11y-environment":I},...P&&{"ai-o11y-region":P},...C&&{"ai-o11y-request-id":C}}}},c=_=>new Bh(_,{provider:"gateway",baseURL:i,headers:l,fetch:e.fetch,o11yHeaders:u()}),d=async()=>{var _,I,P;const C=(P=(I=(_=e._internal)==null?void 0:_.currentDate)==null?void 0:I.call(_).getTime())!=null?P:Date.now();return(!n||C-s>o)&&(s=C,n=new Lo({baseURL:i,headers:l,fetch:e.fetch}).getAvailableModels().then(m=>(a=m,m)).catch(async m=>{throw await Et(m,await Wt(await l()))})),a?Promise.resolve(a):n},p=async()=>new Lo({baseURL:i,headers:l,fetch:e.fetch}).getCredits().catch(async _=>{throw await Et(_,await Wt(await l()))}),v=function(_){if(new.target)throw new Error("The Gateway Provider model function cannot be called with the new keyword.");return c(_)};v.specificationVersion="v3",v.getAvailableModels=d,v.getCredits=p,v.imageModel=_=>new Jh(_,{provider:"gateway",baseURL:i,headers:l,fetch:e.fetch,o11yHeaders:u()}),v.languageModel=c;const b=_=>new Vh(_,{provider:"gateway",baseURL:i,headers:l,fetch:e.fetch,o11yHeaders:u()});return v.embeddingModel=b,v.textEmbeddingModel=b,v}var tm=em();async function rm(e){const t=Zr({settingValue:e.apiKey,environmentVariableName:"AI_GATEWAY_API_KEY"});return t?{token:t,authMethod:"api-key"}:{token:await Pi.getVercelOidcToken(),authMethod:"oidc"}}var nm=typeof globalThis=="object"?globalThis:typeof self=="object"?self:typeof window=="object"?window:typeof global=="object"?global:{},Rt="1.9.0",jo=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;function am(e){var t=new Set([e]),r=new Set,n=e.match(jo);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(jo);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 om=am(Rt),sm=Rt.split(".")[0],vr=Symbol.for("opentelemetry.js.api."+sm),wr=nm;function ua(e,t,r,n){var a;n===void 0&&(n=!1);var o=wr[vr]=(a=wr[vr])!==null&&a!==void 0?a:{version:Rt};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!==Rt){var s=new Error("@opentelemetry/api: Registration of version v"+o.version+" for "+e+" does not match previously registered API v"+Rt);return r.error(s.stack||s.message),!1}return o[e]=t,r.debug("@opentelemetry/api: Registered a global for "+e+" v"+Rt+"."),!0}function _r(e){var t,r,n=(t=wr[vr])===null||t===void 0?void 0:t.version;if(!(!n||!om(n)))return(r=wr[vr])===null||r===void 0?void 0:r[e]}function ca(e,t){t.debug("@opentelemetry/api: Unregistering a global for "+e+" v"+Rt+".");var r=wr[vr];r&&delete r[e]}var im=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},lm=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))},um=(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 ur("debug",this._namespace,t)},e.prototype.error=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return ur("error",this._namespace,t)},e.prototype.info=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return ur("info",this._namespace,t)},e.prototype.warn=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return ur("warn",this._namespace,t)},e.prototype.verbose=function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return ur("verbose",this._namespace,t)},e})();function ur(e,t,r){var n=_r("diag");if(n)return r.unshift(t),n[e].apply(n,lm([],im(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 cm(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 dm=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},pm=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))},fm="diag",nn=(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,pm([],dm(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"),d=cm((i=o.logLevel)!==null&&i!==void 0?i:Le.INFO,a);if(c&&!o.suppressOverrideMessage){var p=(l=new Error().stack)!==null&&l!==void 0?l:"<failed to generate stacktrace>";c.warn("Current logger will be overwritten from "+p),d.warn("Current logger will overwrite one already registered from "+p)}return ua("diag",d,r,!0)};r.setLogger=n,r.disable=function(){ca(fm,r)},r.createComponentLogger=function(a){return new um(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 gm(e){return Symbol.for(e)}var hm=(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})(),mm=new hm,ym=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},vm=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))},wm=(function(){function e(){}return e.prototype.active=function(){return mm},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,vm([n],ym(a),!1))},e.prototype.bind=function(t,r){return r},e.prototype.enable=function(){return this},e.prototype.disable=function(){return this},e})(),_m=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},Tm=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))},kn="context",Em=new wm,qi=(function(){function e(){}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalContextManager=function(t){return ua(kn,t,nn.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,Tm([t,r,n],_m(o),!1))},e.prototype.bind=function(t,r){return this._getContextManager().bind(t,r)},e.prototype._getContextManager=function(){return _r(kn)||Em},e.prototype.disable=function(){this._getContextManager().disable(),ca(kn,nn.instance())},e})(),Gn;(function(e){e[e.NONE=0]="NONE",e[e.SAMPLED=1]="SAMPLED"})(Gn||(Gn={}));var Zi="0000000000000000",Gi="00000000000000000000000000000000",bm={traceId:Gi,spanId:Zi,traceFlags:Gn.NONE},pr=(function(){function e(t){t===void 0&&(t=bm),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})(),da=gm("OpenTelemetry Context Key SPAN");function pa(e){return e.getValue(da)||void 0}function Im(){return pa(qi.getInstance().active())}function fa(e,t){return e.setValue(da,t)}function Sm(e){return e.deleteValue(da)}function Am(e,t){return fa(e,new pr(t))}function Bi(e){var t;return(t=pa(e))===null||t===void 0?void 0:t.spanContext()}var Nm=/^([0-9a-f]{32})$/i,Om=/^[0-9a-f]{16}$/i;function Rm(e){return Nm.test(e)&&e!==Gi}function xm(e){return Om.test(e)&&e!==Zi}function Vi(e){return Rm(e.traceId)&&xm(e.spanId)}function km(e){return new pr(e)}var Pn=qi.getInstance(),Hi=(function(){function e(){}return e.prototype.startSpan=function(t,r,n){n===void 0&&(n=Pn.active());var a=!!(r!=null&&r.root);if(a)return new pr;var o=n&&Bi(n);return Pm(o)&&Vi(o)?new pr(o):new pr},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??Pn.active(),u=this.startSpan(t,o,l),c=fa(l,u);return Pn.with(c,i,void 0,u)}},e})();function Pm(e){return typeof e=="object"&&typeof e.spanId=="string"&&typeof e.traceId=="string"&&typeof e.traceFlags=="number"}var Cm=new Hi,Dm=(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):Cm},e})(),zm=(function(){function e(){}return e.prototype.getTracer=function(t,r,n){return new Hi},e})(),$m=new zm,qo=(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 Dm(this,t,r,n)},e.prototype.getDelegate=function(){var t;return(t=this._delegate)!==null&&t!==void 0?t:$m},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})(),an;(function(e){e[e.UNSET=0]="UNSET",e[e.OK=1]="OK",e[e.ERROR=2]="ERROR"})(an||(an={}));var Cn="trace",Mm=(function(){function e(){this._proxyTracerProvider=new qo,this.wrapSpanContext=km,this.isSpanContextValid=Vi,this.deleteSpan=Sm,this.getSpan=pa,this.getActiveSpan=Im,this.getSpanContext=Bi,this.setSpan=fa,this.setSpanContext=Am}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalTracerProvider=function(t){var r=ua(Cn,this._proxyTracerProvider,nn.instance());return r&&this._proxyTracerProvider.setDelegate(t),r},e.prototype.getTracerProvider=function(){return _r(Cn)||this._proxyTracerProvider},e.prototype.getTracer=function(t,r){return this.getTracerProvider().getTracer(t,r)},e.prototype.disable=function(){ca(Cn,nn.instance()),this._proxyTracerProvider=new qo},e})(),Fm=Mm.getInstance(),Lm=Object.defineProperty,Um=(e,t)=>{for(var r in t)Lm(e,r,{get:t[r],enumerable:!0})},Ji="AI_InvalidArgumentError",Yi=`vercel.ai.error.${Ji}`,jm=Symbol.for(Yi),Wi,et=class extends H{constructor({parameter:e,value:t,message:r}){super({name:Ji,message:`Invalid argument for parameter ${e}: ${r}`}),this[Wi]=!0,this.parameter=e,this.value=t}static isInstance(e){return H.hasMarker(e,Yi)}};Wi=jm;var Ki="AI_InvalidToolApprovalError",Xi=`vercel.ai.error.${Ki}`,qm=Symbol.for(Xi),Qi,Zm=class extends H{constructor({approvalId:e}){super({name:Ki,message:`Tool approval response references unknown approvalId: "${e}". No matching tool-approval-request found in message history.`}),this[Qi]=!0,this.approvalId=e}static isInstance(e){return H.hasMarker(e,Xi)}};Qi=qm;var el="AI_InvalidToolInputError",tl=`vercel.ai.error.${el}`,Gm=Symbol.for(tl),rl,ga=class extends H{constructor({toolInput:e,toolName:t,cause:r,message:n=`Invalid input for tool ${t}: ${Kt(r)}`}){super({name:el,message:n,cause:r}),this[rl]=!0,this.toolInput=e,this.toolName=t}static isInstance(e){return H.hasMarker(e,tl)}};rl=Gm;var nl="AI_ToolCallNotFoundForApprovalError",al=`vercel.ai.error.${nl}`,Bm=Symbol.for(al),ol,ha=class extends H{constructor({toolCallId:e,approvalId:t}){super({name:nl,message:`Tool call "${e}" not found for approval request "${t}".`}),this[ol]=!0,this.toolCallId=e,this.approvalId=t}static isInstance(e){return H.hasMarker(e,al)}};ol=Bm;var sl="AI_NoObjectGeneratedError",il=`vercel.ai.error.${sl}`,Vm=Symbol.for(il),ll,vt=class extends H{constructor({message:e="No object generated.",cause:t,text:r,response:n,usage:a,finishReason:o}){super({name:sl,message:e,cause:t}),this[ll]=!0,this.text=r,this.response=n,this.usage=a,this.finishReason=o}static isInstance(e){return H.hasMarker(e,il)}};ll=Vm;var ul="AI_NoOutputGeneratedError",cl=`vercel.ai.error.${ul}`,Hm=Symbol.for(cl),dl,pl=class extends H{constructor({message:e="No output generated.",cause:t}={}){super({name:ul,message:e,cause:t}),this[dl]=!0}static isInstance(e){return H.hasMarker(e,cl)}};dl=Hm;var fl="AI_NoSuchToolError",gl=`vercel.ai.error.${fl}`,Jm=Symbol.for(gl),hl,Bn=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:fl,message:r}),this[hl]=!0,this.toolName=e,this.availableTools=t}static isInstance(e){return H.hasMarker(e,gl)}};hl=Jm;var ml="AI_ToolCallRepairError",yl=`vercel.ai.error.${ml}`,Ym=Symbol.for(yl),vl,Wm=class extends H{constructor({cause:e,originalError:t,message:r=`Error repairing tool call: ${Kt(e)}`}){super({name:ml,message:r,cause:e}),this[vl]=!0,this.originalError=t}static isInstance(e){return H.hasMarker(e,yl)}};vl=Ym;var Km=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}},wl="AI_InvalidMessageRoleError",_l=`vercel.ai.error.${wl}`,Xm=Symbol.for(_l),Tl,Qm=class extends H{constructor({role:e,message:t=`Invalid message role: '${e}'. Must be one of: "system", "user", "assistant", "tool".`}){super({name:wl,message:t}),this[Tl]=!0,this.role=e}static isInstance(e){return H.hasMarker(e,_l)}};Tl=Xm;var El="AI_RetryError",bl=`vercel.ai.error.${El}`,ey=Symbol.for(bl),Il,Zo=class extends H{constructor({message:e,reason:t,errors:r}){super({name:El,message:e}),this[Il]=!0,this.reason=t,this.errors=r,this.lastError=r[r.length-1]}static isInstance(e){return H.hasMarker(e,bl)}};Il=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.",Go=!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}Go||(Go=!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:Sl(a.finishReason),usage:Al(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:Sl(t.finishReason),usage:Al(t.usage)});break;default:r.enqueue(t);break}}}))}function Sl(e){return{unified:e==="unknown"?"other":e,raw:void 0}}function Al(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 on(e){if(typeof e!="string"){if(e.specificationVersion!=="v3"&&e.specificationVersion!=="v2"){const t=e;throw new Km({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:tm}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"?oa(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"?oa(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 Nl="6.0.11",dy=async({url:e})=>{var t;const r=e.toString();try{const n=await fetch(r,{headers:Rr({},`ai-sdk/${Nl}`,ia())});if(!n.ok)throw new Sn({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 Sn.isInstance(n)?n:new Sn({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 Ol=Pe([x(),Xr(Uint8Array),Xr(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 Rl(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?tn(new Uint8Array(e)):tn(e)}function Tr(e){return e===void 0?[]:Array.isArray(e)?e:[e]}async function xl({prompt:e,supportedUrls:t,download:r=py()}){const n=await my(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=>hy({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 hy({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}=Rl(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:Bo(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:Bo(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 Qm({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 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}=Rl(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 Bo(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 fr({toolCallId:e,input:t,output:r,tool:n,errorMode:a}){return a==="text"?{type:"error-text",value:Kt(r)}:a==="json"?{type:"error-json",value:Vo(r)}:n!=null&&n.toModelOutput?await n.toModelOutput({toolCallId:e,input:t,output:r}):typeof r=="string"?{type:"text",value:r}:{type:"json",value:Vo(r)}}function Vo(e){return e===void 0?null:e}function Vn({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 kl({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 er(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 Er=ug(()=>Pe([Df(),x(),Kr(),na(),Tt(x(),Er.optional()),Ue(Er)])),ye=Tt(x(),Tt(x(),Er.optional())),Pl=G({type:ee("text"),text:x(),providerOptions:ye.optional()}),wy=G({type:ee("image"),image:Pe([Ol,Xr(URL)]),mediaType:x().optional(),providerOptions:ye.optional()}),Cl=G({type:ee("file"),data:Pe([Ol,Xr(URL)]),filename:x().optional(),mediaType:x(),providerOptions:ye.optional()}),_y=G({type:ee("reasoning"),text:x(),providerOptions:ye.optional()}),Ty=G({type:ee("tool-call"),toolCallId:x(),toolName:x(),input:kt(),providerOptions:ye.optional(),providerExecuted:na().optional()}),Ey=qf("type",[G({type:ee("text"),value:x(),providerOptions:ye.optional()}),G({type:ee("json"),value:Er,providerOptions:ye.optional()}),G({type:ee("execution-denied"),reason:x().optional(),providerOptions:ye.optional()}),G({type:ee("error-text"),value:x(),providerOptions:ye.optional()}),G({type:ee("error-json"),value:Er,providerOptions:ye.optional()}),G({type:ee("content"),value:Ue(Pe([G({type:ee("text"),text:x(),providerOptions:ye.optional()}),G({type:ee("media"),data:x(),mediaType:x()}),G({type:ee("file-data"),data:x(),mediaType:x(),filename:x().optional(),providerOptions:ye.optional()}),G({type:ee("file-url"),url:x(),providerOptions:ye.optional()}),G({type:ee("file-id"),fileId:Pe([x(),Tt(x(),x())]),providerOptions:ye.optional()}),G({type:ee("image-data"),data:x(),mediaType:x(),providerOptions:ye.optional()}),G({type:ee("image-url"),url:x(),providerOptions:ye.optional()}),G({type:ee("image-file-id"),fileId:Pe([x(),Tt(x(),x())]),providerOptions:ye.optional()}),G({type:ee("custom"),providerOptions:ye.optional()})]))})]),Dl=G({type:ee("tool-result"),toolCallId:x(),toolName:x(),output:Ey,providerOptions:ye.optional()}),by=G({type:ee("tool-approval-request"),approvalId:x(),toolCallId:x()}),Iy=G({type:ee("tool-approval-response"),approvalId:x(),approved:na(),reason:x().optional()}),Sy=G({role:ee("system"),content:x(),providerOptions:ye.optional()}),Ay=G({role:ee("user"),content:Pe([x(),Ue(Pe([Pl,wy,Cl]))]),providerOptions:ye.optional()}),Ny=G({role:ee("assistant"),content:Pe([x(),Ue(Pe([Pl,Cl,_y,Ty,Dl,by]))]),providerOptions:ye.optional()}),Oy=G({role:ee("tool"),content:Ue(Pe([Dl,Iy])),providerOptions:ye.optional()}),Ry=Pe([Sy,Ay,Ny,Oy]);async function zl(e){if(e.prompt==null&&e.messages==null)throw new Zt({prompt:e,message:"prompt or messages must be defined"});if(e.prompt!=null&&e.messages!=null)throw new Zt({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 Zt({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 Zt({prompt:e,message:"prompt or messages must be defined"});if(t.length===0)throw new Zt({prompt:e,message:"messages must not be empty"});const r=await rt({value:t,schema:Ue(Ry)});if(!r.success)throw new Zt({prompt:e,message:"The messages do not match the ModelMessage[] schema.",cause:r.error});return{messages:t,system:e.system}}function $l(e){if(!la.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 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 Ml({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 Ry={startSpan(){return jr},startActiveSpan(e,t,r,n){if(typeof t=="function")return t(jr);if(typeof r=="function")return r(jr);if(typeof n=="function")return n(jr)}},jr={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 Fl({isEnabled:e=!1,tracer:t}={}){return e?t||Fm.getTracer("ai"):Ry}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{Ll(o,s)}finally{o.end()}throw s}})}function Ll(e,t){t instanceof Error?(e.recordException({name:t.name,message:t.message,stack:t.stack}),e.setStatus({code:an.ERROR,message:t.message})):e.setStatus({code:an.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 Ul(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 jl(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 Dn(){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 ql(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 gn(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]=gn(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=>Zl(a,{maxRetries:e,delayInMs:t,backoffFactor:r,abortSignal:n});async function Zl(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=sa(s),l=[...o,s],u=l.length;if(u>t)throw new Zo({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(Py({error:s,exponentialBackoffDelay:r}),{abortSignal:a}),Zl(e,{maxRetries:t,delayInMs:n*r,backoffFactor:n,abortSignal:a},l);throw u===1?s:new Zo({message:`Failed after ${u} attempts with non-retryable error: '${i}'`,reason:"errorNotRetryable",errors:l})}}function Gl({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 Bl({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 Zm({approvalId:l.approvalId});if(a[u.toolCallId]!=null)continue;const c=r[u.toolCallId];if(c==null)throw new ha({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 ya({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=Sh({execute:p.execute.bind(p),input:c,options:{toolCallId:u,messages:a,abortSignal:o,experimental_context:s}});for await(const _ of E)_.type==="preliminary"?i==null||i({...e,type:"tool-result",output:_.output,preliminary:!0}):v=_.output}catch(E){return Ll(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 Ho(e){const t=e.filter(r=>r.type==="text");if(t.length!==0)return t.map(r=>r.text).join("")}var Vl=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=tn(this.uint8ArrayData)),this.base64Data}get uint8Array(){return this.uint8ArrayData==null&&(this.uint8ArrayData=oa(this.base64Data)),this.uint8ArrayData}},Dy=class extends Vl{constructor(e){super(e),this.type="file"}};async function Hl({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 zy={};Um(zy,{array:()=>Fy,choice:()=>Ly,json:()=>Uy,object:()=>My,text:()=>sn});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 sn=()=>({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 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 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 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 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 Jl({toolCall:e,tools:t,repairToolCall:r,system:n,messages:a}){var o;try{if(t==null){if(e.providerExecuted&&e.dynamic)return await Yl(e);throw new Bn({toolName:e.toolName})}try{return await Jo({toolCall:e,tools:t})}catch(s){if(r==null||!(Bn.isInstance(s)||ga.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 Wm({cause:l,originalError:s})}if(i==null)throw s;return await Jo({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 Yl(e){const t=e.input.trim()===""?{success:!0,value:{}}:await We({text:e.input});if(t.success===!1)throw new ga({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 Jo({toolCall:e,tools:t}){const r=e.toolName,n=t[r];if(n==null){if(e.providerExecuted&&e.dynamic)return await Yl(e);throw new Bn({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 ga({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 Wl=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 Kl(e){return({steps:t})=>t.length===e}async function Xl({stopConditions:e,steps:t}){return(await Promise.all(e.map(r=>r({steps:t})))).some(r=>r)}async function Hn({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=Or({prefix:"aitxt",size:24});async function Jn({model:e,tools:t,toolChoice:r,system:n,prompt:a,messages:o,maxRetries:s,abortSignal:i,headers:l,stopWhen:u=Kl(1),experimental_output:c,output:p=c,experimental_telemetry:d,providerOptions:v,experimental_activeTools:E,activeTools:_=E,experimental_prepareStep:I,prepareStep:P=I,experimental_repairToolCall:C,experimental_download:m,experimental_context:z,_internal:{generateId:x=jy,currentDate:y=()=>new Date}={},onStepFinish:O,onFinish:D,...F}){const se=on(e),L=Tr(u),{maxRetries:X,retry:Q}=Gl({maxRetries:s,abortSignal:i}),le=Vn(F),Oe=xr(l??{},`ai/${Nl}`),_e=Ml({model:se,telemetry:d,headers:Oe,settings:{...le,maxRetries:X}}),ct=await zl({system:n,prompt:a,messages:o}),Fe=Fl(d);try{return await Ir({name:"ai.generateText",attributes:tt({telemetry:d,attributes:{...Er({operationId:"ai.generateText",telemetry:d}),..._e,"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 Dt=>{var zt,Ce,$t,Mt,nt,at,kr,dt;const er=ct.messages,ot=[],{approvedToolApprovals:Pr,deniedToolApprovals:tr}=Bl({messages:er}),It=Pr.filter(U=>!U.toolCall.providerExecuted);if(tr.length>0||It.length>0){const U=await Yo({toolCalls:It.map(W=>W.toolCall),tools:t,tracer:Fe,telemetry:d,messages:er,abortSignal:i,experimental_context:z}),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=[...Pr,...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 Cr=Vn(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:z})),W=on((zt=ae==null?void 0:ae.model)!=null?zt: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:m});z=(Mt=ae==null?void 0:ae.experimental_context)!=null?Mt:z;const{toolChoice:ke,tools:pt}=await kl({tools:t,toolChoice:(nt=ae==null?void 0:ae.toolChoice)!=null?nt:r,activeTools:(at=ae==null?void 0:ae.activeTools)!=null?at:_});J=await Q(()=>{var $;return Ir({name:"ai.generateText.doGenerate",attributes:tt({telemetry:d,attributes:{...Er({operationId:"ai.generateText.doGenerate",telemetry:d}),..._e,"ai.model.provider":W.provider,"ai.model.id":W.modelId,"ai.prompt.messages":{input:()=>Ul(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,Dr,zr,rr,nr,lt;const $r=gn(v,ae==null?void 0:ae.providerOptions),xe=await W.doGenerate({...Cr,tools:pt,toolChoice:ke,responseFormat:await(p==null?void 0:p.responseFormat),prompt:st,providerOptions:$r,abortSignal:i,headers:Oe}),gt={id:(it=(Ft=xe.response)==null?void 0:Ft.id)!=null?it:x(),timestamp:(Dr=(Lt=xe.response)==null?void 0:Lt.timestamp)!=null?Dr:y(),modelId:(rr=(zr=xe.response)==null?void 0:zr.modelId)!=null?rr:W.modelId,headers:(nr=xe.response)==null?void 0:nr.headers,body:(lt=xe.response)==null?void 0:lt.body};return Te.setAttributes(await tt({telemetry:d,attributes:{"ai.response.finishReason":xe.finishReason.unified,"ai.response.text":{output:()=>Ho(xe.content)},"ai.response.toolCalls":{output:()=>{const ht=Wo(xe.content);return ht==null?void 0:JSON.stringify(ht)}},"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 ve=await Promise.all(J.content.filter($=>$.type==="tool-call").map($=>Jl({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:z}),await Hl({tool:Te,toolCall:$,messages:U,experimental_context:z})&&(Se[$.toolCallId]={type:"tool-approval-request",approvalId:x(),toolCall:$}))}const we=ve.filter($=>$.invalid&&$.dynamic);fe=[];for(const $ of we)fe.push({type:"tool-error",toolCallId:$.toolCallId,toolName:$.toolName,input:$.input,error:sa($.error),dynamic:!0});pe=ve.filter($=>!$.providerExecuted),t!=null&&fe.push(...await Yo({toolCalls:pe.filter($=>!$.invalid&&Se[$.toolCallId]==null),tools:t,tracer:Fe,telemetry:d,messages:U,abortSignal:i,experimental_context:z}));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 Hn({content:St,tools:t}));const ft=new Wl({content:St,finishReason:J.finishReason.unified,rawFinishReason:J.finishReason.raw,usage:jl(J.usage),warnings:J.warnings,providerMetadata:J.providerMetadata,request:(kr=J.request)!=null?kr:{},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 Xl({stopConditions:L,steps:ne}));Dt.setAttributes(await tt({telemetry:d,attributes:{"ai.response.finishReason":J.finishReason.unified,"ai.response.text":{output:()=>Ho(J.content)},"ai.response.toolCalls":{output:()=>{const U=Wo(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)=>ql(U,ae.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:ne,totalUsage:Ke,experimental_context:z}));let N;return B.finishReason==="stop"&&(N=await(p??sn()).parseCompleteOutput({text:B.text},{response:B.response,usage:B.usage,finishReason:B.finishReason})),new qy({steps:ne,totalUsage:Ke,output:N})}})}catch(Dt){throw $l(Dt)}}async function Yo({toolCalls:e,tools:t,tracer:r,telemetry:n,messages:a,abortSignal:o,experimental_context:s}){return(await Promise.all(e.map(async l=>ya({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 pl;return this._output}};function Wo(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 Vl(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 ha({toolCallId:s.toolCallId,approvalId:s.approvalId});o.push({type:"tool-approval-request",approvalId:s.approvalId,toolCall:i});break}}return[...o,...r,...n]}function hn(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:hn(r,{"content-type":"text/plain; charset=utf-8"})})}function Ql({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}){Ql({response:e,status:t,statusText:r,headers:Object.fromEntries(hn(n,{"content-type":"text/plain; charset=utf-8"}).entries()),stream:a.pipeThrough(new TextEncoderStream)})}var eu=class extends TransformStream{constructor(){super({transform(e,t){t.enqueue(`data: ${JSON.stringify(e)}
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 Ml({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 jr},startActiveSpan(e,t,r,n){if(typeof t=="function")return t(jr);if(typeof r=="function")return r(jr);if(typeof n=="function")return n(jr)}},jr={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 Fl({isEnabled:e=!1,tracer:t}={}){return e?t||Fm.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{Ll(o,s)}finally{o.end()}throw s}})}function Ll(e,t){t instanceof Error?(e.recordException({name:t.name,message:t.message,stack:t.stack}),e.setStatus({code:an.ERROR,message:t.message})):e.setStatus({code:an.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 Ul(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 jl(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 Dn(){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 ql(e,t){var r,n,a,o,s,i,l,u,c,d;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,(d=t.outputTokenDetails)==null?void 0:d.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 gn(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]=gn(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=>Zl(a,{maxRetries:e,delayInMs:t,backoffFactor:r,abortSignal:n});async function Zl(e,{maxRetries:t,delayInMs:r,backoffFactor:n,abortSignal:a},o=[]){try{return await e()}catch(s){if(Pt(s)||t===0)throw s;const i=sa(s),l=[...o,s],u=l.length;if(u>t)throw new Zo({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(Py({error:s,exponentialBackoffDelay:r}),{abortSignal:a}),Zl(e,{maxRetries:t,delayInMs:n*r,backoffFactor:n,abortSignal:a},l);throw u===1?s:new Zo({message:`Failed after ${u} attempts with non-retryable error: '${i}'`,reason:"errorNotRetryable",errors:l})}}function Gl({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 Bl({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 Zm({approvalId:l.approvalId});if(a[u.toolCallId]!=null)continue;const c=r[u.toolCallId];if(c==null)throw new ha({toolCallId:u.toolCallId,approvalId:u.approvalId});const d={approvalRequest:u,approvalResponse:l,toolCall:c};l.approved?o.push(d):s.push(d)}return{approvedToolApprovals:o,deniedToolApprovals:s}}async function ya({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,d=t==null?void 0:t[l];if((d==null?void 0:d.execute)!=null)return Ir({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 p=>{let v;try{const b=Sh({execute:d.execute.bind(d),input:c,options:{toolCallId:u,messages:a,abortSignal:o,experimental_context:s}});for await(const _ of b)_.type==="preliminary"?i==null||i({...e,type:"tool-result",output:_.output,preliminary:!0}):v=_.output}catch(b){return Ll(p,b),{type:"tool-error",toolCallId:u,toolName:l,input:c,error:b,dynamic:d.type==="dynamic",...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}}}try{p.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:d.type==="dynamic",...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}}}})}function Ho(e){const t=e.filter(r=>r.type==="text");if(t.length!==0)return t.map(r=>r.text).join("")}var Vl=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=tn(this.uint8ArrayData)),this.base64Data}get uint8Array(){return this.uint8ArrayData==null&&(this.uint8ArrayData=oa(this.base64Data)),this.uint8ArrayData}},Dy=class extends Vl{constructor(e){super(e),this.type="file"}};async function Hl({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 zy={};Um(zy,{array:()=>Fy,choice:()=>Ly,json:()=>Uy,object:()=>My,text:()=>sn});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 d=e.substring(n,l+1);!"false".startsWith(d)&&!"true".startsWith(d)&&!"null".startsWith(d)?(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 xr(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 sn=()=>({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=er(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 vt({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 vt({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 xr(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=er(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 vt({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 vt({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 vt({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 xr(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 vt({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 vt({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 xr(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 vt({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 xr(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 Jl({toolCall:e,tools:t,repairToolCall:r,system:n,messages:a}){var o;try{if(t==null){if(e.providerExecuted&&e.dynamic)return await Yl(e);throw new Bn({toolName:e.toolName})}try{return await Jo({toolCall:e,tools:t})}catch(s){if(r==null||!(Bn.isInstance(s)||ga.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 er(u).jsonSchema},system:n,messages:a,error:s})}catch(l){throw new Wm({cause:l,originalError:s})}if(i==null)throw s;return await Jo({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 Yl(e){const t=e.input.trim()===""?{success:!0,value:{}}:await We({text:e.input});if(t.success===!1)throw new ga({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 Jo({toolCall:e,tools:t}){const r=e.toolName,n=t[r];if(n==null){if(e.providerExecuted&&e.dynamic)return await Yl(e);throw new Bn({toolName:e.toolName,availableTools:Object.keys(t)})}const a=er(n.inputSchema),o=e.input.trim()===""?await rt({value:{},schema:a}):await We({text:e.input,schema:a});if(o.success===!1)throw new ga({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 Wl=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 Kl(e){return({steps:t})=>t.length===e}async function Xl({stopConditions:e,steps:t}){return(await Promise.all(e.map(r=>r({steps:t})))).some(r=>r)}async function Hn({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 fr({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 fr({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 fr({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=Or({prefix:"aitxt",size:24});async function Jn({model:e,tools:t,toolChoice:r,system:n,prompt:a,messages:o,maxRetries:s,abortSignal:i,headers:l,stopWhen:u=Kl(1),experimental_output:c,output:d=c,experimental_telemetry:p,providerOptions:v,experimental_activeTools:b,activeTools:_=b,experimental_prepareStep:I,prepareStep:P=I,experimental_repairToolCall:C,experimental_download:m,experimental_context:z,_internal:{generateId:R=jy,currentDate:y=()=>new Date}={},onStepFinish:O,onFinish:D,...F}){const se=on(e),L=Tr(u),{maxRetries:X,retry:Q}=Gl({maxRetries:s,abortSignal:i}),le=Vn(F),Oe=Rr(l??{},`ai/${Nl}`),Te=Ml({model:se,telemetry:p,headers:Oe,settings:{...le,maxRetries:X}}),ct=await zl({system:n,prompt:a,messages:o}),Fe=Fl(p);try{return await Ir({name:"ai.generateText",attributes:tt({telemetry:p,attributes:{...br({operationId:"ai.generateText",telemetry:p}),...Te,"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 $t,Ce,Mt,Ft,nt,at,kr,dt;const tr=ct.messages,ot=[],{approvedToolApprovals:Pr,deniedToolApprovals:rr}=Bl({messages:tr}),St=Pr.filter(U=>!U.toolCall.providerExecuted);if(rr.length>0||St.length>0){const U=await Yo({toolCalls:St.map(W=>W.toolCall),tools:t,tracer:Fe,telemetry:p,messages:tr,abortSignal:i,experimental_context:z}),ae=[];for(const W of U){const st=await fr({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 rr)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=[...Pr,...rr].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 Cr=Vn(F);let J,pe=[],fe=[];const ne=[],V=new Map;do{const U=[...tr,...ot],ae=await(P==null?void 0:P({model:se,steps:ne,stepNumber:ne.length,messages:U,experimental_context:z})),W=on(($t=ae==null?void 0:ae.model)!=null?$t:se),st=await xl({prompt:{system:(Ce=ae==null?void 0:ae.system)!=null?Ce:ct.system,messages:(Mt=ae==null?void 0:ae.messages)!=null?Mt:U},supportedUrls:await W.supportedUrls,download:m});z=(Ft=ae==null?void 0:ae.experimental_context)!=null?Ft:z;const{toolChoice:ke,tools:pt}=await kl({tools:t,toolChoice:(nt=ae==null?void 0:ae.toolChoice)!=null?nt:r,activeTools:(at=ae==null?void 0:ae.activeTools)!=null?at:_});J=await Q(()=>{var $;return Ir({name:"ai.generateText.doGenerate",attributes:tt({telemetry:p,attributes:{...br({operationId:"ai.generateText.doGenerate",telemetry:p}),...Te,"ai.model.provider":W.provider,"ai.model.id":W.modelId,"ai.prompt.messages":{input:()=>Ul(st)},"ai.prompt.tools":{input:()=>pt==null?void 0:pt.map(Ee=>JSON.stringify(Ee))},"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 Ee=>{var Lt,it,Ut,Dr,zr,nr,ar,lt;const $r=gn(v,ae==null?void 0:ae.providerOptions),Re=await W.doGenerate({...Cr,tools:pt,toolChoice:ke,responseFormat:await(d==null?void 0:d.responseFormat),prompt:st,providerOptions:$r,abortSignal:i,headers:Oe}),gt={id:(it=(Lt=Re.response)==null?void 0:Lt.id)!=null?it:R(),timestamp:(Dr=(Ut=Re.response)==null?void 0:Ut.timestamp)!=null?Dr:y(),modelId:(nr=(zr=Re.response)==null?void 0:zr.modelId)!=null?nr:W.modelId,headers:(ar=Re.response)==null?void 0:ar.headers,body:(lt=Re.response)==null?void 0:lt.body};return Ee.setAttributes(await tt({telemetry:p,attributes:{"ai.response.finishReason":Re.finishReason.unified,"ai.response.text":{output:()=>Ho(Re.content)},"ai.response.toolCalls":{output:()=>{const ht=Wo(Re.content);return ht==null?void 0:JSON.stringify(ht)}},"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 we=await Promise.all(J.content.filter($=>$.type==="tool-call").map($=>Jl({toolCall:$,tools:t,repairToolCall:C,system:n,messages:U}))),Ae={};for(const $ of we){if($.invalid)continue;const Ee=t==null?void 0:t[$.toolName];Ee!=null&&((Ee==null?void 0:Ee.onInputAvailable)!=null&&await Ee.onInputAvailable({input:$.input,toolCallId:$.toolCallId,messages:U,abortSignal:i,experimental_context:z}),await Hl({tool:Ee,toolCall:$,messages:U,experimental_context:z})&&(Ae[$.toolCallId]={type:"tool-approval-request",approvalId:R(),toolCall:$}))}const _e=we.filter($=>$.invalid&&$.dynamic);fe=[];for(const $ of _e)fe.push({type:"tool-error",toolCallId:$.toolCallId,toolName:$.toolName,input:$.input,error:sa($.error),dynamic:!0});pe=we.filter($=>!$.providerExecuted),t!=null&&fe.push(...await Yo({toolCalls:pe.filter($=>!$.invalid&&Ae[$.toolCallId]==null),tools:t,tracer:Fe,telemetry:p,messages:U,abortSignal:i,experimental_context:z}));for(const $ of we){if(!$.providerExecuted)continue;const Ee=t==null?void 0:t[$.toolName];(Ee==null?void 0:Ee.type)==="provider"&&Ee.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 At=Zy({content:J.content,toolCalls:we,toolOutputs:fe,toolApprovalRequests:Object.values(Ae),tools:t});ot.push(...await Hn({content:At,tools:t}));const ft=new Wl({content:At,finishReason:J.finishReason.unified,rawFinishReason:J.finishReason.raw,usage:jl(J.usage),warnings:J.warnings,providerMetadata:J.providerMetadata,request:(kr=J.request)!=null?kr:{},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 Xl({stopConditions:L,steps:ne}));zt.setAttributes(await tt({telemetry:p,attributes:{"ai.response.finishReason":J.finishReason.unified,"ai.response.text":{output:()=>Ho(J.content)},"ai.response.toolCalls":{output:()=>{const U=Wo(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)=>ql(U,ae.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:ne,totalUsage:Ke,experimental_context:z}));let N;return B.finishReason==="stop"&&(N=await(d??sn()).parseCompleteOutput({text:B.text},{response:B.response,usage:B.usage,finishReason:B.finishReason})),new qy({steps:ne,totalUsage:Ke,output:N})}})}catch(zt){throw $l(zt)}}async function Yo({toolCalls:e,tools:t,tracer:r,telemetry:n,messages:a,abortSignal:o,experimental_context:s}){return(await Promise.all(e.map(async l=>ya({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 pl;return this._output}};function Wo(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 Vl(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 ha({toolCallId:s.toolCallId,approvalId:s.approvalId});o.push({type:"tool-approval-request",approvalId:s.approvalId,toolCall:i});break}}return[...o,...r,...n]}function hn(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:hn(r,{"content-type":"text/plain; charset=utf-8"})})}function Ql({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(d=>{e.once("drain",d)})}}catch(l){throw l}finally{e.end()}})()}function By({response:e,status:t,statusText:r,headers:n,textStream:a}){Ql({response:e,status:t,statusText:r,headers:Object.fromEntries(hn(n,{"content-type":"text/plain; charset=utf-8"}).entries()),stream:a.pipeThrough(new TextEncoderStream)})}var eu=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
- `)}})}},tu={"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 eu);if(a){const[s,i]=o.tee();o=s,a({stream:i})}return new Response(o.pipeThrough(new TextEncoderStream),{status:e,statusText:t,headers:hn(r,tu)})}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 Yn(e){return e.type.startsWith("tool-")}function Yy(e){return e.type==="dynamic-tool"}function Wy(e){return Yn(e)||Yy(e)}function Ko(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 _(m){const x=u.message.parts.filter(Wy).find(y=>y.toolCallId===m);if(x==null)throw new Error(`no tool invocation found for tool call ${m}`);return x}function I(m){var z;const x=u.message.parts.find(D=>Yn(D)&&D.toolCallId===m.toolCallId),y=m,O=x;x!=null?(x.state=m.state,O.input=y.input,O.output=y.output,O.errorText=y.errorText,O.rawInput=y.rawInput,O.preliminary=y.preliminary,m.title!==void 0&&(O.title=m.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-${m.toolName}`,toolCallId:m.toolCallId,state:m.state,title:m.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(m){var z,x;const y=u.message.parts.find(F=>F.type==="dynamic-tool"&&F.toolCallId===m.toolCallId),O=m,D=y;y!=null?(y.state=m.state,D.toolName=m.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,m.title!==void 0&&(D.title=m.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:m.toolName,toolCallId:m.toolCallId,state:m.state,input:O.input,output:O.output,errorText:O.errorText,preliminary:O.preliminary,providerExecuted:O.providerExecuted,title:m.title,...O.providerMetadata!=null?{callProviderMetadata:O.providerMetadata}:{}})}async function C(m){if(m!=null){const z=u.message.metadata!=null?gn(u.message.metadata,m):m;t!=null&&await Zn({value:z,schema:t}),u.message.metadata=z}}switch(i.type){case"text-start":{const m={type:"text",text:"",providerMetadata:i.providerMetadata,state:"streaming"};u.activeTextParts[i.id]=m,u.message.parts.push(m),c();break}case"text-delta":{const m=u.activeTextParts[i.id];m.text+=i.delta,m.providerMetadata=(p=i.providerMetadata)!=null?p:m.providerMetadata,c();break}case"text-end":{const m=u.activeTextParts[i.id];m.state="done",m.providerMetadata=(d=i.providerMetadata)!=null?d:m.providerMetadata,delete u.activeTextParts[i.id],c();break}case"reasoning-start":{const m={type:"reasoning",text:"",providerMetadata:i.providerMetadata,state:"streaming"};u.activeReasoningParts[i.id]=m,u.message.parts.push(m),c();break}case"reasoning-delta":{const m=u.activeReasoningParts[i.id];m.text+=i.delta,m.providerMetadata=(v=i.providerMetadata)!=null?v:m.providerMetadata,c();break}case"reasoning-end":{const m=u.activeReasoningParts[i.id];m.providerMetadata=(E=i.providerMetadata)!=null?E:m.providerMetadata,m.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 m=u.message.parts.filter(Yn);u.partialToolCalls[i.toolCallId]={text:"",toolName:i.toolName,index:m.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 m=u.partialToolCalls[i.toolCallId];m.text+=i.inputTextDelta;const{value:z}=await Rr(m.text);m.dynamic?P({toolCallId:i.toolCallId,toolName:m.toolName,state:"input-streaming",input:z,title:m.title}):I({toolCallId:i.toolCallId,toolName:m.toolName,state:"input-streaming",input:z,title:m.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 m=_(i.toolCallId);m.state="approval-requested",m.approval={id:i.approvalId},c();break}case"tool-output-denied":{const m=_(i.toolCallId);m.state="output-denied",c();break}case"tool-output-available":{const m=_(i.toolCallId);m.type==="dynamic-tool"?P({toolCallId:i.toolCallId,toolName:m.toolName,state:"output-available",input:m.input,output:i.output,preliminary:i.preliminary,providerExecuted:i.providerExecuted,title:m.title}):I({toolCallId:i.toolCallId,toolName:Ko(m),state:"output-available",input:m.input,output:i.output,providerExecuted:i.providerExecuted,preliminary:i.preliminary,title:m.title}),c();break}case"tool-output-error":{const m=_(i.toolCallId);m.type==="dynamic-tool"?P({toolCallId:i.toolCallId,toolName:m.toolName,state:"output-error",input:m.input,errorText:i.errorText,providerExecuted:i.providerExecuted,title:m.title}):I({toolCallId:i.toolCallId,toolName:Ko(m),state:"output-error",input:m.input,rawInput:m.rawInput,errorText:i.errorText,providerExecuted:i.providerExecuted,title:m.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 Zn({value:i.data,schema:r[i.type]});const m=i;if(m.transient){s==null||s(m);break}const z=m.id!=null?u.message.parts.find(x=>m.type===x.type&&m.id===x.id):void 0;z!=null?z.data=m.data:u.message.parts.push(m),s==null||s(m),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 eu);if(o){const[i,l]=s.tee();s=i,o({stream:l})}Ql({response:e,status:t,statusText:r,headers:Object.fromEntries(hn(n,tu).entries()),stream:s.pipeThrough(new TextEncoderStream)})}function qr(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 Xo(){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=Xo();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=Xo(),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(m){c=m}}),d=new Set,v=new Map,E=new Map;let _=!1,I;function P(){_&&d.size===0&&(I!=null&&c.enqueue(I),c.close())}const C=new TransformStream({async transform(m,z){const x=m.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(m);break}case"file":{z.enqueue({type:"file",file:new Dy({data:m.data,mediaType:m.mediaType})});break}case"finish":{I={type:"finish",finishReason:m.finishReason.unified,rawFinishReason:m.finishReason.raw,usage:jl(m.usage),providerMetadata:m.providerMetadata};break}case"tool-approval-request":{const y=E.get(m.toolCallId);if(y==null){c.enqueue({type:"error",error:new ha({toolCallId:m.toolCallId,approvalId:m.approvalId})});break}z.enqueue({type:"tool-approval-request",approvalId:m.approvalId,toolCall:y});break}case"tool-call":{try{const y=await Jl({toolCall:m,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:sa(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 Hl({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),ya({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=m.toolName;m.isError?c.enqueue({type:"tool-error",toolCallId:m.toolCallId,toolName:y,input:v.get(m.toolCallId),providerExecuted:!0,error:m.result,dynamic:m.dynamic}):z.enqueue({type:"tool-result",toolCallId:m.toolCallId,toolName:y,input:v.get(m.toolCallId),output:m.result,providerExecuted:!0,dynamic:m.dynamic});break}default:{const y=x;throw new Error(`Unhandled chunk type: ${y}`)}}},flush(){_=!0,P()}});return new ReadableStream({async start(m){return Promise.all([t.pipeThrough(C).pipeTo(new WritableStream({write(z){m.enqueue(z)},close(){}})),p.pipeTo(new WritableStream({write(z){m.enqueue(z)},close(){m.close()}}))])}})}var ov=Or({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=Kl(1),experimental_output:c,output:p=c,experimental_telemetry:d,prepareStep:v,providerOptions:E,experimental_activeTools:_,activeTools:I=_,experimental_repairToolCall:P,experimental_transform:C,experimental_download:m,includeRawChunks:z=!1,onChunk:x,onError:y=({error:Oe})=>{console.error(Oe)},onFinish:O,onAbort:D,onStepFinish:F,experimental_context:se,_internal:{now:L=nv,generateId:X=ov,currentDate:Q=()=>new Date}={},...le}){return new lv({model:on(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:z,onChunk:x,onError:y,onFinish:O,onAbort:D,onStepFinish:F,now:L,currentDate:Q,generateId:X,experimental_context:se,download:m})}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:_,providerOptions:I,prepareStep:P,includeRawChunks:C,now:m,currentDate:z,generateId:x,onChunk:y,onError:O,onFinish:D,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=_,this.includeRawChunks=C,this.tools=u;let Q,le=[];const Oe=[];let _e,ct,Fe,Dt={},zt=[];const Ce=[],$t=new Map;let Mt,nt={},at={};const kr=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:$l(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={},Dt=N.request,zt=N.warnings),N.type==="finish-step"){const U=await Hn({content:le,tools:u}),ae=new Wl({content:le,finishReason:N.finishReason,rawFinishReason:N.rawFinishReason,usage:N.usage,warnings:zt,request:Dt,response:{...N.response,messages:[...Oe,...U]},providerMetadata:N.providerMetadata});await(se==null?void 0:se(ae)),ma({warnings:zt,provider:e.provider,model:e.modelId}),Ce.push(ae),Oe.push(...U),Q.resolve()}N.type==="finish"&&(Fe=N.totalUsage,_e=N.finishReason,ct=N.rawFinishReason)},async flush(pe){try{if(Ce.length===0){const B=new pl({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=_e??"other",ne=Fe??Dn();J._finishReason.resolve(fe),J._rawFinishReason.resolve(ct),J._totalUsage.resolve(ne),J._steps.resolve(Ce);const V=Ce[Ce.length-1];await(D==null?void 0:D({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(_??sn())).pipeThrough(kr);const{maxRetries:Pr,retry:tr}=Gl({maxRetries:a,abortSignal:o}),It=Fl(t),Ze=Vn(n),Cr=Ml({model:e,telemetry:t,headers:r,settings:{...Ze,maxRetries:Pr}}),J=this;Ir({name:"ai.streamText",attributes:tt({telemetry:t,attributes:{...Er({operationId:"ai.streamText",telemetry:t}),...Cr,"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}=Bl({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 we=await ya({toolCall:Se.toolCall,tools:u,tracer:It,telemetry:t,messages:ne,abortSignal:o,experimental_context:L,onPreliminaryToolResult:St=>{ke==null||ke.enqueue(St)}});we!=null&&(ke==null||ke.enqueue(we),ve.push(we))})),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 we of ve)Se.push({type:"tool-result",toolCallId:we.toolCallId,toolName:we.toolName,output:await pr({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)Se.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:Se})}}finally{ke==null||ke.close()}}Oe.push(...V);async function N({currentStep:U,responseMessages:ae,usage:W}){var st,ke,pt,ve,Se,we;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=on((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 kl({tools:u,toolChoice:(ve=$==null?void 0:$.toolChoice)!=null?ve:c,activeTools:(Se=$==null?void 0:$.activeTools)!=null?Se:d});L=(we=$==null?void 0:$.experimental_context)!=null?we:L;const Dr=gn(I,$==null?void 0:$.providerOptions),{result:{stream:zr,response:rr,request:nr},doStreamSpan:lt,startTimestampMs:$r}=await tr(()=>Ir({name:"ai.streamText.doStream",attributes:tt({telemetry:t,attributes:{...Er({operationId:"ai.streamText.doStream",telemetry:t}),...Cr,"ai.model.provider":Te.provider,"ai.model.id":Te.modelId,"ai.prompt.messages":{input:()=>Ul(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:m(),doStreamSpan:M,result:await Te.doStream({...Ze,tools:Lt,toolChoice:it,responseFormat:await(_==null?void 0:_.responseFormat),prompt:Ft,providerOptions:Dr,abortSignal:o,headers:r,includeRawChunks:St})})})),xe=av({tools:u,generatorStream:zr,tracer:It,telemetry:t,system:s,messages:ft,repairToolCall:v,abortSignal:o,experimental_context:L,generateId:x}),gt=nr??{},ht=[],ar=[];let mn;const yn={};let Ut="other",vn,Ve=Dn(),wn,_a=!0,Xe={id:x(),timestamp:z(),modelId:e.modelId},Ta="";J.addStream(xe.pipeThrough(new TransformStream({async transform(M,Re){var or,sr,Mr,Ne,jt;if(M.type==="stream-start"){mn=M.warnings;return}if(_a){const be=m()-$r;_a=!1,lt.addEvent("ai.stream.firstChunk",{"ai.response.msToFirstChunk":be}),lt.setAttributes({"ai.response.msToFirstChunk":be}),Re.enqueue({type:"start-step",request:gt,warnings:mn??[]})}const _n=M.type;switch(_n){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}),Ta+=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),ht.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:(Mr=M.modelId)!=null?Mr:Xe.modelId};break}case"finish":{Ve=M.usage,Ut=M.finishReason,vn=M.rawFinishReason,wn=M.providerMetadata;const be=m()-$r;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":{Re.enqueue(M);break}case"source":{Re.enqueue(M);break}case"tool-input-start":{yn[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}),Re.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 yn[M.id],Re.enqueue(M);break}case"tool-input-delta":{const be=yn[M.id],Tn=u==null?void 0:u[be];(Tn==null?void 0:Tn.onInputDelta)!=null&&await Tn.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 be=_n;throw new Error(`Unknown chunk type: ${be}`)}}},async flush(M){const Re=ht.length>0?JSON.stringify(ht):void 0;try{lt.setAttributes(await tt({telemetry:t,attributes:{"ai.response.finishReason":Ut,"ai.response.text":{output:()=>Ta},"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(wn),"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:vn,usage:Ve,providerMetadata:wn,response:{...Xe,headers:rr==null?void 0:rr.headers}});const or=ql(W,Ve);await Q.promise;const sr=ht.filter(Ne=>Ne.providerExecuted!==!0),Mr=ar.filter(Ne=>Ne.providerExecuted!==!0);for(const Ne of ht){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&&Mr.length===sr.length||$t.size>0)&&!await Xl({stopConditions:E,steps:Ce})){ae.push(...await Hn({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:vn,totalUsage:or}),J.closeStream()}})))}await N({currentStep:0,responseMessages:V,usage:Dn()})}}).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 qr(this.teeStream().pipeThrough(new TransformStream({transform({part:e},t){e.type==="text-delta"&&t.enqueue(e.text)}})))}get fullStream(){return qr(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 qr(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:sn()).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}),_=d.type;switch(_){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=_;throw new Error(`Unknown chunk type: ${I}`)}}E!=null&&_!=="start"&&_!=="finish"&&v.enqueue({type:"message-metadata",messageMetadata:E})}}));return qr(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})}};Or({prefix:"aiobj",size:24});Or({prefix:"aiobj",size:24});const uv=`You are an expert language translator specializing in preserving data structure integrity while translating content.
76
+ `)}})}},tu={"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 eu);if(a){const[s,i]=o.tee();o=s,a({stream:i})}return new Response(o.pipeThrough(new TextEncoderStream),{status:e,statusText:t,headers:hn(r,tu)})}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 Yn(e){return e.type.startsWith("tool-")}function Yy(e){return e.type==="dynamic-tool"}function Wy(e){return Yn(e)||Yy(e)}function Ko(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 d,p,v,b;function _(m){const R=u.message.parts.filter(Wy).find(y=>y.toolCallId===m);if(R==null)throw new Error(`no tool invocation found for tool call ${m}`);return R}function I(m){var z;const R=u.message.parts.find(D=>Yn(D)&&D.toolCallId===m.toolCallId),y=m,O=R;R!=null?(R.state=m.state,O.input=y.input,O.output=y.output,O.errorText=y.errorText,O.rawInput=y.rawInput,O.preliminary=y.preliminary,m.title!==void 0&&(O.title=m.title),O.providerExecuted=(z=y.providerExecuted)!=null?z:R.providerExecuted,y.providerMetadata!=null&&R.state==="input-available"&&(R.callProviderMetadata=y.providerMetadata)):u.message.parts.push({type:`tool-${m.toolName}`,toolCallId:m.toolCallId,state:m.state,title:m.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(m){var z,R;const y=u.message.parts.find(F=>F.type==="dynamic-tool"&&F.toolCallId===m.toolCallId),O=m,D=y;y!=null?(y.state=m.state,D.toolName=m.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,m.title!==void 0&&(D.title=m.title),D.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:m.toolName,toolCallId:m.toolCallId,state:m.state,input:O.input,output:O.output,errorText:O.errorText,preliminary:O.preliminary,providerExecuted:O.providerExecuted,title:m.title,...O.providerMetadata!=null?{callProviderMetadata:O.providerMetadata}:{}})}async function C(m){if(m!=null){const z=u.message.metadata!=null?gn(u.message.metadata,m):m;t!=null&&await Zn({value:z,schema:t}),u.message.metadata=z}}switch(i.type){case"text-start":{const m={type:"text",text:"",providerMetadata:i.providerMetadata,state:"streaming"};u.activeTextParts[i.id]=m,u.message.parts.push(m),c();break}case"text-delta":{const m=u.activeTextParts[i.id];m.text+=i.delta,m.providerMetadata=(d=i.providerMetadata)!=null?d:m.providerMetadata,c();break}case"text-end":{const m=u.activeTextParts[i.id];m.state="done",m.providerMetadata=(p=i.providerMetadata)!=null?p:m.providerMetadata,delete u.activeTextParts[i.id],c();break}case"reasoning-start":{const m={type:"reasoning",text:"",providerMetadata:i.providerMetadata,state:"streaming"};u.activeReasoningParts[i.id]=m,u.message.parts.push(m),c();break}case"reasoning-delta":{const m=u.activeReasoningParts[i.id];m.text+=i.delta,m.providerMetadata=(v=i.providerMetadata)!=null?v:m.providerMetadata,c();break}case"reasoning-end":{const m=u.activeReasoningParts[i.id];m.providerMetadata=(b=i.providerMetadata)!=null?b:m.providerMetadata,m.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 m=u.message.parts.filter(Yn);u.partialToolCalls[i.toolCallId]={text:"",toolName:i.toolName,index:m.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 m=u.partialToolCalls[i.toolCallId];m.text+=i.inputTextDelta;const{value:z}=await xr(m.text);m.dynamic?P({toolCallId:i.toolCallId,toolName:m.toolName,state:"input-streaming",input:z,title:m.title}):I({toolCallId:i.toolCallId,toolName:m.toolName,state:"input-streaming",input:z,title:m.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 m=_(i.toolCallId);m.state="approval-requested",m.approval={id:i.approvalId},c();break}case"tool-output-denied":{const m=_(i.toolCallId);m.state="output-denied",c();break}case"tool-output-available":{const m=_(i.toolCallId);m.type==="dynamic-tool"?P({toolCallId:i.toolCallId,toolName:m.toolName,state:"output-available",input:m.input,output:i.output,preliminary:i.preliminary,providerExecuted:i.providerExecuted,title:m.title}):I({toolCallId:i.toolCallId,toolName:Ko(m),state:"output-available",input:m.input,output:i.output,providerExecuted:i.providerExecuted,preliminary:i.preliminary,title:m.title}),c();break}case"tool-output-error":{const m=_(i.toolCallId);m.type==="dynamic-tool"?P({toolCallId:i.toolCallId,toolName:m.toolName,state:"output-error",input:m.input,errorText:i.errorText,providerExecuted:i.providerExecuted,title:m.title}):I({toolCallId:i.toolCallId,toolName:Ko(m),state:"output-error",input:m.input,rawInput:m.rawInput,errorText:i.errorText,providerExecuted:i.providerExecuted,title:m.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 Zn({value:i.data,schema:r[i.type]});const m=i;if(m.transient){s==null||s(m);break}const z=m.id!=null?u.message.parts.find(R=>m.type===R.type&&m.id===R.id):void 0;z!=null?z.data=m.data:u.message.parts.push(m),s==null||s(m),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(p,v){if(p.type==="start"){const b=p;b.messageId==null&&e!=null&&(b.messageId=e)}p.type==="abort"&&(s=!0),v.enqueue(p)}}));if(r==null)return i;const l=Ky({lastMessage:o?structuredClone(o):void 0,messageId:e??""}),u=async p=>{await p({state:l,write:()=>{}})};let c=!1;const d=async()=>{if(c||!r)return;c=!0;const p=l.message.id===(o==null?void 0:o.id);await r({isAborted:s,isContinuation:p,responseMessage:l.message,messages:[...p?t.slice(0,-1):t,l.message],finishReason:l.finishReason})};return Xy({stream:i,runUpdateMessageJob:u,onError:n}).pipeThrough(new TransformStream({transform(p,v){v.enqueue(p)},async cancel(){await d()},async flush(){await d()}}))}function ev({response:e,status:t,statusText:r,headers:n,stream:a,consumeSseStream:o}){let s=a.pipeThrough(new eu);if(o){const[i,l]=s.tee();s=i,o({stream:l})}Ql({response:e,status:t,statusText:r,headers:Object.fromEntries(hn(n,tu).entries()),stream:s.pipeThrough(new TextEncoderStream)})}function qr(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 Xo(){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=Xo();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=Xo(),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 d=new ReadableStream({start(m){c=m}}),p=new Set,v=new Map,b=new Map;let _=!1,I;function P(){_&&p.size===0&&(I!=null&&c.enqueue(I),c.close())}const C=new TransformStream({async transform(m,z){const R=m.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":{z.enqueue(m);break}case"file":{z.enqueue({type:"file",file:new Dy({data:m.data,mediaType:m.mediaType})});break}case"finish":{I={type:"finish",finishReason:m.finishReason.unified,rawFinishReason:m.finishReason.raw,usage:jl(m.usage),providerMetadata:m.providerMetadata};break}case"tool-approval-request":{const y=b.get(m.toolCallId);if(y==null){c.enqueue({type:"error",error:new ha({toolCallId:m.toolCallId,approvalId:m.approvalId})});break}z.enqueue({type:"tool-approval-request",approvalId:m.approvalId,toolCall:y});break}case"tool-call":{try{const y=await Jl({toolCall:m,tools:e,repairToolCall:i,system:a,messages:o});if(b.set(y.toolCallId,y),z.enqueue(y),y.invalid){c.enqueue({type:"tool-error",toolCallId:y.toolCallId,toolName:y.toolName,input:y.input,error:sa(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 Hl({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();p.add(D),ya({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(()=>{p.delete(D),P()})}}catch(y){c.enqueue({type:"error",error:y})}break}case"tool-result":{const y=m.toolName;m.isError?c.enqueue({type:"tool-error",toolCallId:m.toolCallId,toolName:y,input:v.get(m.toolCallId),providerExecuted:!0,error:m.result,dynamic:m.dynamic}):z.enqueue({type:"tool-result",toolCallId:m.toolCallId,toolName:y,input:v.get(m.toolCallId),output:m.result,providerExecuted:!0,dynamic:m.dynamic});break}default:{const y=R;throw new Error(`Unhandled chunk type: ${y}`)}}},flush(){_=!0,P()}});return new ReadableStream({async start(m){return Promise.all([t.pipeThrough(C).pipeTo(new WritableStream({write(z){m.enqueue(z)},close(){}})),d.pipeTo(new WritableStream({write(z){m.enqueue(z)},close(){m.close()}}))])}})}var ov=Or({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=Kl(1),experimental_output:c,output:d=c,experimental_telemetry:p,prepareStep:v,providerOptions:b,experimental_activeTools:_,activeTools:I=_,experimental_repairToolCall:P,experimental_transform:C,experimental_download:m,includeRawChunks:z=!1,onChunk:R,onError:y=({error:Oe})=>{console.error(Oe)},onFinish:O,onAbort:D,onStepFinish:F,experimental_context:se,_internal:{now:L=nv,generateId:X=ov,currentDate:Q=()=>new Date}={},...le}){return new lv({model:on(e),telemetry:p,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:d,providerOptions:b,prepareStep:v,includeRawChunks:z,onChunk:R,onError:y,onFinish:O,onAbort:D,onStepFinish:F,now:L,currentDate:Q,generateId:X,experimental_context:se,download:m})}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 d=JSON.stringify(c.partial);d!==o&&(s({controller:l,partialOutput:c.partial}),o=d)}}})}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:d,activeTools:p,repairToolCall:v,stopConditions:b,output:_,providerOptions:I,prepareStep:P,includeRawChunks:C,now:m,currentDate:z,generateId:R,onChunk:y,onError:O,onFinish:D,onAbort:F,onStepFinish:se,experimental_context:L,download:X}){this._totalUsage=new lr,this._finishReason=new lr,this._rawFinishReason=new lr,this._steps=new lr,this.outputSpecification=_,this.includeRawChunks=C,this.tools=u;let Q,le=[];const Oe=[];let Te,ct,Fe,zt={},$t=[];const Ce=[],Mt=new Map;let Ft,nt={},at={};const kr=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:$l(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,$t=N.warnings),N.type==="finish-step"){const U=await Hn({content:le,tools:u}),ae=new Wl({content:le,finishReason:N.finishReason,rawFinishReason:N.rawFinishReason,usage:N.usage,warnings:$t,request:zt,response:{...N.response,messages:[...Oe,...U]},providerMetadata:N.providerMetadata});await(se==null?void 0:se(ae)),ma({warnings:$t,provider:e.provider,model:e.modelId}),Ce.push(ae),Oe.push(...U),Q.resolve()}N.type==="finish"&&(Fe=N.totalUsage,Te=N.finishReason,ct=N.rawFinishReason)},async flush(pe){try{if(Ce.length===0){const B=new pl({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",ne=Fe??Dn();J._finishReason.resolve(fe),J._rawFinishReason.resolve(ct),J._totalUsage.resolve(ne),J._steps.resolve(Ce);const V=Ce[Ce.length-1];await(D==null?void 0:D({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})),Ft.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{Ft.end()}}}),dt=rv();this.addStream=dt.addStream,this.closeStream=dt.close;const tr=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 tr.read();if(ne){pe.close();return}if(o!=null&&o.aborted){fe();return}pe.enqueue(V)}catch(ne){Pt(ne)&&(o!=null&&o.aborted)?fe():pe.error(ne)}},cancel(pe){return dt.stream.cancel(pe)}});for(const pe of d)ot=ot.pipeThrough(pe({tools:u,stopStream(){dt.terminate()}}));this.baseStream=ot.pipeThrough(iv(_??sn())).pipeThrough(kr);const{maxRetries:Pr,retry:rr}=Gl({maxRetries:a,abortSignal:o}),St=Fl(t),Ze=Vn(n),Cr=Ml({model:e,telemetry:t,headers:r,settings:{...Ze,maxRetries:Pr}}),J=this;Ir({name:"ai.streamText",attributes:tt({telemetry:t,attributes:{...br({operationId:"ai.streamText",telemetry:t}),...Cr,"ai.prompt":{input:()=>JSON.stringify({system:s,prompt:i,messages:l})}}}),tracer:St,endWhenDone:!1,fn:async pe=>{Ft=pe;const fe=await zl({system:s,prompt:i,messages:l}),ne=fe.messages,V=[],{approvedToolApprovals:B,deniedToolApprovals:Ke}=Bl({messages:ne});if(Ke.length>0||B.length>0){const U=[...B,...Ke].filter(we=>we.toolCall.providerExecuted),ae=B.filter(we=>!we.toolCall.providerExecuted),W=Ke.filter(we=>!we.toolCall.providerExecuted),st=Ke.filter(we=>we.toolCall.providerExecuted);let ke;const pt=new ReadableStream({start(we){ke=we}});J.addStream(pt);try{for(const Ae of[...W,...st])ke==null||ke.enqueue({type:"tool-output-denied",toolCallId:Ae.toolCall.toolCallId,toolName:Ae.toolCall.toolName});const we=[];if(await Promise.all(ae.map(async Ae=>{const _e=await ya({toolCall:Ae.toolCall,tools:u,tracer:St,telemetry:t,messages:ne,abortSignal:o,experimental_context:L,onPreliminaryToolResult:At=>{ke==null||ke.enqueue(At)}});_e!=null&&(ke==null||ke.enqueue(_e),we.push(_e))})),U.length>0&&V.push({role:"tool",content:U.map(Ae=>({type:"tool-approval-response",approvalId:Ae.approvalResponse.approvalId,approved:Ae.approvalResponse.approved,reason:Ae.approvalResponse.reason,providerExecuted:!0}))}),we.length>0||W.length>0){const Ae=[];for(const _e of we)Ae.push({type:"tool-result",toolCallId:_e.toolCallId,toolName:_e.toolName,output:await fr({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)Ae.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:Ae})}}finally{ke==null||ke.close()}}Oe.push(...V);async function N({currentStep:U,responseMessages:ae,usage:W}){var st,ke,pt,we,Ae,_e;const At=J.includeRawChunks;Q=new lr;const ft=[...ne,...ae],$=await(P==null?void 0:P({model:e,steps:Ce,stepNumber:Ce.length,messages:ft,experimental_context:L})),Ee=on((st=$==null?void 0:$.model)!=null?st:e),Lt=await xl({prompt:{system:(ke=$==null?void 0:$.system)!=null?ke:fe.system,messages:(pt=$==null?void 0:$.messages)!=null?pt:ft},supportedUrls:await Ee.supportedUrls,download:X}),{toolChoice:it,tools:Ut}=await kl({tools:u,toolChoice:(we=$==null?void 0:$.toolChoice)!=null?we:c,activeTools:(Ae=$==null?void 0:$.activeTools)!=null?Ae:p});L=(_e=$==null?void 0:$.experimental_context)!=null?_e:L;const Dr=gn(I,$==null?void 0:$.providerOptions),{result:{stream:zr,response:nr,request:ar},doStreamSpan:lt,startTimestampMs:$r}=await rr(()=>Ir({name:"ai.streamText.doStream",attributes:tt({telemetry:t,attributes:{...br({operationId:"ai.streamText.doStream",telemetry:t}),...Cr,"ai.model.provider":Ee.provider,"ai.model.id":Ee.modelId,"ai.prompt.messages":{input:()=>Ul(Lt)},"ai.prompt.tools":{input:()=>Ut==null?void 0:Ut.map(M=>JSON.stringify(M))},"ai.prompt.toolChoice":{input:()=>it!=null?JSON.stringify(it):void 0},"gen_ai.system":Ee.provider,"gen_ai.request.model":Ee.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:St,endWhenDone:!1,fn:async M=>({startTimestampMs:m(),doStreamSpan:M,result:await Ee.doStream({...Ze,tools:Ut,toolChoice:it,responseFormat:await(_==null?void 0:_.responseFormat),prompt:Lt,providerOptions:Dr,abortSignal:o,headers:r,includeRawChunks:At})})})),Re=av({tools:u,generatorStream:zr,tracer:St,telemetry:t,system:s,messages:ft,repairToolCall:v,abortSignal:o,experimental_context:L,generateId:R}),gt=ar??{},ht=[],or=[];let mn;const yn={};let jt="other",vn,Ve=Dn(),wn,_a=!0,Xe={id:R(),timestamp:z(),modelId:e.modelId},Ta="";J.addStream(Re.pipeThrough(new TransformStream({async transform(M,xe){var sr,ir,Mr,Ne,qt;if(M.type==="stream-start"){mn=M.warnings;return}if(_a){const be=m()-$r;_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}),Ta+=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),ht.push(M);break}case"tool-result":{xe.enqueue(M),M.preliminary||or.push(M);break}case"tool-error":{xe.enqueue(M),or.push(M);break}case"response-metadata":{Xe={id:(sr=M.id)!=null?sr:Xe.id,timestamp:(ir=M.timestamp)!=null?ir:Xe.timestamp,modelId:(Mr=M.modelId)!=null?Mr:Xe.modelId};break}case"finish":{Ve=M.usage,jt=M.finishReason,vn=M.rawFinishReason,wn=M.providerMetadata;const be=m()-$r;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":{yn[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:(qt=M.dynamic)!=null?qt:(be==null?void 0:be.type)==="dynamic",title:be==null?void 0:be.title});break}case"tool-input-end":{delete yn[M.id],xe.enqueue(M);break}case"tool-input-delta":{const be=yn[M.id],Tn=u==null?void 0:u[be];(Tn==null?void 0:Tn.onInputDelta)!=null&&await Tn.onInputDelta({inputTextDelta:M.delta,toolCallId:M.id,messages:ft,abortSignal:o,experimental_context:L}),xe.enqueue(M);break}case"error":{xe.enqueue(M),jt="error";break}case"raw":{At&&xe.enqueue(M);break}default:{const be=_n;throw new Error(`Unknown chunk type: ${be}`)}}},async flush(M){const xe=ht.length>0?JSON.stringify(ht):void 0;try{lt.setAttributes(await tt({telemetry:t,attributes:{"ai.response.finishReason":jt,"ai.response.text":{output:()=>Ta},"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(wn),"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":[jt],"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:jt,rawFinishReason:vn,usage:Ve,providerMetadata:wn,response:{...Xe,headers:nr==null?void 0:nr.headers}});const sr=ql(W,Ve);await Q.promise;const ir=ht.filter(Ne=>Ne.providerExecuted!==!0),Mr=or.filter(Ne=>Ne.providerExecuted!==!0);for(const Ne of ht){if(Ne.providerExecuted!==!0)continue;const qt=u==null?void 0:u[Ne.toolName];(qt==null?void 0:qt.type)==="provider"&&qt.supportsDeferredResults&&(or.some(be=>be.type==="tool-result"&&be.toolCallId===Ne.toolCallId)||Mt.set(Ne.toolCallId,{toolName:Ne.toolName}))}for(const Ne of or)Ne.type==="tool-result"&&Mt.delete(Ne.toolCallId);if((ir.length>0&&Mr.length===ir.length||Mt.size>0)&&!await Xl({stopConditions:b,steps:Ce})){ae.push(...await Hn({content:Ce[Ce.length-1].content,tools:u}));try{await N({currentStep:U+1,responseMessages:ae,usage:sr})}catch(Ne){M.enqueue({type:"error",error:Ne}),J.closeStream()}}else M.enqueue({type:"finish",finishReason:jt,rawFinishReason:vn,totalUsage:sr}),J.closeStream()}})))}await N({currentStep:0,responseMessages:V,usage:Dn()})}}).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 qr(this.teeStream().pipeThrough(new TransformStream({transform({part:e},t){e.type==="text-delta"&&t.enqueue(e.text)}})))}get fullStream(){return qr(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 qr(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:sn()).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=Kt}={}){const u=t!=null?Hy({originalMessages:e,responseMessageId:t}):void 0,c=p=>{var v;const b=(v=this.tools)==null?void 0:v[p.toolName];return b==null?p.dynamic:(b==null?void 0:b.type)==="dynamic"?!0:void 0},d=this.fullStream.pipeThrough(new TransformStream({transform:async(p,v)=>{const b=n==null?void 0:n({part:p}),_=p.type;switch(_){case"text-start":{v.enqueue({type:"text-start",id:p.id,...p.providerMetadata!=null?{providerMetadata:p.providerMetadata}:{}});break}case"text-delta":{v.enqueue({type:"text-delta",id:p.id,delta:p.text,...p.providerMetadata!=null?{providerMetadata:p.providerMetadata}:{}});break}case"text-end":{v.enqueue({type:"text-end",id:p.id,...p.providerMetadata!=null?{providerMetadata:p.providerMetadata}:{}});break}case"reasoning-start":{v.enqueue({type:"reasoning-start",id:p.id,...p.providerMetadata!=null?{providerMetadata:p.providerMetadata}:{}});break}case"reasoning-delta":{a&&v.enqueue({type:"reasoning-delta",id:p.id,delta:p.text,...p.providerMetadata!=null?{providerMetadata:p.providerMetadata}:{}});break}case"reasoning-end":{v.enqueue({type:"reasoning-end",id:p.id,...p.providerMetadata!=null?{providerMetadata:p.providerMetadata}:{}});break}case"file":{v.enqueue({type:"file",mediaType:p.file.mediaType,url:`data:${p.file.mediaType};base64,${p.file.base64}`});break}case"source":{o&&p.sourceType==="url"&&v.enqueue({type:"source-url",sourceId:p.id,url:p.url,title:p.title,...p.providerMetadata!=null?{providerMetadata:p.providerMetadata}:{}}),o&&p.sourceType==="document"&&v.enqueue({type:"source-document",sourceId:p.id,mediaType:p.mediaType,title:p.title,filename:p.filename,...p.providerMetadata!=null?{providerMetadata:p.providerMetadata}:{}});break}case"tool-input-start":{const I=c(p);v.enqueue({type:"tool-input-start",toolCallId:p.id,toolName:p.toolName,...p.providerExecuted!=null?{providerExecuted:p.providerExecuted}:{},...I!=null?{dynamic:I}:{},...p.title!=null?{title:p.title}:{}});break}case"tool-input-delta":{v.enqueue({type:"tool-input-delta",toolCallId:p.id,inputTextDelta:p.delta});break}case"tool-call":{const I=c(p);p.invalid?v.enqueue({type:"tool-input-error",toolCallId:p.toolCallId,toolName:p.toolName,input:p.input,...p.providerExecuted!=null?{providerExecuted:p.providerExecuted}:{},...p.providerMetadata!=null?{providerMetadata:p.providerMetadata}:{},...I!=null?{dynamic:I}:{},errorText:l(p.error),...p.title!=null?{title:p.title}:{}}):v.enqueue({type:"tool-input-available",toolCallId:p.toolCallId,toolName:p.toolName,input:p.input,...p.providerExecuted!=null?{providerExecuted:p.providerExecuted}:{},...p.providerMetadata!=null?{providerMetadata:p.providerMetadata}:{},...I!=null?{dynamic:I}:{},...p.title!=null?{title:p.title}:{}});break}case"tool-approval-request":{v.enqueue({type:"tool-approval-request",approvalId:p.approvalId,toolCallId:p.toolCall.toolCallId});break}case"tool-result":{const I=c(p);v.enqueue({type:"tool-output-available",toolCallId:p.toolCallId,output:p.output,...p.providerExecuted!=null?{providerExecuted:p.providerExecuted}:{},...p.preliminary!=null?{preliminary:p.preliminary}:{},...I!=null?{dynamic:I}:{}});break}case"tool-error":{const I=c(p);v.enqueue({type:"tool-output-error",toolCallId:p.toolCallId,errorText:l(p.error),...p.providerExecuted!=null?{providerExecuted:p.providerExecuted}:{},...I!=null?{dynamic:I}:{}});break}case"tool-output-denied":{v.enqueue({type:"tool-output-denied",toolCallId:p.toolCallId});break}case"error":{v.enqueue({type:"error",errorText:l(p.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",...b!=null?{messageMetadata:b}:{},...u!=null?{messageId:u}:{}});break}case"finish":{i&&v.enqueue({type:"finish",finishReason:p.finishReason,...b!=null?{messageMetadata:b}:{}});break}case"abort":{v.enqueue(p);break}case"tool-input-end":break;case"raw":break;default:{const I=_;throw new Error(`Unknown chunk type: ${I}`)}}b!=null&&_!=="start"&&_!=="finish"&&v.enqueue({type:"message-metadata",messageMetadata:b})}}));return qr(Qy({stream:d,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})}};Or({prefix:"aiobj",size:24});Or({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
 
@@ -412,11 +412,11 @@ Format:
412
412
  - NEVER break the format.
413
413
  - NEVER place ANYTHING before '--START--'.
414
414
  - The output must always begin with '--START--' and end with '--END--'.
415
- `.trim();function ru(e=null){if(e)switch(e){case"TRANSLATE_CONTENT":return uv;case"UPDATE_CONTENT":return cv;default:return Qo}return Qo}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:ru(o),messages:c,temperature:this.temperature,onFinish:((d=this.options)==null?void 0:d.onFinish)??q.noop,onError:((v=this.options)==null?void 0:v.onError)??q.noop});return r&&p.pipeTextStreamToResponse(r),p}isConfigured(){return!0}}var Qe={exports:{}};const fv="16.6.1",gv={version:fv};var es;function nu(){if(es)return Qe.exports;es=1;const e=lu,t=uu,r=cu,n=is,o=gv.version,s=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function i(y){const O={};let D=y.toString();D=D.replace(/\r\n?/mg,`
415
+ `.trim();function ru(e=null){if(e)switch(e){case"TRANSLATE_CONTENT":return uv;case"UPDATE_CONTENT":return cv;default:return Qo}return Qo}const dv="google/gemini-2.5-flash";class pv{constructor(t){Ie(this,"model",dv);Ie(this,"temperature",.7);this.options=t,this.model=(t==null?void 0:t.model)??this.model}async handleRequest(t,r){var p,v;const{messages:n,image:a,initiator:o=null,model:s}=t,i=s||this.model,l=n.filter(b=>b.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,d=sv({model:i,system:ru(o),messages:c,temperature:this.temperature,onFinish:((p=this.options)==null?void 0:p.onFinish)??q.noop,onError:((v=this.options)==null?void 0:v.onError)??q.noop});return r&&d.pipeTextStreamToResponse(r),d}isConfigured(){return!0}}var Qe={exports:{}};const fv="16.6.1",gv={version:fv};var es;function nu(){if(es)return Qe.exports;es=1;const e=lu,t=uu,r=cu,n=is,o=gv.version,s=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function i(y){const O={};let D=y.toString();D=D.replace(/\r\n?/mg,`
416
416
  `);let F;for(;(F=s.exec(D))!=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,`
417
- `),L=L.replace(/\\r/g,"\r")),O[se]=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(","),se=F.length;let L;for(let X=0;X<se;X++)try{const Q=F[X].trim(),le=v(D,Q);L=x.decrypt(le.ciphertext,le.key);break}catch(Q){if(X+1>=se)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 se=D.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 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 _(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 se=process.env;return y&&y.processEnv!=null&&(se=y.processEnv),x.populate(se,F,y),{parsed:F}}function P(y){const O=t.resolve(process.cwd(),".env");let D="utf8";const F=!!(y&&y.debug),se=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=[_(y.path)];else{L=[];for(const Oe of y.path)L.push(_(Oe))}let X;const Q={};for(const Oe of L)try{const _e=x.parse(e.readFileSync(Oe,{encoding:D}));x.populate(Q,_e,y)}catch(_e){F&&c(`Failed to load ${Oe} ${_e.message}`),X=_e}let le=process.env;if(y&&y.processEnv!=null&&(le=y.processEnv),x.populate(le,Q,y),F||!se){const Oe=Object.keys(Q).length,_e=[];for(const ct of L)try{const Fe=t.relative(process.cwd(),ct);_e.push(Fe)}catch(Fe){F&&c(`Failed to load ${ct} ${Fe.message}`),X=Fe}p(`injecting env (${Oe}) from ${_e.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 m(y,O){const D=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",D,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 _e=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw _e.code="INVALID_DOTENV_KEY",_e}else if(Oe){const _e=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw _e.code="DECRYPTION_FAILED",_e}else throw X}}function z(y,O,D={}){const F=!!(D&&D.debug),se=!!(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)?(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 x={configDotenv:P,_configVault:I,_parseVault:l,config:C,decrypt:m,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 hv=nu();const mv=iu.getDefaultExportFromCjs(hv),yv=g.pgSequence("app_pages_metadata_id_seq",{startWith:"1",increment:"1",minValue:"1",maxValue:"9223372036854775807",cache:"1",cycle:!1}),vv=g.pgSequence("webhook_events_id_seq",{startWith:"1",increment:"1",minValue:"1",maxValue:"9223372036854775807",cache:"1",cycle:!1}),wv=g.pgTable("app_assets",{id:g.uuid().defaultRandom().primaryKey().notNull(),app:g.uuid(),name:g.text(),description:g.text(),url:g.text(),size:g.text(),folderId:g.text(),thumbnailUrl:g.text(),duration:g.numeric(),format:g.text(),width:g.numeric(),height:g.numeric(),createdBy:g.text(),createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),type:g.text(),updatedAt:g.timestamp({withTimezone:!0,mode:"string"})},e=>[g.foreignKey({columns:[e.app],foreignColumns:[Ae.id],name:"app_assets_app_fkey"})]),ge=g.pgTable("app_pages_online",{createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),slug:g.text().notNull(),lang:g.text().default("").notNull(),seo:g.jsonb().default({}),app:g.uuid().notNull(),id:g.uuid().primaryKey().notNull(),name:g.text().notNull(),primaryPage:g.uuid(),blocks:g.jsonb().default([]),currentEditor:g.text(),changes:g.jsonb(),partialBlocks:g.text(),links:g.text(),online:g.boolean().default(!0),pageType:g.text(),parent:g.uuid(),lastSaved:g.timestamp({withTimezone:!0,mode:"string"}),dynamic:g.boolean().default(!1),libRefId:g.uuid(),dynamicSlugCustom:g.text().default(""),metadata:g.jsonb().default({}),jsonld:g.jsonb().default({}),globalJsonLds:g.jsonb().default([]),designTokens:g.jsonb()},e=>[g.foreignKey({columns:[e.app],foreignColumns:[Ae.id],name:"app_pages_online_app_fkey"})]),Ae=g.pgTable("apps",{id:g.uuid().defaultRandom().primaryKey().notNull(),createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),name:g.text(),user:g.text(),settings:g.jsonb().default({}),theme:g.jsonb().default({}),fallbackLang:g.text().default("en"),languages:g.jsonb().default([]),changes:g.jsonb(),deletedAt:g.timestamp({withTimezone:!0,mode:"string"}),client:g.uuid(),designTokens:g.jsonb().default({})}),fr=g.pgTable("apps_online",{id:g.uuid().primaryKey().notNull(),createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),name:g.text(),user:g.text(),settings:g.jsonb().default({}),theme:g.jsonb().default({}),fallbackLang:g.text().default("en"),languages:g.jsonb().default([]),changes:g.jsonb(),apiKey:g.text(),deletedAt:g.timestamp({withTimezone:!0,mode:"string"}),client:g.uuid(),designTokens:g.jsonb().default({})}),K=g.pgTable("libraries",{id:g.uuid().defaultRandom().primaryKey().notNull(),createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),name:g.text(),app:g.uuid(),type:g.text(),status:g.text().default("active").notNull(),client:g.uuid()},e=>[g.foreignKey({columns:[e.app],foreignColumns:[Ae.id],name:"libraries_app_fkey"})]),_v=g.pgTable("app_form_submissions",{id:g.uuid().defaultRandom().primaryKey().notNull(),createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),app:g.uuid(),formData:g.json(),additionalData:g.json(),formName:g.text().default(""),pageUrl:g.text()},e=>[g.foreignKey({columns:[e.app],foreignColumns:[Ae.id],name:"app_form_submissions_app_fkey"})]),f=g.pgTable("app_pages",{createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),slug:g.text().notNull(),lang:g.text().default("").notNull(),seo:g.jsonb().default({}),app:g.uuid().notNull(),id:g.uuid().defaultRandom().primaryKey().notNull(),name:g.text().notNull(),primaryPage:g.uuid(),blocks:g.jsonb().default([]),currentEditor:g.text(),changes:g.jsonb(),online:g.boolean().default(!1),parent:g.uuid(),pageType:g.text(),lastSaved:g.timestamp({withTimezone:!0,mode:"string"}),dynamic:g.boolean().default(!1),libRefId:g.uuid(),dynamicSlugCustom:g.text().default(""),metadata:g.jsonb().default({}),jsonld:g.jsonb().default({}),globalJsonLds:g.jsonb().default([]),links:g.text(),partialBlocks:g.text(),designTokens:g.jsonb()},e=>[g.foreignKey({columns:[e.app],foreignColumns:[Ae.id],name:"app_pages_app_fkey"}),g.foreignKey({columns:[e.parent],foreignColumns:[e.id],name:"app_pages_parent_fkey"})]),Ie=g.pgTable("app_pages_revisions",{createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),slug:g.text().notNull(),lang:g.text().default("").notNull(),seo:g.jsonb().default({}),app:g.uuid().notNull(),id:g.uuid().notNull(),name:g.text().notNull(),primaryPage:g.uuid(),blocks:g.jsonb().default([]),currentEditor:g.text(),changes:g.jsonb(),partialBlocks:g.text(),links:g.text(),online:g.boolean().default(!0),pageType:g.text(),parent:g.uuid(),lastSaved:g.timestamp({withTimezone:!0,mode:"string"}),dynamic:g.boolean().default(!1),uid:g.uuid().defaultRandom().primaryKey().notNull(),type:g.text(),libRefId:g.uuid(),dynamicSlugCustom:g.text().default(""),metadata:g.jsonb().default({}),jsonld:g.jsonb().default({}),globalJsonLds:g.jsonb().default([]),designTokens:g.jsonb()},e=>[g.foreignKey({columns:[e.app],foreignColumns:[Ae.id],name:"app_pages_revisions_app_fkey"})]),cr=g.pgTable("app_users",{id:g.uuid().defaultRandom().primaryKey().notNull(),createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),user:g.text(),app:g.uuid(),role:g.text(),permissions:g.jsonb(),status:g.text().default("active").notNull()},e=>[g.foreignKey({columns:[e.app],foreignColumns:[Ae.id],name:"app_users_app_fkey"})]),te=g.pgTable("library_templates",{id:g.uuid().defaultRandom().primaryKey().notNull(),createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),user:g.text(),name:g.text(),description:g.text(),pageId:g.uuid(),pageType:g.text(),library:g.uuid(),preview:g.text()},e=>[g.foreignKey({columns:[e.library],foreignColumns:[K.id],name:"library_templates_library_fkey"})]),re=g.pgTable("library_items",{id:g.uuid().defaultRandom().primaryKey().notNull(),createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),library:g.uuid(),name:g.text(),description:g.text(),blocks:g.jsonb().default([]),preview:g.text(),group:g.text().default("general"),user:g.text(),html:g.text()},e=>[g.foreignKey({columns:[e.library],foreignColumns:[K.id],name:"library_items_library_fkey"})]),va=g.pgTable("ai_logs",{id:g.bigint({mode:"number"}).primaryKey().generatedByDefaultAsIdentity({name:"ai_logs_id_seq",startWith:1,increment:1,minValue:1,maxValue:9223372036854776e3,cache:1}),createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),model:g.text(),totalDuration:g.numeric(),error:g.text(),totalTokens:g.numeric(),tokenUsage:g.jsonb(),user:g.text(),client:g.uuid().defaultRandom(),cost:g.doublePrecision().default(h.sql`'0'`),prompt:g.text(),app:g.uuid()},e=>[g.foreignKey({columns:[e.app],foreignColumns:[Ae.id],name:"ai_logs_app_fkey"})]),au=Object.freeze(Object.defineProperty({__proto__:null,aiLogs:va,appAssets:wv,appFormSubmissions:_v,appPages:f,appPagesMetadataIdSeq:yv,appPagesOnline:ge,appPagesRevisions:Ie,appUsers:cr,apps:Ae,appsOnline:fr,libraries:K,libraryItems:re,libraryTemplates:te,webhookEventsIdSeq:vv},Symbol.toStringTag,{value:"Module"}));mv.config();let Sr=process.env.CHAIBUILDER_DATABASE_URL;if(!Sr)throw new Error("Database not configured. Please set CHAIBUILDER_DATABASE_URL environment variable.");const Tv=e=>e.trim().replace(/^"|"$/g,"");Sr=Tv(Sr);const bv=e=>e.startsWith("postgresql://")||e.startsWith("postgres://");if(!bv(Sr))throw new Error("Database connection string is invalid. Please check your CHAIBUILDER_DATABASE_URL environment variable.");const Ev=pu(Sr,{max:10}),S=du.drizzle(Ev,{schema:au});async function A(e){try{return{data:await e(),error:null}}catch(t){return{data:null,error:t}}}const Iv=e=>{var t;return((t=fu.AI_MODELS.find(r=>r.id===e))==null?void 0:t.multiplier)||1};async function Sv({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(va).values(l));u&&console.error("Error logging AI request error:",u)}async function Av({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)*Iv(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(va).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 w.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(h.and(h.eq(cr.app,t),h.eq(cr.user,r),h.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 w.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 Nv extends Z{getValidationSchema(){return w.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{Av({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{Sv({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.initiator||null};return{_streamingResponse:!0,_streamResult:await o.handleRequest(s)}}}class Ov extends Z{getValidationSchema(){return w.z.any()}async execute(){return await this.verifyAccess(),{access:!0}}}class xv extends Z{getValidationSchema(){return w.z.object({name:w.z.string().min(1),slug:w.z.string(),pageType:w.z.string(),parent:w.z.string().nullable().optional(),lang:w.z.string().optional(),primaryPage:w.z.string().nullable().optional(),dynamic:w.z.boolean().optional(),hasSlug:w.z.boolean().optional(),template:w.z.string().optional(),seo:w.z.record(w.z.string(),w.z.any()).optional(),jsonLD:w.z.record(w.z.string(),w.z.any()).optional(),dynamicSlugCustom:w.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:{},online:!1,currentEditor:null,changes:null,libRefId:null,lastSaved:null},{data:s,error:i}=await A(()=>S.insert(f).values(o).returning({id:f.id,name:f.name,slug:f.slug,lang:f.lang,pageType:f.pageType,parent:f.parent,online:f.online,primaryPage:f.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:q.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:h.and(h.eq(f.slug,t),h.eq(f.pageType,r),h.eq(f.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,h.eq(te.library,K.id)).where(h.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:h.eq(f.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"&&!q.isEmpty(p.globalBlock)?{...p,_type:"PartialBlock",partialBlockId:p.globalBlock}:p),!(s.app===r)){const p=s.name||"",d=u.filter(E=>E._type==="PartialBlock"&&!q.isEmpty(E.partialBlockId)),v=await Promise.all(d.map(({partialBlockId:E})=>this.copyPartialBlockFromTemplate(E,p,r)));u=u.map(E=>{const _=v.find(I=>(I==null?void 0:I.libRefId)===E.partialBlockId);return _&&(E._name=`${p} - ${E._name}`,E.partialBlockId=_.id),E})}return u}async copyPartialBlockFromTemplate(t,r,n){const{data:a,error:o}=await A(()=>S.query.appPages.findFirst({where:h.eq(f.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(f).values(s).returning({id:f.id,libRefId:f.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 Rv extends Z{getValidationSchema(){return w.z.object({id:w.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(h.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 Ar{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:f.id,name:f.name,slug:f.slug,pageType:f.pageType,primaryPage:f.primaryPage,parent:f.parent,lang:f.lang,dynamic:f.dynamic}).from(f).where(h.eq(f.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(`
417
+ `),L=L.replace(/\\r/g,"\r")),O[se]=L}return O}function l(y){y=y||{};const O=b(y);y.path=O;const D=R.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=p(y).split(","),se=F.length;let L;for(let X=0;X<se;X++)try{const Q=F[X].trim(),le=v(D,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 d(y){console.log(`[dotenv@${o}] ${y}`)}function p(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 se=D.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 b(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 _(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)&&d("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 D="utf8";const F=!!(y&&y.debug),se=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=[_(y.path)];else{L=[];for(const Oe of y.path)L.push(_(Oe))}let X;const Q={};for(const Oe of L)try{const Te=R.parse(e.readFileSync(Oe,{encoding:D}));R.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),R.populate(le,Q,y),F||!se){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}d(`injecting env (${Oe}) from ${Te.join(",")}`)}return X?{parsed:Q,error:X}:{parsed:Q}}function C(y){if(p(y).length===0)return R.configDotenv(y);const O=b(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 m(y,O){const D=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",D,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 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),se=!!(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)?(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:m,parse:i,populate:z};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 hv=nu();const mv=iu.getDefaultExportFromCjs(hv),yv=g.pgSequence("app_pages_metadata_id_seq",{startWith:"1",increment:"1",minValue:"1",maxValue:"9223372036854775807",cache:"1",cycle:!1}),vv=g.pgSequence("webhook_events_id_seq",{startWith:"1",increment:"1",minValue:"1",maxValue:"9223372036854775807",cache:"1",cycle:!1}),wv=g.pgTable("app_assets",{id:g.uuid().defaultRandom().primaryKey().notNull(),app:g.uuid(),name:g.text(),description:g.text(),url:g.text(),size:g.text(),folderId:g.text(),thumbnailUrl:g.text(),duration:g.numeric(),format:g.text(),width:g.numeric(),height:g.numeric(),createdBy:g.text(),createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),type:g.text(),updatedAt:g.timestamp({withTimezone:!0,mode:"string"})},e=>[g.foreignKey({columns:[e.app],foreignColumns:[ge.id],name:"app_assets_app_fkey"})]),he=g.pgTable("app_pages_online",{createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),slug:g.text().notNull(),lang:g.text().default("").notNull(),seo:g.jsonb().default({}),app:g.uuid().notNull(),id:g.uuid().primaryKey().notNull(),name:g.text().notNull(),primaryPage:g.uuid(),blocks:g.jsonb().default([]),currentEditor:g.text(),changes:g.jsonb(),partialBlocks:g.text(),links:g.text(),online:g.boolean().default(!0),pageType:g.text(),parent:g.uuid(),lastSaved:g.timestamp({withTimezone:!0,mode:"string"}),dynamic:g.boolean().default(!1),libRefId:g.uuid(),dynamicSlugCustom:g.text().default(""),metadata:g.jsonb().default({}),jsonld:g.jsonb().default({}),globalJsonLds:g.jsonb().default([]),designTokens:g.jsonb()},e=>[g.foreignKey({columns:[e.app],foreignColumns:[ge.id],name:"app_pages_online_app_fkey"})]),ge=g.pgTable("apps",{id:g.uuid().defaultRandom().primaryKey().notNull(),createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),name:g.text(),user:g.text(),settings:g.jsonb().default({}),theme:g.jsonb().default({}),fallbackLang:g.text().default("en"),languages:g.jsonb().default([]),changes:g.jsonb(),deletedAt:g.timestamp({withTimezone:!0,mode:"string"}),client:g.uuid(),designTokens:g.jsonb().default({})}),mt=g.pgTable("apps_online",{id:g.uuid().primaryKey().notNull(),createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),name:g.text(),user:g.text(),settings:g.jsonb().default({}),theme:g.jsonb().default({}),fallbackLang:g.text().default("en"),languages:g.jsonb().default([]),changes:g.jsonb(),apiKey:g.text(),deletedAt:g.timestamp({withTimezone:!0,mode:"string"}),client:g.uuid(),designTokens:g.jsonb().default({})}),K=g.pgTable("libraries",{id:g.uuid().defaultRandom().primaryKey().notNull(),createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),name:g.text(),app:g.uuid(),type:g.text(),status:g.text().default("active").notNull(),client:g.uuid()},e=>[g.foreignKey({columns:[e.app],foreignColumns:[ge.id],name:"libraries_app_fkey"})]),_v=g.pgTable("app_form_submissions",{id:g.uuid().defaultRandom().primaryKey().notNull(),createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),app:g.uuid(),formData:g.json(),additionalData:g.json(),formName:g.text().default(""),pageUrl:g.text()},e=>[g.foreignKey({columns:[e.app],foreignColumns:[ge.id],name:"app_form_submissions_app_fkey"})]),f=g.pgTable("app_pages",{createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),slug:g.text().notNull(),lang:g.text().default("").notNull(),seo:g.jsonb().default({}),app:g.uuid().notNull(),id:g.uuid().defaultRandom().primaryKey().notNull(),name:g.text().notNull(),primaryPage:g.uuid(),blocks:g.jsonb().default([]),currentEditor:g.text(),changes:g.jsonb(),online:g.boolean().default(!1),parent:g.uuid(),pageType:g.text(),lastSaved:g.timestamp({withTimezone:!0,mode:"string"}),dynamic:g.boolean().default(!1),libRefId:g.uuid(),dynamicSlugCustom:g.text().default(""),metadata:g.jsonb().default({}),jsonld:g.jsonb().default({}),globalJsonLds:g.jsonb().default([]),links:g.text(),partialBlocks:g.text(),designTokens:g.jsonb()},e=>[g.foreignKey({columns:[e.app],foreignColumns:[ge.id],name:"app_pages_app_fkey"}),g.foreignKey({columns:[e.parent],foreignColumns:[e.id],name:"app_pages_parent_fkey"})]),Se=g.pgTable("app_pages_revisions",{createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),slug:g.text().notNull(),lang:g.text().default("").notNull(),seo:g.jsonb().default({}),app:g.uuid().notNull(),id:g.uuid().notNull(),name:g.text().notNull(),primaryPage:g.uuid(),blocks:g.jsonb().default([]),currentEditor:g.text(),changes:g.jsonb(),partialBlocks:g.text(),links:g.text(),online:g.boolean().default(!0),pageType:g.text(),parent:g.uuid(),lastSaved:g.timestamp({withTimezone:!0,mode:"string"}),dynamic:g.boolean().default(!1),uid:g.uuid().defaultRandom().primaryKey().notNull(),type:g.text(),libRefId:g.uuid(),dynamicSlugCustom:g.text().default(""),metadata:g.jsonb().default({}),jsonld:g.jsonb().default({}),globalJsonLds:g.jsonb().default([]),designTokens:g.jsonb()},e=>[g.foreignKey({columns:[e.app],foreignColumns:[ge.id],name:"app_pages_revisions_app_fkey"})]),dr=g.pgTable("app_users",{id:g.uuid().defaultRandom().primaryKey().notNull(),createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),user:g.text(),app:g.uuid(),role:g.text(),permissions:g.jsonb(),status:g.text().default("active").notNull()},e=>[g.foreignKey({columns:[e.app],foreignColumns:[ge.id],name:"app_users_app_fkey"})]),te=g.pgTable("library_templates",{id:g.uuid().defaultRandom().primaryKey().notNull(),createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),user:g.text(),name:g.text(),description:g.text(),pageId:g.uuid(),pageType:g.text(),library:g.uuid(),preview:g.text()},e=>[g.foreignKey({columns:[e.library],foreignColumns:[K.id],name:"library_templates_library_fkey"})]),re=g.pgTable("library_items",{id:g.uuid().defaultRandom().primaryKey().notNull(),createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),library:g.uuid(),name:g.text(),description:g.text(),blocks:g.jsonb().default([]),preview:g.text(),group:g.text().default("general"),user:g.text(),html:g.text()},e=>[g.foreignKey({columns:[e.library],foreignColumns:[K.id],name:"library_items_library_fkey"})]),va=g.pgTable("ai_logs",{id:g.bigint({mode:"number"}).primaryKey().generatedByDefaultAsIdentity({name:"ai_logs_id_seq",startWith:1,increment:1,minValue:1,maxValue:9223372036854776e3,cache:1}),createdAt:g.timestamp({withTimezone:!0,mode:"string"}).defaultNow().notNull(),model:g.text(),totalDuration:g.numeric(),error:g.text(),totalTokens:g.numeric(),tokenUsage:g.jsonb(),user:g.text(),client:g.uuid().defaultRandom(),cost:g.doublePrecision().default(h.sql`'0'`),prompt:g.text(),app:g.uuid()},e=>[g.foreignKey({columns:[e.app],foreignColumns:[ge.id],name:"ai_logs_app_fkey"})]),au=Object.freeze(Object.defineProperty({__proto__:null,aiLogs:va,appAssets:wv,appFormSubmissions:_v,appPages:f,appPagesMetadataIdSeq:yv,appPagesOnline:he,appPagesRevisions:Se,appUsers:dr,apps:ge,appsOnline:mt,libraries:K,libraryItems:re,libraryTemplates:te,webhookEventsIdSeq:vv},Symbol.toStringTag,{value:"Module"}));mv.config();let Sr=process.env.CHAIBUILDER_DATABASE_URL;if(!Sr)throw new Error("Database not configured. Please set CHAIBUILDER_DATABASE_URL environment variable.");const Tv=e=>e.trim().replace(/^"|"$/g,"");Sr=Tv(Sr);const Ev=e=>e.startsWith("postgresql://")||e.startsWith("postgres://");if(!Ev(Sr))throw new Error("Database connection string is invalid. Please check your CHAIBUILDER_DATABASE_URL environment variable.");const bv=pu(Sr,{max:10}),S=du.drizzle(bv,{schema:au});async function A(e){try{return{data:await e(),error:null}}catch(t){return{data:null,error:t}}}const Iv=e=>{var t;return((t=fu.AI_MODELS.find(r=>r.id===e))==null?void 0:t.multiplier)||1};async function Sv({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(va).values(l));u&&console.error("Error logging AI request error:",u)}async function Av({userId:e,startTime:t,arg:r,prompt:n,model:a,appId:o}){var p,v,b;const s=r==null?void 0:r.totalUsage,i=(v=(p=r==null?void 0:r.providerMetadata)==null?void 0:p.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)*Iv(a))),tokenUsage:s,cost:i,prompt:n,user:e,client:((b=process==null?void 0:process.env)==null?void 0:b.CHAIBUILDER_CLIENT_ID)||null,app:o},{error:d}=await A(()=>S.insert(va).values(c));d&&console.error("Error logging AI request:",d)}class T 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(){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 w.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 T("Context not set","CONTEXT_NOT_SET",500);const{appId:t,userId:r}=this.context;if(!r)throw new T("User ID not found in context","UNAUTHORIZED",401);const{data:n,error:a}=await A(()=>S.select().from(dr).where(h.and(h.eq(dr.app,t),h.eq(dr.user,r),h.eq(dr.status,"active"))));if(a)throw new T("Error checking user access","ERROR_CHECKING_USER_ACCESS",500,a);if(!n||n.length===0)throw new T("User does not have access to this app","UNAUTHORIZED",401)}handleError(t){if(t instanceof T)throw t;if(t instanceof w.z.ZodError){const r=t.issues.map(n=>`${n.path.join(".")}: ${n.message}`).join(", ");throw new T(`Validation failed: ${r}`,"VALIDATION_ERROR")}else{const r=t instanceof Error?t.message:"Unknown error";throw new T(r,"ACTION_ERROR")}}}class Nv extends Z{getValidationSchema(){return w.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{Av({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(d){console.error("Error logging AI request:",d)}},onError:l=>{var u,c;try{Sv({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(d){console.error("Error logging AI request error:",d)}}}),s={messages:t.messages||[],image:t.image,model:t.model,initiator:t.initiator||null};return{_streamingResponse:!0,_streamResult:await o.handleRequest(s)}}}class Ov extends Z{getValidationSchema(){return w.z.any()}async execute(){return await this.verifyAccess(),{access:!0}}}class Rv extends Z{getValidationSchema(){return w.z.object({name:w.z.string().min(1),slug:w.z.string(),pageType:w.z.string(),parent:w.z.string().nullable().optional(),lang:w.z.string().optional(),primaryPage:w.z.string().nullable().optional(),dynamic:w.z.boolean().optional(),hasSlug:w.z.boolean().optional(),template:w.z.string().optional(),seo:w.z.record(w.z.string(),w.z.any()).optional(),jsonLD:w.z.record(w.z.string(),w.z.any()).optional(),dynamicSlugCustom:w.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 T("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 T("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:{},online:!1,currentEditor:null,changes:null,libRefId:null,lastSaved:null},{data:s,error:i}=await A(()=>S.insert(f).values(o).returning({id:f.id,name:f.name,slug:f.slug,lang:f.lang,pageType:f.pageType,parent:f.parent,online:f.online,primaryPage:f.primaryPage}));if(i)throw new T("Failed to create page","ERROR_CREATING_PAGE",500,i);if(!s||s.length===0)throw new T("Failed to create page","INSERT_FAILED");const l=s[0];return{page:q.omit(l.primaryPage?{...l,id:l.primaryPage}:l,["primaryPage"])}}async doesSlugExist(t,r){if(!this.context)throw new T("Context not set","CONTEXT_NOT_SET");const{appId:n}=this.context,{data:a,error:o}=await A(()=>S.query.appPages.findFirst({where:h.and(h.eq(f.slug,t),h.eq(f.pageType,r),h.eq(f.app,n)),columns:{id:!0}}));if(o)throw new T(`${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,h.eq(te.library,K.id)).where(h.eq(te.id,t)).limit(1).then(d=>d[0]));if(a)throw new T(`Failed to fetch template: ${a.message||"Unknown database error"}`,"ERROR_GETTING_TEMPLATE_BLOCKS",500,a);if(!n||!n.template||!n.library)throw new T(`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:h.eq(f.id,o.pageId),columns:{blocks:!0}}));if(l)throw new T(`Failed to fetch template blocks: ${l.message||"Unknown database error"}`,"ERROR_GETTING_TEMPLATE_BLOCKS",500,l);if(!i)throw new T(`Template page not found with ID: ${o.pageId}`,"TEMPLATE_PAGE_NOT_FOUND");let u=i.blocks||[];if(u=u.map(d=>d._type==="GlobalBlock"&&!q.isEmpty(d.globalBlock)?{...d,_type:"PartialBlock",partialBlockId:d.globalBlock}:d),!(s.app===r)){const d=s.name||"",p=u.filter(b=>b._type==="PartialBlock"&&!q.isEmpty(b.partialBlockId)),v=await Promise.all(p.map(({partialBlockId:b})=>this.copyPartialBlockFromTemplate(b,d,r)));u=u.map(b=>{const _=v.find(I=>(I==null?void 0:I.libRefId)===b.partialBlockId);return _&&(b._name=`${d} - ${b._name}`,b.partialBlockId=_.id),b})}return u}async copyPartialBlockFromTemplate(t,r,n){const{data:a,error:o}=await A(()=>S.query.appPages.findFirst({where:h.eq(f.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(f).values(s).returning({id:f.id,libRefId:f.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 xv extends Z{getValidationSchema(){return w.z.object({id:w.z.string().min(1)})}async execute(t){if(await this.verifyAccess(),!this.context)throw new T("Context not set","CONTEXT_NOT_SET");const{id:r}=t,{error:n}=await A(()=>S.delete(re).where(h.eq(re.id,r)));if(n)throw new T("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 Ar{constructor(t,r=!1){Ie(this,"appId");Ie(this,"enableLogging");this.appId=t,this.enableLogging=r}async getPagesTree(){const{data:t,error:r}=await A(()=>S.select({id:f.id,name:f.name,slug:f.slug,pageType:f.pageType,primaryPage:f.primaryPage,parent:f.parent,lang:f.lang,dynamic:f.dynamic}).from(f).where(h.eq(f.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(`
418
418
  === PRIMARY LANGUAGE PAGES TREE ===`),console.log(JSON.stringify(o,null,2)));const s=this.buildLanguageTree(a,o);return this.enableLogging&&(console.log(`
419
- === 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 kv extends Z{constructor(){super(...arguments);Ee(this,"appId","");Ee(this,"userId","");Ee(this,"pageTreeBuilder")}getValidationSchema(){return w.z.object({id:w.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 Ar(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(h.inArray(te.pageId,n)));if(a)throw ie("DELETE_FAILED",a);const{error:o}=await A(()=>S.delete(Ie).where(h.inArray(Ie.id,n)));if(o)throw ie("DELETE_FAILED",o);const{error:s}=await A(()=>S.delete(f).where(h.inArray(f.id,n)));if(s)throw ie("DELETE_FAILED",s);const{error:i}=await A(()=>S.delete(ge).where(h.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:f.currentEditor}).from(f).where(h.and(h.eq(f.id,r),h.eq(f.app,this.appId))).limit(1));return a||!n||n.length===0?null:((o=n[0])==null?void 0:o.currentEditor)||null}}class Pv extends Z{getValidationSchema(){return w.z.object({revisionId:w.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(h.and(h.eq(Ie.uid,t.revisionId),h.eq(Ie.app,r))));if(n)throw new b("Failed to delete page revision","DELETE_REVISION_ERROR");return{success:!0}}}class Cv extends Z{getValidationSchema(){return w.z.object({pageId:w.z.string().nonempty(),name:w.z.string().nonempty(),slug:w.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:h.and(h.eq(f.id,t.pageId),h.eq(f.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(f).values(o).returning({id:f.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:h.and(h.eq(f.slug,t),h.eq(f.app,r)),columns:{id:!0}}));if(a)throw new b(`${a.message}`,"SLUG_CHECK_FAILED");return!!n}}var ts={},zn,rs;function Dv(){if(rs)return zn;rs=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 $n,ns;function zv(){if(ns)return $n;ns=1;const e=/^dotenv_config_(encoding|path|quiet|debug|override|DOTENV_KEY)=(.+)$/;return $n=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},$n}var as;function $v(){return as||(as=1,(function(){nu().config(Object.assign({},Dv(),zv()(process.argv)))})()),ts}$v();const os="anthropic/claude-haiku-4.5";class Mv extends Z{getValidationSchema(){return w.z.object({prompt:w.z.string().min(1,"Prompt is required"),context:w.z.string().optional(),image:w.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.
419
+ === 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(p=>p.lang===l);if(!c)return null;const d={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(p=>{const v=a(p,l);v&&d.children.push(v)}),d},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 kv extends Z{constructor(){super(...arguments);Ie(this,"appId","");Ie(this,"userId","");Ie(this,"pageTreeBuilder")}getValidationSchema(){return w.z.object({id:w.z.string().min(1,"Page ID is required")})}async execute(r){if(await this.verifyAccess(),!this.context)throw new T("Context not set","CONTEXT_NOT_SET");this.appId=this.context.appId,this.userId=this.context.userId||"";try{return this.pageTreeBuilder=new Ar(this.appId),await this.deletePage(r.id)}catch(n){if(n instanceof T)throw n;const a=n instanceof Error?n.message:"Failed to delete page";throw new T(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(h.inArray(te.pageId,n)));if(a)throw ie("DELETE_FAILED",a);const{error:o}=await A(()=>S.delete(Se).where(h.inArray(Se.id,n)));if(o)throw ie("DELETE_FAILED",o);const{error:s}=await A(()=>S.delete(f).where(h.inArray(f.id,n)));if(s)throw ie("DELETE_FAILED",s);const{error:i}=await A(()=>S.delete(he).where(h.inArray(he.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:f.currentEditor}).from(f).where(h.and(h.eq(f.id,r),h.eq(f.app,this.appId))).limit(1));return a||!n||n.length===0?null:((o=n[0])==null?void 0:o.currentEditor)||null}}class Pv extends Z{getValidationSchema(){return w.z.object({revisionId:w.z.string().nonempty("Revision ID is required")})}async execute(t){if(await this.verifyAccess(),!this.context)throw new T("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context,{error:n}=await A(()=>S.delete(Se).where(h.and(h.eq(Se.uid,t.revisionId),h.eq(Se.app,r))));if(n)throw new T("Failed to delete page revision","DELETE_REVISION_ERROR");return{success:!0}}}class Cv extends Z{getValidationSchema(){return w.z.object({pageId:w.z.string().nonempty(),name:w.z.string().nonempty(),slug:w.z.string().optional()})}async execute(t){if(await this.verifyAccess(),!this.context)throw new T("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context;if(t.slug&&await this.doesSlugExist(t.slug))throw new T("Slug already exists","SLUG_EXISTS");const{data:n,error:a}=await A(()=>S.query.appPages.findFirst({where:h.and(h.eq(f.id,t.pageId),h.eq(f.app,r))}));if(a)throw a;if(!n)throw new T("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(f).values(o).returning({id:f.id});if(!s)throw new T("Failed to create duplicate page","INSERT_FAILED");return{id:s.id}}async doesSlugExist(t){if(!this.context)throw new T("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context,{data:n,error:a}=await A(()=>S.query.appPages.findFirst({where:h.and(h.eq(f.slug,t),h.eq(f.app,r)),columns:{id:!0}}));if(a)throw new T(`${a.message}`,"SLUG_CHECK_FAILED");return!!n}}var ts={},zn,rs;function Dv(){if(rs)return zn;rs=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 $n,ns;function zv(){if(ns)return $n;ns=1;const e=/^dotenv_config_(encoding|path|quiet|debug|override|DOTENV_KEY)=(.+)$/;return $n=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},$n}var as;function $v(){return as||(as=1,(function(){nu().config(Object.assign({},Dv(),zv()(process.argv)))})()),ts}$v();const os="anthropic/claude-haiku-4.5";class Mv extends Z{getValidationSchema(){return w.z.object({prompt:w.z.string().min(1,"Prompt is required"),context:w.z.string().optional(),image:w.z.string().optional()})}async execute(t){if(await this.verifyAccess(),!this.context)throw new T("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.
420
420
 
421
421
  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.
422
422
 
@@ -467,7 +467,7 @@ IMAGE USAGE RULES:
467
467
  Example: \`<img src="https://domain/hero/1200/600" alt="Hero image" width="1200" height="600">\`
468
468
  The final output should be clean, semantic HTML that works across all devices and screen sizes.
469
469
 
470
- ${t.context?`Additional Context: ${t.context}`:""}`;let a=(t.image?await Jn({model:os,system:r,messages:[{role:"user",content:[{type:"text",text:t.prompt},{type:"image",image:t.image}]}],temperature:.7}):await Jn({model:os,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 Fv="anthropic/claude-haiku-4.5",ss={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 Lv extends Z{getValidationSchema(){return w.z.object({pageContext:w.z.string(),dynamic:w.z.boolean(),pageContent:w.z.string(),field:w.z.enum(["title","description","ogTitle","ogDescription","searchTitle","searchDescription","jsonLD"]),lang:w.z.string().nonempty(),keyword:w.z.string().optional()})}async execute(t){if(await this.verifyAccess(),!this.context)throw new b("Context not set","CONTEXT_NOT_SET");return{field:(await Jn({model:Fv,system:`You are a SEO expert. Follow the instructions carefully.
470
+ ${t.context?`Additional Context: ${t.context}`:""}`;let a=(t.image?await Jn({model:os,system:r,messages:[{role:"user",content:[{type:"text",text:t.prompt},{type:"image",image:t.image}]}],temperature:.7}):await Jn({model:os,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 Fv="anthropic/claude-haiku-4.5",ss={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 Lv extends Z{getValidationSchema(){return w.z.object({pageContext:w.z.string(),dynamic:w.z.boolean(),pageContent:w.z.string(),field:w.z.enum(["title","description","ogTitle","ogDescription","searchTitle","searchDescription","jsonLD"]),lang:w.z.string().nonempty(),keyword:w.z.string().optional()})}async execute(t){if(await this.verifyAccess(),!this.context)throw new T("Context not set","CONTEXT_NOT_SET");return{field:(await Jn({model:Fv,system:`You are a SEO expert. Follow the instructions carefully.
471
471
  Return plain string values except for json ld. For JSONLD, remove \`\`\`json\`\`\` and \`\`\`\`\` and return only valid JSON.
472
472
  Instructions: ${ss[t.field]}
473
473
  ${t.keyword?`Optimize the generated content for "${t.keyword}" keyword(s)`:""}
@@ -478,4 +478,4 @@ ${t.context?`Additional Context: ${t.context}`:""}`;let a=(t.image?await Jn({mod
478
478
  Page Context: ${t.pageContext}
479
479
  Page Content: ${t.pageContent}
480
480
  Dynamic: ${t.dynamic}
481
- Language: ${t.lang}`})).text}}}class Uv extends Z{getValidationSchema(){return w.z.object({block:w.z.any(),pageProps:w.z.any().optional().default({}),lang:w.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||!q.isFunction(i.dataProvider)?{}:await i.dataProvider({block:n,pageProps:a,lang:o,draft:!0,inBuilder:!0})??{}}catch(n){return this.handleError(n)}}}class jv extends Z{getValidationSchema(){return w.z.object({lang:w.z.string(),pageType:w.z.string().optional(),pageProps:w.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 qv extends Z{constructor(){super(...arguments);Ee(this,"appId","")}getValidationSchema(){return w.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:f.id,slug:f.slug,name:f.name,pageType:f.pageType,lang:f.lang,changes:f.changes,primaryPage:f.primaryPage,online:f.online,currentEditor:f.currentEditor}).from(f).where(h.and(h.eq(f.app,this.appId),h.isNotNull(f.changes))));if(n)throw new b("Error getting changed pages","ERROR_GETTING_CHANGES");const{data:a,error:o}=await A(()=>S.select({id:f.id,slug:f.slug,name:f.name,pageType:f.pageType,lang:f.lang,changes:f.changes,primaryPage:f.primaryPage,online:f.online}).from(f).where(h.and(h.eq(f.app,this.appId),h.isNull(f.currentEditor),h.eq(f.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(h.and(h.eq(Ae.id,this.appId),h.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 Zv extends Z{getValidationSchema(){return w.z.object({})}async execute(){try{return ut.getChaiCollections().map(r=>q.omit(r,"fetch"))}catch(t){return this.handleError(t)}}}class Gv extends Z{getValidationSchema(){return w.z.object({versions:w.z.object({version1:w.z.object({type:w.z.enum(["draft","revision","live"]),id:w.z.string()}),version2:w.z.object({type:w.z.enum(["draft","revision","live"]),id:w.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:h.eq(f.id,r),columns:{blocks:!0,seo:!0}})));break;case"live":({data:n,error:a}=await A(()=>S.query.appPagesOnline.findFirst({where:h.eq(ge.id,r),columns:{blocks:!0,seo:!0}})));break;case"revision":({data:n,error:a}=await A(()=>S.query.appPagesRevisions.findFirst({where:h.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 Bv extends Z{getValidationSchema(){return w.z.object({id:w.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=f,{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(h.and(h.eq(a.app,r),h.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(h.and(h.eq(a.app,r),h.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 Vv extends Z{getValidationSchema(){return w.z.object({pageType:w.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 Hv extends Z{getValidationSchema(){return w.z.object({id:w.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:f.id,name:f.name,slug:f.slug,lang:f.lang,primaryPage:f.primaryPage,pageType:f.pageType,seo:f.seo,currentEditor:f.currentEditor,online:f.online,parent:f.parent,metadata:f.metadata,dynamic:f.dynamic,dynamicSlugCustom:f.dynamicSlugCustom}).from(f).where(h.and(h.eq(f.app,r),h.or(h.eq(f.primaryPage,n),h.eq(f.id,n)))));if(o)throw ie("LANGUAGE_PAGES_ERROR",o);return a.map(s=>q.omit(s,["app"]))}}class Jv extends Z{getValidationSchema(){return w.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(h.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(h.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 Yv extends Z{getValidationSchema(){return w.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(h.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(h.eq(re.library,n.id)));if(o)throw new b("Failed to fetch library groups","GET_LIBRARY_GROUPS_FAILED",500,o);const s=q.map(a,"group").filter(i=>i!=null);return q.map(q.uniq(s),i=>({id:i,name:i}))}}class Wv extends Z{getValidationSchema(){return w.z.object({id:w.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,h.eq(re.library,K.id)).where(h.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?q.set(i,"0._libBlockId",s.id):q.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 Kv extends Z{getValidationSchema(){return w.z.object({id:w.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(h.eq(re.library,r)));if(a)throw new b("Failed to fetch library items","GET_LIBRARY_ITEMS_FAILED",500,a);return n||[]}}class Xv extends Z{getValidationSchema(){return w.z.object({pageId:w.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:f.currentEditor,createdAt:f.createdAt}).from(f).where(h.and(h.eq(f.app,this.context.appId),h.eq(f.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(h.and(h.eq(Ie.app,this.context.appId),h.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 q.orderBy(l,["createdAt"],["desc"])}}class Qv extends Z{getValidationSchema(){return w.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,...q.isFunction(r.defaultSeo)?{defaultSeo:r.defaultSeo()}:{},...q.isFunction(r.defaultJSONLD)?{defaultJSONLD:r.defaultJSONLD()}:{}})))}catch(t){return this.handleError(t)}}}class ew extends Z{getValidationSchema(){return w.z.object({id:w.z.string().nonempty(),type:w.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:h.and(h.eq(f.id,t.id),h.eq(f.lang,t.lang??""))})));break;case"live":({data:r,error:n}=await A(()=>S.query.appPagesOnline.findFirst({where:h.and(h.eq(ge.id,t.id),h.eq(ge.lang,t.lang??""))})));break;case"revision":({data:r,error:n}=await A(()=>S.query.appPagesRevisions.findFirst({where:h.and(h.eq(Ie.uid,t.id),h.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?f:ge,o=t.filter(({_type:c})=>c==="GlobalBlock"||c==="PartialBlock");if(o.length===0)return t;const s=o.map(c=>q.get(c,"partialBlockId",q.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(h.and(h.eq(a.app,n),h.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=q.get(p,"partialBlockId",q.get(p,"globalBlock",""));if(d==="")continue;let v=u.get(d)??[];v.length>0&&(v=v.map(_=>(q.isEmpty(_._parent)&&(_._parent=p._parent),q.has(p,"_show")&&(_._show=p._show),_)));const E=t.indexOf(p);E!==-1&&t.splice(E,1,...v)}return t}}class tw extends Z{getValidationSchema(){return w.z.object({})}async execute(){return{role:"admin",permissions:null}}}class rw extends Z{getValidationSchema(){return w.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:f.id,designTokens:f.designTokens,name:f.name,slug:f.slug,links:f.links,partialBlocks:f.partialBlocks}).from(f).where(h.and(h.eq(f.lang,""),h.eq(f.app,t))));if(n)throw ie("FETCH_SITE_DATA_FAILED",n);const a={};return q.each(r,o=>{var s;a[o.id]={name:o.name,isPartial:q.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 nw extends Z{getValidationSchema(){return w.z.object({pageType:w.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:h.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(h.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(h.and(h.eq(te.pageType,n),h.inArray(te.library,l))));if(c)throw new b("Failed to fetch templates","GET_TEMPLATES_FAILED",500,c);return u||[]}}class aw extends Z{getValidationSchema(){return w.z.object({lang:w.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:f.id,name:f.name,slug:f.slug,pageType:f.pageType,currentEditor:f.currentEditor,parent:f.parent,online:f.online,lastSaved:f.lastSaved,createdAt:f.createdAt,dynamic:f.dynamic,dynamicSlugCustom:f.dynamicSlugCustom,primaryPage:f.primaryPage,changes:f.changes}).from(f).where(h.and(h.eq(f.app,r),h.eq(f.lang,a))));if(s)throw ie("ERROR_GETTING_WEBSITE_PAGES",s);if(!o||o.length===0)return[];const i=o.filter(p=>!q.isEmpty(p.slug)).map(p=>p.id),{data:l,error:u}=await A(()=>S.select({pageId:te.pageId}).from(te).where(h.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),changes:p.changes}))}}class ow extends Z{getValidationSchema(){return w.z.object({draft:w.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(h.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=q.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=is.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 sw extends Z{getValidationSchema(){return w.z.object({id:w.z.string().min(1),description:w.z.string().optional(),name:w.z.string().min(1),pageType:w.z.string().min(1),previewImage:w.z.string().optional(),previewImageUrl:w.z.string().optional()})}async execute(t){var _;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:h.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=wa("UPLOAD_TO_STORAGE");I==null||I.setContext(this.context);const P=`template-${Date.now()}.webp`,C=`${r}/templates`,m=await(I==null?void 0:I.execute({file:l,fileName:P,contentType:"image/webp",folder:C}));if(m!=null&&m.error)throw new b("Failed to upload preview image","UPLOAD_PREVIEW_FAILED",500,m.error);d=((_=m==null?void 0:m.data)==null?void 0:_.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 iw extends Z{constructor(){super(...arguments);Ee(this,"appId","");Ee(this,"revisionsEnabled",!1)}getValidationSchema(){return w.z.object({ids:w.z.array(w.z.string()).optional(),revisions:w.z.boolean().optional()})}async execute(r){await this.verifyAccess(),this.validateContext(),this.appId=this.context.appId,this.revisionsEnabled=r.revisions??!1;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:q.uniq(q.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(h.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(h.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:h.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(f).set({changes:null,online:!0}).where(h.and(h.inArray(f.id,n),h.eq(f.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:h.and(h.eq(ge.app,this.appId),h.like(ge.partialBlocks,`%${r}%`)),columns:{id:!0}}));return q.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 q.isEmpty(n.slug)&&a.push(...await this.getPartialBlockUsage(n.primaryPage??n.id)),a}async createRevision(r){if(!this.revisionsEnabled)return!1;const{data:n,error:a}=await A(()=>S.query.appPagesOnline.findFirst({where:h.eq(ge.id,r)}));if(a||!n||!q.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(h.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(()=>{var c;return S.insert(ge).values({...s,currentEditor:(c=this.context)==null?void 0:c.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);const{error:u}=await A(()=>S.update(f).set({changes:null}).where(h.eq(f.id,r.id)));if(u)throw new b("Error clearing page changes","ERROR_PUBLISHING_PAGE",500,u);return i[0]}async clonePage(r){const{data:n,error:a}=await A(()=>S.query.appPages.findFirst({where:h.and(h.eq(f.id,r),h.eq(f.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 lw extends Z{getValidationSchema(){return w.z.object({revisionId:w.z.string().nonempty(),discardCurrent:w.z.boolean(),pageId:w.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:h.and(h.eq(ge.id,t.pageId),h.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:h.and(h.eq(Ie.uid,t.revisionId),h.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:h.and(h.eq(f.id,n),h.eq(f.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()",...q.pick(o,["name","slug","pageType","lang","app","currentEditor"])};await S.insert(Ie).values(l)}return await S.update(f).set({blocks:a}).where(h.eq(f.id,n)),{success:!0,pageId:n}}}class uw extends Z{getValidationSchema(){return w.z.object({pageType:w.z.string(),query:w.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 cw extends Z{getValidationSchema(){return w.z.object({pageType:w.z.string().min(1),query:w.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=[h.eq(f.app,r),h.eq(f.pageType,n)];let i;a?o?i=h.and(...s,h.eq(f.id,a)):i=h.and(...s,h.or(h.ilike(f.slug,`%${a}%`),h.ilike(f.name,`%${a}%`))):i=h.and(...s);const{data:l,error:u}=await A(()=>S.select({id:f.id,slug:f.slug,name:f.name,lang:f.lang,primaryPage:f.primaryPage}).from(f).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 dw extends Z{constructor(){super(...arguments);Ee(this,"appId","")}getValidationSchema(){return w.z.object({id:w.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(f).set({online:!1}).where(h.and(h.eq(f.id,r),h.eq(f.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:f.id,slug:f.slug,lang:f.lang,pageType:f.pageType,name:f.name,online:f.online,seo:f.seo}).from(f).where(h.eq(f.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(h.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(h.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:f.primaryPage,pageType:f.pageType,slug:f.slug}).from(f).where(h.and(h.eq(f.id,r),h.eq(f.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:f.id,primaryPage:f.primaryPage}).from(f).where(h.and(h.eq(f.id,r),h.eq(f.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:f.id,partialBlocks:f.partialBlocks}).from(f).where(h.eq(f.app,this.appId)));return a||!n?[]:n.filter(o=>(o.partialBlocks||"").split("|").includes(r)).map(o=>o.id)}}class pw extends Z{getValidationSchema(){return w.z.object({id:w.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(h.eq(te.pageId,r)));if(n)throw new b("Failed to unmark page as template","DELETE_FAILED",500,n);return{success:!0}}}class fw{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:f.slug}).from(f).where(h.and(h.eq(f.id,t),h.eq(f.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:f.parent}).from(f).where(h.and(h.eq(f.id,t),h.eq(f.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 Ar(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 Ar(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,_=this.pageTreeBuilder.calculateSlugFromParent(E,d.slug,a.languageTree);this.validateSlugAvailabilityInTree(_,d.id,d.dynamic||!1,a,!0),this.updateNodeSlugInTree(d.id,_,a.languageTree);const I=this.pageTreeBuilder.collectNestedChildSlugs(d,d.slug,_);for(const P of I)this.updateNodeSlugInTree(P.id,P.newSlug,a.languageTree);u.push({id:d.id,newSlug:_}),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:h.sql`now()`};if(i.id===n){const c=q.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(f).set(l).where(h.and(h.eq(f.id,i.id),h.eq(f.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(h.and(h.eq(ge.id,i.id),h.eq(ge.app,this.appId))))});await Promise.all(s)}setPageTreeBuilder(t){this.pageTreeBuilder=t}}class gw extends Z{constructor(){super(...arguments);Ee(this,"appId","");Ee(this,"pageTreeBuilder");Ee(this,"slugChangeHandler")}getValidationSchema(){return w.z.object({id:w.z.string().nonempty(),blocks:w.z.array(w.z.any()).optional(),currentEditor:w.z.string().optional(),slug:w.z.string().optional(),name:w.z.string().optional(),seo:w.z.record(w.z.string(),w.z.any()).optional(),buildTime:w.z.boolean().optional(),parent:w.z.union([w.z.string(),w.z.null()]).optional(),pageType:w.z.string().optional(),dynamic:w.z.boolean().optional(),dynamicSlugCustom:w.z.string().optional(),needTranslations:w.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 fw(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 Ar(this.appId),this.slugChangeHandler.setPageTreeBuilder(this.pageTreeBuilder),await this.handleParentChangeWithHandler(r.id,n)):a&&n.slug?(this.pageTreeBuilder=new Ar(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 q.compact(r.filter(n=>n._type==="GlobalBlock"||n._type==="PartialBlock").map(n=>q.get(n,"partialBlockId",q.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 q.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 q.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=q.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(f).set({...n,changes:a,lastSaved:h.sql`now()`}).where(h.and(h.eq(f.id,r),h.eq(f.app,this.appId))));if(a.includes("Page")){const{error:s}=await A(()=>S.update(f).set({changes:a}).where(h.and(h.eq(f.primaryPage,r),h.eq(f.app,this.appId))));if(s)throw new b("Error updating page","ERROR_UPDATING_PAGE")}if(o)throw new b("Error updating page","ERROR_UPDATING_PAGE")}isOnlyBlocksUpdate(r){return q.keys(r).includes("blocks")}async fetchUpdatedPageData(r){const{data:n,error:a}=await A(()=>S.select({id:f.id,slug:f.slug,lang:f.lang,pageType:f.pageType,name:f.name,online:f.online,parent:f.parent,seo:f.seo}).from(f).where(h.eq(f.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 hw extends Z{getValidationSchema(){return w.z.object({id:w.z.string().nonempty(),metadata:w.z.record(w.z.string(),w.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:h.and(h.eq(f.id,t.id),h.eq(f.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(f).set({metadata:t.metadata}).where(h.and(h.eq(f.id,t.id),h.eq(f.app,r))));if(o)throw console.error(o),new b("Failed to update page metadata","UPDATE_FAILED");return{success:!0}}}class mw extends Z{getValidationSchema(){return w.z.object({settings:w.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={...q.pick(t.settings,["theme","designTokens"]),changes:["Updated"]},{error:o}=await A(()=>S.update(Ae).set(a).where(h.eq(Ae.id,r)));if(o)throw ie("ERROR_UPDATE_WEBSITE_FIELDS",o);return{success:!0}}}class yw extends Z{getValidationSchema(){return w.z.object({name:w.z.string().min(1),group:w.z.string().min(1),blocks:w.z.array(w.z.any()),description:w.z.string().optional(),previewImage:w.z.string().optional(),id:w.z.string().optional(),previewImageUrl:w.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:h.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 _=wa("UPLOAD_TO_STORAGE");_==null||_.setContext(this.context);const I=`library-item-${Date.now()}.webp`,P=`${r}/library-items`,C=await(_==null?void 0:_.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 _={name:a,blocks:s,library:p.id,description:i??null,group:o,user:n??null};v&&(_.preview=v);const{data:I,error:P}=await A(()=>S.update(re).set(_).where(h.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 _=hu.randomUUID(),I=[...s];q.set(I,"0._libBlockId",_);const P={id:_,name:a,blocks:I,library:p.id,description:i??null,group:o,user:n??null,preview:v??null},{data:C,error:m}=await A(()=>S.insert(re).values(P).returning());if(m||!C||C.length===0)throw new b("Failed to create library item","CREATE_LIBRARY_ITEM_FAILED",500,m);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 Nv),this.register("CHECK_USER_ACCESS",new Ov),this.register("CREATE_PAGE",new xv),this.register("DELETE_PAGE",new kv),this.register("DUPLICATE_PAGE",new Cv),this.register("RESTORE_PAGE_REVISION",new lw),this.register("UPDATE_PAGE_METADATA",new hw),this.register("GENERATE_SEO_FIELD",new Lv),this.register("GENERATE_HTML_FROM_PROMPT",new Mv),this.register("GET_REVISION_PAGE",new ew),this.register("UPDATE_PAGE",new gw),this.register("GET_COMPARE_DATA",new Gv),this.register("GET_SITE_WIDE_USAGE",new rw),this.register("GET_WEBSITE_DRAFT_SETTINGS",new ow),this.register("GET_WEBSITE_PAGES",new aw),this.register("GET_LIBRARIES",new Jv),this.register("GET_DRAFT_PAGE",new Bv),this.register("GET_LANGUAGE_PAGES",new Hv),this.register("UPSERT_LIBRARY_ITEM",new yw),this.register("MARK_AS_TEMPLATE",new sw),this.register("GET_LIBRARY_ITEM",new Wv),this.register("GET_LIBRARY_ITEMS",new Kv),this.register("DELETE_LIBRARY_ITEM",new Rv),this.register("UNMARK_AS_TEMPLATE",new pw),this.register("GET_TEMPLATES_BY_TYPE",new nw),this.register("SEARCH_PAGES",new cw),this.register("GET_PAGE_REVISIONS",new Xv),this.register("PUBLISH_CHANGES",new iw),this.register("UPDATE_WEBSITE_FIELDS",new mw),this.register("TAKE_OFFLINE",new dw),this.register("GET_CHANGES",new qv),this.register("GET_LIBRARY_GROUPS",new Yv),this.register("DELETE_PAGE_REVISION",new Pv),this.register("GET_COLLECTIONS",new Zv),this.register("GET_BLOCK_ASYNC_PROPS",new Uv),this.register("GET_BUILDER_PAGE_DATA",new jv),this.register("GET_PAGE_TYPES",new Qv),this.register("SEARCH_PAGE_TYPE_ITEMS",new uw),this.register("GET_DYNAMIC_PAGES",new Vv),this.register("GET_ROLE_AND_PERMISSIONS",new tw)}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 q.get(this.actions,t)}getAllActions(){return this.actions}};Ee(Nt,"instance");let ln=Nt;const wa=e=>ln.getInstance().getAction(e),vw=ln.getInstance();exports.ActionError=b;exports.ChaiBaseAction=Z;exports.actionsRegistery=vw;exports.db=S;exports.getAskAiSystemPrompt=ru;exports.getChaiAction=wa;exports.safeQuery=A;exports.schema=au;
481
+ Language: ${t.lang}`})).text}}}class Uv extends Z{getValidationSchema(){return w.z.object({block:w.z.any(),pageProps:w.z.any().optional().default({}),lang:w.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||!q.isFunction(i.dataProvider)?{}:await i.dataProvider({block:n,pageProps:a,lang:o,draft:!0,inBuilder:!0})??{}}catch(n){return this.handleError(n)}}}class jv extends Z{getValidationSchema(){return w.z.object({lang:w.z.string(),pageType:w.z.string().optional(),pageProps:w.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 qv extends Z{constructor(){super(...arguments);Ie(this,"appId","")}getValidationSchema(){return w.z.object({})}async execute(){if(!this.context)throw new T("Context not set","CONTEXT_NOT_SET");this.appId=this.context.appId;try{return await this.getChanges()}catch(r){if(r instanceof T)throw r;const n=r instanceof Error?r.message:"Failed to get changes";throw new T(n,"GET_CHANGES_ERROR")}}async getChanges(){const{data:r,error:n}=await A(()=>S.select({id:f.id,slug:f.slug,name:f.name,pageType:f.pageType,lang:f.lang,changes:f.changes,primaryPage:f.primaryPage,online:f.online,currentEditor:f.currentEditor}).from(f).where(h.and(h.eq(f.app,this.appId),h.isNotNull(f.changes))));if(n)throw new T("Error getting changed pages","ERROR_GETTING_CHANGES");const{data:a,error:o}=await A(()=>S.select({id:f.id,slug:f.slug,name:f.name,pageType:f.pageType,lang:f.lang,changes:f.changes,primaryPage:f.primaryPage,online:f.online}).from(f).where(h.and(h.eq(f.app,this.appId),h.isNull(f.currentEditor),h.eq(f.online,!1))));if(o)throw new T("Error getting offline pages","ERROR_GETTING_OFFLINE_PAGES");const s=(a||[]).map(d=>({...d,changes:["Take Online"]})),l=[...(r||[]).filter(d=>!s.some(p=>p.id===d.id)).map(d=>({...d,changes:d.changes})),...s],{data:u,error:c}=await A(()=>S.select({changes:ge.changes}).from(ge).where(h.and(h.eq(ge.id,this.appId),h.isNotNull(ge.changes))));if(!c&&u&&u.length>0){const d=u[0].changes??[];d.includes("THEME")&&l.push({id:"THEME",slug:"",name:"Theme",pageType:"theme",lang:"",changes:["Updated"],primaryPage:null,online:!0}),d.includes("DESIGN_TOKENS")&&l.push({id:"DESIGN_TOKENS",slug:"",name:"Design Tokens",pageType:"design_tokens",lang:"",changes:["Updated"],primaryPage:null,online:!0})}return l}}class Zv extends Z{getValidationSchema(){return w.z.object({})}async execute(){try{return ut.getChaiCollections().map(r=>q.omit(r,"fetch"))}catch(t){return this.handleError(t)}}}class Gv extends Z{getValidationSchema(){return w.z.object({versions:w.z.object({version1:w.z.object({type:w.z.enum(["draft","revision","live"]),id:w.z.string()}),version2:w.z.object({type:w.z.enum(["draft","revision","live"]),id:w.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:h.eq(f.id,r),columns:{blocks:!0,seo:!0}})));break;case"live":({data:n,error:a}=await A(()=>S.query.appPagesOnline.findFirst({where:h.eq(he.id,r),columns:{blocks:!0,seo:!0}})));break;case"revision":({data:n,error:a}=await A(()=>S.query.appPagesRevisions.findFirst({where:h.eq(Se.uid,r),columns:{blocks:!0,seo:!0}})));break;default:throw new T(`Invalid version type: ${t}`,"INVALID_VERSION_TYPE")}if(a)throw new T(`Failed to fetch blocks for ${t} version: ${a.message}`,"FETCH_BLOCKS_ERROR");if(!n)throw new T(`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 T("Context not set","CONTEXT_NOT_SET")}}class Bv extends Z{getValidationSchema(){return w.z.object({id:w.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=f,{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(h.and(h.eq(a.app,r),h.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:d,error:p}=await A(()=>S.select({blocks:a.blocks}).from(a).where(h.and(h.eq(a.app,r),h.eq(a.id,l))).limit(1));if(p)throw ie("BLOCKS_NOT_FOUND",p);u=((c=d==null?void 0:d[0])==null?void 0:c.blocks)??[]}return{...i,blocks:u,id:n,languagePageId:i.id}}}class Vv extends Z{getValidationSchema(){return w.z.object({pageType:w.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 Hv extends Z{getValidationSchema(){return w.z.object({id:w.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:f.id,name:f.name,slug:f.slug,lang:f.lang,primaryPage:f.primaryPage,pageType:f.pageType,seo:f.seo,currentEditor:f.currentEditor,online:f.online,parent:f.parent,metadata:f.metadata,dynamic:f.dynamic,dynamicSlugCustom:f.dynamicSlugCustom,changes:f.changes}).from(f).where(h.and(h.eq(f.app,r),h.or(h.eq(f.primaryPage,n),h.eq(f.id,n)))));if(o)throw ie("LANGUAGE_PAGES_ERROR",o);return a.map(s=>q.omit(s,["app"]))}}class Jv extends Z{getValidationSchema(){return w.z.object({}).optional().default({})}async execute(){var l;if(!this.context)throw new T("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(h.eq(K.app,t)).limit(1));if(r.error)throw new T("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(h.eq(K.client,a)));if(s)throw new T("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 Yv extends Z{getValidationSchema(){return w.z.object({})}async execute(){if(!this.context)throw new T("Context not set","CONTEXT_NOT_SET");const{data:t,error:r}=await A(()=>S.select({id:K.id}).from(K).where(h.eq(K.app,this.context.appId)).limit(1));if(r)throw new T("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(h.eq(re.library,n.id)));if(o)throw new T("Failed to fetch library groups","GET_LIBRARY_GROUPS_FAILED",500,o);const s=q.map(a,"group").filter(i=>i!=null);return q.map(q.uniq(s),i=>({id:i,name:i}))}}class Wv extends Z{getValidationSchema(){return w.z.object({id:w.z.string().min(1)})}async execute(t){if(!this.context)throw new T("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,h.eq(re.library,K.id)).where(h.eq(re.id,n)));if(o)throw new T("Failed to fetch library item","GET_LIBRARY_ITEM_FAILED",500,o);if(!a||a.length===0)throw new T("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?q.set(i,"0._libBlockId",s.id):q.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 Kv extends Z{getValidationSchema(){return w.z.object({id:w.z.string().min(1)})}async execute(t){if(!this.context)throw new T("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(h.eq(re.library,r)));if(a)throw new T("Failed to fetch library items","GET_LIBRARY_ITEMS_FAILED",500,a);return n||[]}}class Xv extends Z{getValidationSchema(){return w.z.object({pageId:w.z.string().min(1,"Page ID is required")})}async execute(t){if(!this.context)throw new T("Context not set","CONTEXT_NOT_SET");try{return await this.getRevisions(t.pageId)}catch(r){if(r instanceof T)throw r;const n=r instanceof Error?r.message:"Failed to get page revisions";throw new T(n,"GET_PAGE_REVISIONS_ERROR")}}async getRevisions(t){const{data:r,error:n}=await A(()=>S.select({currentEditor:f.currentEditor,createdAt:f.createdAt}).from(f).where(h.and(h.eq(f.app,this.context.appId),h.eq(f.id,t)))),{data:a,error:o}=await A(()=>S.select({uid:Se.uid,currentEditor:Se.currentEditor,createdAt:Se.createdAt,type:Se.type}).from(Se).where(h.and(h.eq(Se.app,this.context.appId),h.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 T(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 T(u,"ERROR_GETTING_PAGE_REVISIONS")}const s=r==null?void 0:r[0],l=[...s?[{...s,type:"published",uid:"current"}]:[],...a??[]];return q.orderBy(l,["createdAt"],["desc"])}}class Qv extends Z{getValidationSchema(){return w.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,...q.isFunction(r.defaultSeo)?{defaultSeo:r.defaultSeo()}:{},...q.isFunction(r.defaultJSONLD)?{defaultJSONLD:r.defaultJSONLD()}:{}})))}catch(t){return this.handleError(t)}}}class ew extends Z{getValidationSchema(){return w.z.object({id:w.z.string().nonempty(),type:w.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:h.and(h.eq(f.id,t.id),h.eq(f.lang,t.lang??""))})));break;case"live":({data:r,error:n}=await A(()=>S.query.appPagesOnline.findFirst({where:h.and(h.eq(he.id,t.id),h.eq(he.lang,t.lang??""))})));break;case"revision":({data:r,error:n}=await A(()=>S.query.appPagesRevisions.findFirst({where:h.and(h.eq(Se.uid,t.id),h.eq(Se.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?f:he,o=t.filter(({_type:c})=>c==="GlobalBlock"||c==="PartialBlock");if(o.length===0)return t;const s=o.map(c=>q.get(c,"partialBlockId",q.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(h.and(h.eq(a.app,n),h.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 d=o[c];if(!d)continue;const p=q.get(d,"partialBlockId",q.get(d,"globalBlock",""));if(p==="")continue;let v=u.get(p)??[];v.length>0&&(v=v.map(_=>(q.isEmpty(_._parent)&&(_._parent=d._parent),q.has(d,"_show")&&(_._show=d._show),_)));const b=t.indexOf(d);b!==-1&&t.splice(b,1,...v)}return t}}class tw extends Z{getValidationSchema(){return w.z.object({})}async execute(){return{role:"admin",permissions:null}}}class rw extends Z{getValidationSchema(){return w.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:f.id,designTokens:f.designTokens,name:f.name,slug:f.slug,links:f.links,partialBlocks:f.partialBlocks}).from(f).where(h.and(h.eq(f.lang,""),h.eq(f.app,t))));if(n)throw ie("FETCH_SITE_DATA_FAILED",n);const a={};return q.each(r,o=>{var s;a[o.id]={name:o.name,isPartial:q.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 nw extends Z{getValidationSchema(){return w.z.object({pageType:w.z.string().min(1)})}async execute(t){if(!this.context)throw new T("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:h.eq(K.app,r),columns:{id:!0}}));if(o)throw new T("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(h.eq(K.type,"shared")));if(i)throw new T("Failed to fetch shared libraries","GET_SHARED_LIBRARIES_FAILED",500,i);const l=[...a?[a.id]:[],...(s||[]).map(d=>d.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(h.and(h.eq(te.pageType,n),h.inArray(te.library,l))));if(c)throw new T("Failed to fetch templates","GET_TEMPLATES_FAILED",500,c);return u||[]}}class aw extends Z{getValidationSchema(){return w.z.object({lang:w.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:f.id,name:f.name,slug:f.slug,pageType:f.pageType,currentEditor:f.currentEditor,parent:f.parent,online:f.online,lastSaved:f.lastSaved,createdAt:f.createdAt,dynamic:f.dynamic,dynamicSlugCustom:f.dynamicSlugCustom,primaryPage:f.primaryPage,changes:f.changes}).from(f).where(h.and(h.eq(f.app,r),h.eq(f.lang,a))));if(s)throw ie("ERROR_GETTING_WEBSITE_PAGES",s);if(!o||o.length===0)return[];const i=o.filter(d=>!q.isEmpty(d.slug)).map(d=>d.id),{data:l,error:u}=await A(()=>S.select({pageId:te.pageId}).from(te).where(h.inArray(te.pageId,i)));if(u)throw ie("ERROR_GETTING_TEMPLATE_INFO",u);const c=new Set((l||[]).map(d=>d.pageId));return o.map(d=>({...d,pageType:d.pageType??"page",isTemplate:c.has(d.id),changes:d.changes}))}}class ow extends Z{getValidationSchema(){return w.z.object({draft:w.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?ge:mt,{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(h.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=q.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=is.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 sw extends Z{getValidationSchema(){return w.z.object({id:w.z.string().min(1),description:w.z.string().optional(),name:w.z.string().min(1),pageType:w.z.string().min(1),previewImage:w.z.string().optional(),previewImageUrl:w.z.string().optional()})}async execute(t){var _;if(await this.verifyAccess(),!this.context)throw new T("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:d}=await A(()=>S.query.libraries.findFirst({where:h.eq(K.app,r),columns:{id:!0}}));if(d)throw new T("Failed to fetch site library","GET_SITE_LIBRARY_FAILED",500,d);if(!c)throw new T("Library not found for this app","GET_SITE_LIBRARY_FAILED");let p=u;if(l){const I=wa("UPLOAD_TO_STORAGE");I==null||I.setContext(this.context);const P=`template-${Date.now()}.webp`,C=`${r}/templates`,m=await(I==null?void 0:I.execute({file:l,fileName:P,contentType:"image/webp",folder:C}));if(m!=null&&m.error)throw new T("Failed to upload preview image","UPLOAD_PREVIEW_FAILED",500,m.error);p=((_=m==null?void 0:m.data)==null?void 0:_.url)||u}const{data:v,error:b}=await A(()=>S.insert(te).values({library:c.id,user:n??null,pageId:a,description:o??null,name:s+" Template",pageType:i,preview:p??null}).returning({id:te.id,library:te.library,pageType:te.pageType,pageId:te.pageId,description:te.description,preview:te.preview}));if(b||!v||v.length===0)throw new T("Failed to mark page as template","UPDATE_FAILED",500,b);return v[0]}}class iw extends Z{constructor(){super(...arguments);Ie(this,"appId","");Ie(this,"revisionsEnabled",!1)}getValidationSchema(){return w.z.object({ids:w.z.array(w.z.string()).optional(),revisions:w.z.boolean().optional()})}async execute(r){await this.verifyAccess(),this.validateContext(),this.appId=this.context.appId,this.revisionsEnabled=r.revisions??!1;try{const n=r.ids??[];if(n.length===0)throw new T("IDS_REQUIRED","At least one page ID or THEME must be provided");const a=await Promise.all(n.map(o=>o==="THEME"?this.publishTheme():o==="DESIGN_TOKENS"?this.publishDesignToken():this.publishPage(o)));return await this.clearChanges(n),{tags:q.uniq(q.flattenDeep(a))}}catch(n){return this.handleExecutionError(n)}}validateContext(){if(!this.context)throw new T("Context not set","CONTEXT_NOT_SET")}async publishTheme(){const r=await this.cloneApp(),{error:n}=await A(()=>S.delete(mt).where(h.eq(mt.id,this.appId)));if(n)throw new T("Error deleting online theme","ERROR_PUBLISHING_THEME",500,n);const{error:a}=await A(()=>S.insert(mt).values({...r,changes:null}));if(a)throw new T("Error inserting online theme","ERROR_PUBLISHING_THEME",500,a);return await this.removeFromChangesArray("THEME","ERROR_PUBLISHING_THEME"),[`website-settings-${this.appId}`]}async publishDesignToken(){const r=await this.cloneApp(),{error:n}=await A(()=>S.delete(mt).where(h.eq(mt.id,this.appId)));if(n)throw new T("Error deleting online app","ERROR_PUBLISHING_DESIGN_TOKEN",500,n);const{error:a}=await A(()=>S.insert(mt).values({...r,changes:null}));if(a)throw new T("Error inserting online app","ERROR_PUBLISHING_DESIGN_TOKEN",500,a);return await this.removeFromChangesArray("DESIGN_TOKENS","ERROR_PUBLISHING_DESIGN_TOKEN"),[`website-settings-${this.appId}`]}async removeFromChangesArray(r,n){var u;const{data:a,error:o}=await A(()=>S.select({changes:ge.changes}).from(ge).where(h.eq(ge.id,this.appId)));if(o)throw new T("Error fetching changes",n,500,o);const i=(((u=a==null?void 0:a[0])==null?void 0:u.changes)??[]).filter(c=>c!==r),{error:l}=await A(()=>S.update(ge).set({changes:i.length>0?i:null}).where(h.eq(ge.id,this.appId)));if(l)throw new T("Error updating changes",n,500,l)}async cloneApp(){const{data:r,error:n}=await A(()=>S.query.apps.findFirst({where:h.eq(ge.id,this.appId)}));if(n||!r)throw new T("Site not found","SITE_NOT_FOUND",404,n);return r}async clearChanges(r){const n=r.filter(o=>o!=="THEME"&&o!=="DESIGN_TOKENS");if(n.length===0)return;const{error:a}=await A(()=>S.update(f).set({changes:null,online:!0}).where(h.and(h.inArray(f.id,n),h.eq(f.app,this.appId))));if(a)throw new T("Error clearing changes","ERROR_CLEARING_CHANGES",500,a)}async getPartialBlockUsage(r){const{data:n}=await A(()=>S.query.appPagesOnline.findMany({where:h.and(h.eq(he.app,this.appId),h.like(he.partialBlocks,`%${r}%`)),columns:{id:!0}}));return q.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 q.isEmpty(n.slug)&&a.push(...await this.getPartialBlockUsage(n.primaryPage??n.id)),a}async createRevision(r){if(!this.revisionsEnabled)return!1;const{data:n,error:a}=await A(()=>S.query.appPagesOnline.findFirst({where:h.eq(he.id,r)}));if(a||!n||!q.isEmpty(n.primaryPage))return!1;const{error:o}=await A(()=>S.insert(Se).values({...n,type:"published",uid:void 0}));if(o)throw new T("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(he).where(h.eq(he.id,r.id)));if(n)throw new T("Error deleting online page","ERROR_PUBLISHING_PAGE",500,n);const{changes:a,createdAt:o,...s}=r,{data:i,error:l}=await A(()=>{var c;return S.insert(he).values({...s,currentEditor:(c=this.context)==null?void 0:c.userId}).returning({id:he.id,primaryPage:he.primaryPage})});if(l||!i||i.length===0)throw new T("Error publishing page","ERROR_PUBLISHING_PAGE",500,l);const{error:u}=await A(()=>S.update(f).set({changes:null}).where(h.eq(f.id,r.id)));if(u)throw new T("Error clearing page changes","ERROR_PUBLISHING_PAGE",500,u);return i[0]}async clonePage(r){const{data:n,error:a}=await A(()=>S.query.appPages.findFirst({where:h.and(h.eq(f.id,r),h.eq(f.app,this.appId))}));if(a||!n)throw new T("Page not found","PAGE_NOT_FOUND",404,a);return n}handleExecutionError(r){throw r instanceof T?r:new T(`Failed to publish changes: ${r instanceof Error?r.message:"Unknown error"}`,"PUBLISH_CHANGES_FAILED")}}class lw extends Z{getValidationSchema(){return w.z.object({revisionId:w.z.string().nonempty(),discardCurrent:w.z.boolean(),pageId:w.z.string().optional()})}async execute(t){if(await this.verifyAccess(),!this.context)throw new T("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context;let n,a;if(t.revisionId==="current"){if(!t.pageId)throw new T("pageId is required when restoring current revision","PAGE_ID_REQUIRED");const{data:o,error:s}=await A(()=>S.query.appPagesOnline.findFirst({where:h.and(h.eq(he.id,t.pageId),h.eq(he.app,r)),columns:{id:!0,blocks:!0}}));if(s)throw new T("Error fetching live page","FETCH_ERROR");if(!o)throw new T("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:h.and(h.eq(Se.uid,t.revisionId),h.eq(Se.app,r)),columns:{id:!0,blocks:!0,type:!0}}));if(s)throw new T("Error fetching revision","FETCH_ERROR");if(!o)throw new T("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:h.and(h.eq(f.id,n),h.eq(f.app,r))}));if(s)throw new T("Error fetching current page","FETCH_ERROR");if(!o)throw new T("Current page not found","PAGE_NOT_FOUND");const i=o.blocks,l={id:n,blocks:i,type:"draft",createdAt:"now()",...q.pick(o,["name","slug","pageType","lang","app","currentEditor"])};await S.insert(Se).values(l)}return await S.update(f).set({blocks:a}).where(h.eq(f.id,n)),{success:!0,pageId:n}}}class uw extends Z{getValidationSchema(){return w.z.object({pageType:w.z.string(),query:w.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 cw extends Z{getValidationSchema(){return w.z.object({pageType:w.z.string().min(1),query:w.z.string().optional()})}async execute(t){if(!this.context)throw new T("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context,{pageType:n,query:a=""}=t,o=this.isUUID(a),s=[h.eq(f.app,r),h.eq(f.pageType,n)];let i;a?o?i=h.and(...s,h.eq(f.id,a)):i=h.and(...s,h.or(h.ilike(f.slug,`%${a}%`),h.ilike(f.name,`%${a}%`))):i=h.and(...s);const{data:l,error:u}=await A(()=>S.select({id:f.id,slug:f.slug,name:f.name,lang:f.lang,primaryPage:f.primaryPage}).from(f).where(i));if(u)throw new T("Failed to search pages","ERROR_SEARCHING_PAGES",500,u);return l||[]}isUUID(t){return t.length===36}}class dw extends Z{constructor(){super(...arguments);Ie(this,"appId","")}getValidationSchema(){return w.z.object({id:w.z.string().min(1,"Page ID is required")})}async execute(r){if(await this.verifyAccess(),!this.context)throw new T("Context not set","CONTEXT_NOT_SET");this.appId=this.context.appId;try{return await this.takeOffline(r.id)}catch(n){if(n instanceof T)throw n;const a=n instanceof Error?n.message:"Failed to take page offline";throw new T(a,"TAKE_OFFLINE_ERROR")}}async takeOffline(r){const n=await this.getPageType(r),{error:a}=await A(()=>S.update(f).set({online:!1}).where(h.and(h.eq(f.id,r),h.eq(f.app,this.appId))));if(a)throw new T("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:f.id,slug:f.slug,lang:f.lang,pageType:f.pageType,name:f.name,online:f.online,seo:f.seo}).from(f).where(h.eq(f.id,r)));if(s||!o||o.length===0)throw new T("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(he).where(h.eq(he.id,r)));if(n)throw new T("Error deleting page from online pages table","ERROR_DELETING_PAGE_FROM_ONLINE_PAGES_TABLE");const{error:a}=await A(()=>S.delete(he).where(h.eq(he.primaryPage,r)));if(a)throw new T("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:f.primaryPage,pageType:f.pageType,slug:f.slug}).from(f).where(h.and(h.eq(f.id,r),h.eq(f.app,this.appId))));if(a||!n||n.length===0)throw new T("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:f.id,primaryPage:f.primaryPage}).from(f).where(h.and(h.eq(f.id,r),h.eq(f.app,this.appId))));if(a||!n||n.length===0)throw new T("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:f.id,partialBlocks:f.partialBlocks}).from(f).where(h.eq(f.app,this.appId)));return a||!n?[]:n.filter(o=>(o.partialBlocks||"").split("|").includes(r)).map(o=>o.id)}}class pw extends Z{getValidationSchema(){return w.z.object({id:w.z.string().min(1)})}async execute(t){if(await this.verifyAccess(),!this.context)throw new T("Context not set","CONTEXT_NOT_SET");const{id:r}=t,{error:n}=await A(()=>S.delete(te).where(h.eq(te.pageId,r)));if(n)throw new T("Failed to unmark page as template","DELETE_FAILED",500,n);return{success:!0}}}class fw{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 T(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 T(i,"SLUG_ALREADY_EXISTS")}}async isSlugChanged(t,r){if(!r)return!1;const{data:n,error:a}=await A(()=>S.select({slug:f.slug}).from(f).where(h.and(h.eq(f.id,t),h.eq(f.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:f.parent}).from(f).where(h.and(h.eq(f.id,t),h.eq(f.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 Ar(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 T("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 Ar(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 T("Cannot change parent of language pages directly","INVALID_OPERATION"):new T("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(p=>({id:p.id,newSlug:p.newSlug}))];for(const p of l)this.updateNodeSlugInTree(p.id,p.newSlug,a.primaryTree);const c=this.pageTreeBuilder.findLanguagePagesForPrimary(t,a.languageTree);let d;n&&(d=this.pageTreeBuilder.findLanguagePagesForPrimary(n,a.languageTree));for(const p of c){const v=d==null?void 0:d.filter(P=>P.lang===p.lang)[0],b=(v==null?void 0:v.id)||null,_=this.pageTreeBuilder.calculateSlugFromParent(b,p.slug,a.languageTree);this.validateSlugAvailabilityInTree(_,p.id,p.dynamic||!1,a,!0),this.updateNodeSlugInTree(p.id,_,a.languageTree);const I=this.pageTreeBuilder.collectNestedChildSlugs(p,p.slug,_);for(const P of I)this.updateNodeSlugInTree(P.id,P.newSlug,a.languageTree);u.push({id:p.id,newSlug:_}),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:h.sql`now()`};if(i.id===n){const c=q.pick(r,["name","seo","blocks","currentEditor","buildTime","parent","pageType","dynamic","dynamicSlugCustom","links","partialBlocks","designTokens"]);Object.keys(c).forEach(d=>{c[d]===void 0&&delete c[d]}),Object.assign(l,{...c,changes:a})}const{error:u}=await A(()=>S.update(f).set(l).where(h.and(h.eq(f.id,i.id),h.eq(f.app,this.appId))));if(u)throw new T(`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(he).set({slug:i.newSlug}).where(h.and(h.eq(he.id,i.id),h.eq(he.app,this.appId))))});await Promise.all(s)}setPageTreeBuilder(t){this.pageTreeBuilder=t}}class gw extends Z{constructor(){super(...arguments);Ie(this,"appId","");Ie(this,"pageTreeBuilder");Ie(this,"slugChangeHandler")}getValidationSchema(){return w.z.object({id:w.z.string().nonempty(),blocks:w.z.array(w.z.any()).optional(),currentEditor:w.z.string().optional(),slug:w.z.string().optional(),name:w.z.string().optional(),seo:w.z.record(w.z.string(),w.z.any()).optional(),buildTime:w.z.boolean().optional(),parent:w.z.union([w.z.string(),w.z.null()]).optional(),pageType:w.z.string().optional(),dynamic:w.z.boolean().optional(),dynamicSlugCustom:w.z.string().optional(),needTranslations:w.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 fw(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 Ar(this.appId),this.slugChangeHandler.setPageTreeBuilder(this.pageTreeBuilder),await this.handleParentChangeWithHandler(r.id,n)):a&&n.slug?(this.pageTreeBuilder=new Ar(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 q.compact(r.filter(n=>n._type==="GlobalBlock"||n._type==="PartialBlock").map(n=>q.get(n,"partialBlockId",q.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 q.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 T("Context not set","CONTEXT_NOT_SET")}extractAllowedPageFields(r){return q.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=q.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(f).set({...n,changes:a,lastSaved:h.sql`now()`}).where(h.and(h.eq(f.id,r),h.eq(f.app,this.appId))));if(a.includes("Page")){const{error:s}=await A(()=>S.update(f).set({changes:a}).where(h.and(h.eq(f.primaryPage,r),h.eq(f.app,this.appId))));if(s)throw new T("Error updating page","ERROR_UPDATING_PAGE")}if(o)throw new T("Error updating page","ERROR_UPDATING_PAGE")}isOnlyBlocksUpdate(r){return q.keys(r).includes("blocks")}async fetchUpdatedPageData(r){const{data:n,error:a}=await A(()=>S.select({id:f.id,slug:f.slug,lang:f.lang,pageType:f.pageType,name:f.name,online:f.online,parent:f.parent,seo:f.seo}).from(f).where(h.eq(f.id,r)).limit(1));if(a||!n||n.length===0)throw new T("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 T?r:new T(`Failed to update page: ${r instanceof Error?r.message:"Unknown error"}`,"UPDATE_PAGE_FAILED")}}class hw extends Z{getValidationSchema(){return w.z.object({id:w.z.string().nonempty(),metadata:w.z.record(w.z.string(),w.z.any())})}async execute(t){if(await this.verifyAccess(),!this.context)throw new T("Context not set","CONTEXT_NOT_SET");const{appId:r}=this.context,{data:n,error:a}=await A(()=>S.query.appPages.findFirst({where:h.and(h.eq(f.id,t.id),h.eq(f.app,r)),columns:{id:!0}}));if(a)throw new T(`Failed to fetch page: ${a.message}`,"FETCH_FAILED");if(!n)throw new T("Page not found","PAGE_NOT_FOUND");const{error:o}=await A(()=>S.update(f).set({metadata:t.metadata}).where(h.and(h.eq(f.id,t.id),h.eq(f.app,r))));if(o)throw console.error(o),new T("Failed to update page metadata","UPDATE_FAILED");return{success:!0}}}class mw extends Z{getValidationSchema(){return w.z.object({settings:w.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,n=q.pick(t.settings,["theme","designTokens"]),{data:a,error:o}=await A(()=>S.select({changes:ge.changes}).from(ge).where(h.eq(ge.id,r)));if(o)throw ie("ERROR_UPDATE_WEBSITE_FIELDS",o);const s=a[0].changes??[],i={theme:"THEME",designTokens:"DESIGN_TOKENS"},l=Object.keys(n).map(p=>i[p]).filter(Boolean),u=[...new Set([...s,...l])],c={...n,changes:u},{error:d}=await A(()=>S.update(ge).set(c).where(h.eq(ge.id,r)));if(d)throw ie("ERROR_UPDATE_WEBSITE_FIELDS",d);return{success:!0}}}class yw extends Z{getValidationSchema(){return w.z.object({name:w.z.string().min(1),group:w.z.string().min(1),blocks:w.z.array(w.z.any()),description:w.z.string().optional(),previewImage:w.z.string().optional(),id:w.z.string().optional(),previewImageUrl:w.z.string().optional()})}async execute(t){var b;if(await this.verifyAccess(),!this.context)throw new T("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:d,error:p}=await A(()=>S.query.libraries.findFirst({where:h.eq(K.app,r),columns:{id:!0}}));if(p)throw new T("Failed to fetch site library","GET_SITE_LIBRARY_FAILED",500,p);if(!d)throw new T("Library not found for this app","GET_SITE_LIBRARY_FAILED");let v=u;if(l){const _=wa("UPLOAD_TO_STORAGE");_==null||_.setContext(this.context);const I=`library-item-${Date.now()}.webp`,P=`${r}/library-items`,C=await(_==null?void 0:_.execute({file:l,fileName:I,contentType:"image/webp",folder:P}));if(C!=null&&C.error)throw new T("Failed to upload preview image","UPLOAD_PREVIEW_FAILED",500,C.error);v=((b=C==null?void 0:C.data)==null?void 0:b.url)||u}if(c){const _={name:a,blocks:s,library:d.id,description:i??null,group:o,user:n??null};v&&(_.preview=v);const{data:I,error:P}=await A(()=>S.update(re).set(_).where(h.eq(re.id,c)).returning());if(P||!I||I.length===0)throw new T("Failed to update library item","UPDATE_LIBRARY_ITEM_FAILED",500,P);return I[0]}else{const _=hu.randomUUID(),I=[...s];q.set(I,"0._libBlockId",_);const P={id:_,name:a,blocks:I,library:d.id,description:i??null,group:o,user:n??null,preview:v??null},{data:C,error:m}=await A(()=>S.insert(re).values(P).returning());if(m||!C||C.length===0)throw new T("Failed to create library item","CREATE_LIBRARY_ITEM_FAILED",500,m);return C[0]}}}const Ot=class Ot{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 Nv),this.register("CHECK_USER_ACCESS",new Ov),this.register("CREATE_PAGE",new Rv),this.register("DELETE_PAGE",new kv),this.register("DUPLICATE_PAGE",new Cv),this.register("RESTORE_PAGE_REVISION",new lw),this.register("UPDATE_PAGE_METADATA",new hw),this.register("GENERATE_SEO_FIELD",new Lv),this.register("GENERATE_HTML_FROM_PROMPT",new Mv),this.register("GET_REVISION_PAGE",new ew),this.register("UPDATE_PAGE",new gw),this.register("GET_COMPARE_DATA",new Gv),this.register("GET_SITE_WIDE_USAGE",new rw),this.register("GET_WEBSITE_DRAFT_SETTINGS",new ow),this.register("GET_WEBSITE_PAGES",new aw),this.register("GET_LIBRARIES",new Jv),this.register("GET_DRAFT_PAGE",new Bv),this.register("GET_LANGUAGE_PAGES",new Hv),this.register("UPSERT_LIBRARY_ITEM",new yw),this.register("MARK_AS_TEMPLATE",new sw),this.register("GET_LIBRARY_ITEM",new Wv),this.register("GET_LIBRARY_ITEMS",new Kv),this.register("DELETE_LIBRARY_ITEM",new xv),this.register("UNMARK_AS_TEMPLATE",new pw),this.register("GET_TEMPLATES_BY_TYPE",new nw),this.register("SEARCH_PAGES",new cw),this.register("GET_PAGE_REVISIONS",new Xv),this.register("PUBLISH_CHANGES",new iw),this.register("UPDATE_WEBSITE_FIELDS",new mw),this.register("TAKE_OFFLINE",new dw),this.register("GET_CHANGES",new qv),this.register("GET_LIBRARY_GROUPS",new Yv),this.register("DELETE_PAGE_REVISION",new Pv),this.register("GET_COLLECTIONS",new Zv),this.register("GET_BLOCK_ASYNC_PROPS",new Uv),this.register("GET_BUILDER_PAGE_DATA",new jv),this.register("GET_PAGE_TYPES",new Qv),this.register("SEARCH_PAGE_TYPE_ITEMS",new uw),this.register("GET_DYNAMIC_PAGES",new Vv),this.register("GET_ROLE_AND_PERMISSIONS",new tw)}static getInstance(){return Ot.instance||(Ot.instance=new Ot),Ot.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 q.get(this.actions,t)}getAllActions(){return this.actions}};Ie(Ot,"instance");let ln=Ot;const wa=e=>ln.getInstance().getAction(e),vw=ln.getInstance();exports.ActionError=T;exports.ChaiBaseAction=Z;exports.actionsRegistery=vw;exports.db=S;exports.getAskAiSystemPrompt=ru;exports.getChaiAction=wa;exports.safeQuery=A;exports.schema=au;