@tangle-network/braid 0.1.0 → 0.1.1

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 (174) hide show
  1. package/README.md +10 -0
  2. package/THIRD_PARTY_LICENSES.json +16 -0
  3. package/THIRD_PARTY_NOTICES.md +4 -1
  4. package/dist/adapters/analysis/managed-analysis-runtime.d.ts +19 -0
  5. package/dist/adapters/analysis/managed-analysis-runtime.d.ts.map +1 -0
  6. package/dist/adapters/analysis/managed-analysis-runtime.js +72 -0
  7. package/dist/adapters/analysis/managed-analysis-runtime.js.map +1 -0
  8. package/dist/adapters/analysis/production-analysis-analyst.d.ts +1 -1
  9. package/dist/adapters/analysis/production-analysis-analyst.d.ts.map +1 -1
  10. package/dist/adapters/analysis/production-analysis-analyst.js +12 -2
  11. package/dist/adapters/analysis/production-analysis-analyst.js.map +1 -1
  12. package/dist/adapters/analysis/python-runner.d.ts +3 -1
  13. package/dist/adapters/analysis/python-runner.d.ts.map +1 -1
  14. package/dist/adapters/analysis/python-runner.js +99 -1
  15. package/dist/adapters/analysis/python-runner.js.map +1 -1
  16. package/dist/adapters/analysis/trace-analysis-adapter.d.ts +2 -0
  17. package/dist/adapters/analysis/trace-analysis-adapter.d.ts.map +1 -1
  18. package/dist/adapters/analysis/trace-analysis-adapter.js +6 -0
  19. package/dist/adapters/analysis/trace-analysis-adapter.js.map +1 -1
  20. package/dist/adapters/credentials/headless-key.js +3 -2
  21. package/dist/adapters/credentials/headless-key.js.map +1 -1
  22. package/dist/adapters/persistence/posix-at.d.ts +8 -0
  23. package/dist/adapters/persistence/posix-at.d.ts.map +1 -0
  24. package/dist/adapters/persistence/posix-at.js +96 -0
  25. package/dist/adapters/persistence/posix-at.js.map +1 -0
  26. package/dist/adapters/persistence/safe-file-descriptor.d.ts +1 -1
  27. package/dist/adapters/persistence/safe-file-descriptor.d.ts.map +1 -1
  28. package/dist/adapters/persistence/safe-file-descriptor.js +29 -18
  29. package/dist/adapters/persistence/safe-file-descriptor.js.map +1 -1
  30. package/dist/adapters/persistence/safe-file-io.d.ts.map +1 -1
  31. package/dist/adapters/persistence/safe-file-io.js +9 -9
  32. package/dist/adapters/persistence/safe-file-io.js.map +1 -1
  33. package/dist/adapters/persistence/safe-file.d.ts +1 -1
  34. package/dist/adapters/persistence/safe-file.d.ts.map +1 -1
  35. package/dist/adapters/persistence/safe-file.js +4 -4
  36. package/dist/adapters/persistence/safe-file.js.map +1 -1
  37. package/dist/adapters/storage/sqlite-bound-open.d.ts +4 -4
  38. package/dist/adapters/storage/sqlite-bound-open.d.ts.map +1 -1
  39. package/dist/adapters/storage/sqlite-bound-open.js +49 -19
  40. package/dist/adapters/storage/sqlite-bound-open.js.map +1 -1
  41. package/dist/app/analysis-comparison-request.d.ts +1 -1
  42. package/dist/app/analysis-comparison-request.d.ts.map +1 -1
  43. package/dist/app/analysis-comparison-request.js +9 -5
  44. package/dist/app/analysis-comparison-request.js.map +1 -1
  45. package/dist/app/analysis-comparison.js +2 -2
  46. package/dist/app/analysis-comparison.js.map +1 -1
  47. package/dist/app/analysis-promotion.d.ts.map +1 -1
  48. package/dist/app/analysis-promotion.js +4 -5
  49. package/dist/app/analysis-promotion.js.map +1 -1
  50. package/dist/app/analysis-request.d.ts +1 -1
  51. package/dist/app/analysis-request.d.ts.map +1 -1
  52. package/dist/app/analysis-request.js +3 -7
  53. package/dist/app/analysis-request.js.map +1 -1
  54. package/dist/app/analysis-service.js +1 -1
  55. package/dist/app/analysis-service.js.map +1 -1
  56. package/dist/app/analysis-source.d.ts +4 -1
  57. package/dist/app/analysis-source.d.ts.map +1 -1
  58. package/dist/app/analysis-source.js +18 -0
  59. package/dist/app/analysis-source.js.map +1 -1
  60. package/dist/app/analysis-types.d.ts +1 -0
  61. package/dist/app/analysis-types.d.ts.map +1 -1
  62. package/dist/app/analysis-types.js.map +1 -1
  63. package/dist/app/application-support.d.ts +4 -0
  64. package/dist/app/application-support.d.ts.map +1 -1
  65. package/dist/app/application-support.js.map +1 -1
  66. package/dist/app/application.d.ts.map +1 -1
  67. package/dist/app/application.js +28 -7
  68. package/dist/app/application.js.map +1 -1
  69. package/dist/app/journal.d.ts +4 -0
  70. package/dist/app/journal.d.ts.map +1 -1
  71. package/dist/app/journal.js +6 -0
  72. package/dist/app/journal.js.map +1 -1
  73. package/dist/app/storage-journal.d.ts +4 -1
  74. package/dist/app/storage-journal.d.ts.map +1 -1
  75. package/dist/app/storage-journal.js +5 -0
  76. package/dist/app/storage-journal.js.map +1 -1
  77. package/dist/bin/plain.js +1 -1
  78. package/dist/bin/plain.js.map +1 -1
  79. package/dist/domain/ids-core.d.ts +1 -1
  80. package/dist/domain/ids-core.d.ts.map +1 -1
  81. package/dist/domain/ids-core.js +5 -2
  82. package/dist/domain/ids-core.js.map +1 -1
  83. package/dist/ports/effect-storage.d.ts +5 -0
  84. package/dist/ports/effect-storage.d.ts.map +1 -1
  85. package/dist/startup/durable-runtime.js +2 -344
  86. package/dist/startup/durable-runtime.js.map +1 -6
  87. package/dist/startup/preview-runtime.js +170 -6
  88. package/dist/startup/preview-runtime.js.map +1 -6
  89. package/dist/startup/terminal-runtime.js +5 -13
  90. package/dist/startup/terminal-runtime.js.map +1 -6
  91. package/dist/version.d.ts +1 -1
  92. package/dist/version.d.ts.map +1 -1
  93. package/dist/version.js +21 -1
  94. package/dist/version.js.map +1 -1
  95. package/dist/views/shared/semantic-details.d.ts.map +1 -1
  96. package/dist/views/shared/semantic-details.js +5 -0
  97. package/dist/views/shared/semantic-details.js.map +1 -1
  98. package/package.json +8 -3
  99. package/dist/startup/chunks/analysis-comparison-facts-BYZX2KTR.js +0 -2
  100. package/dist/startup/chunks/analysis-comparison-facts-BYZX2KTR.js.map +0 -6
  101. package/dist/startup/chunks/analysis-comparison-record-VMUVZPUV.js +0 -2
  102. package/dist/startup/chunks/analysis-comparison-record-VMUVZPUV.js.map +0 -6
  103. package/dist/startup/chunks/chunk-2B6P3EZQ.js +0 -2
  104. package/dist/startup/chunks/chunk-2B6P3EZQ.js.map +0 -6
  105. package/dist/startup/chunks/chunk-3SLVNOQZ.js +0 -2
  106. package/dist/startup/chunks/chunk-3SLVNOQZ.js.map +0 -6
  107. package/dist/startup/chunks/chunk-5ZIGORCF.js +0 -6
  108. package/dist/startup/chunks/chunk-5ZIGORCF.js.map +0 -6
  109. package/dist/startup/chunks/chunk-6G7QKB6J.js +0 -2
  110. package/dist/startup/chunks/chunk-6G7QKB6J.js.map +0 -6
  111. package/dist/startup/chunks/chunk-AUAERYTD.js +0 -2
  112. package/dist/startup/chunks/chunk-AUAERYTD.js.map +0 -6
  113. package/dist/startup/chunks/chunk-BCT2WD5R.js +0 -2
  114. package/dist/startup/chunks/chunk-BCT2WD5R.js.map +0 -6
  115. package/dist/startup/chunks/chunk-ECYRVU25.js +0 -2
  116. package/dist/startup/chunks/chunk-ECYRVU25.js.map +0 -6
  117. package/dist/startup/chunks/chunk-EQDIVTWX.js +0 -2
  118. package/dist/startup/chunks/chunk-EQDIVTWX.js.map +0 -6
  119. package/dist/startup/chunks/chunk-FRHYXPNB.js +0 -2
  120. package/dist/startup/chunks/chunk-FRHYXPNB.js.map +0 -6
  121. package/dist/startup/chunks/chunk-GZKMBTCI.js +0 -3
  122. package/dist/startup/chunks/chunk-GZKMBTCI.js.map +0 -6
  123. package/dist/startup/chunks/chunk-GZLREBOD.js +0 -2
  124. package/dist/startup/chunks/chunk-GZLREBOD.js.map +0 -6
  125. package/dist/startup/chunks/chunk-HFZ5Q3X5.js +0 -2
  126. package/dist/startup/chunks/chunk-HFZ5Q3X5.js.map +0 -6
  127. package/dist/startup/chunks/chunk-ICFZ5GZR.js +0 -2
  128. package/dist/startup/chunks/chunk-ICFZ5GZR.js.map +0 -6
  129. package/dist/startup/chunks/chunk-JR4A5QXZ.js +0 -2
  130. package/dist/startup/chunks/chunk-JR4A5QXZ.js.map +0 -6
  131. package/dist/startup/chunks/chunk-LUXHNCKY.js +0 -2
  132. package/dist/startup/chunks/chunk-LUXHNCKY.js.map +0 -6
  133. package/dist/startup/chunks/chunk-NDSFD5HI.js +0 -2
  134. package/dist/startup/chunks/chunk-NDSFD5HI.js.map +0 -6
  135. package/dist/startup/chunks/chunk-NWDQFVYZ.js +0 -6
  136. package/dist/startup/chunks/chunk-NWDQFVYZ.js.map +0 -6
  137. package/dist/startup/chunks/chunk-PAPTIOCL.js +0 -2
  138. package/dist/startup/chunks/chunk-PAPTIOCL.js.map +0 -6
  139. package/dist/startup/chunks/chunk-PIJUYQ3B.js +0 -2
  140. package/dist/startup/chunks/chunk-PIJUYQ3B.js.map +0 -6
  141. package/dist/startup/chunks/chunk-PXRVFPRL.js +0 -2
  142. package/dist/startup/chunks/chunk-PXRVFPRL.js.map +0 -6
  143. package/dist/startup/chunks/chunk-RELMHYIG.js +0 -3
  144. package/dist/startup/chunks/chunk-RELMHYIG.js.map +0 -6
  145. package/dist/startup/chunks/chunk-RJAXEI5Z.js +0 -2
  146. package/dist/startup/chunks/chunk-RJAXEI5Z.js.map +0 -6
  147. package/dist/startup/chunks/chunk-RPJ2AWHI.js +0 -2
  148. package/dist/startup/chunks/chunk-RPJ2AWHI.js.map +0 -6
  149. package/dist/startup/chunks/chunk-TW2LBTSL.js +0 -2
  150. package/dist/startup/chunks/chunk-TW2LBTSL.js.map +0 -6
  151. package/dist/startup/chunks/chunk-TYNDYSMP.js +0 -2
  152. package/dist/startup/chunks/chunk-TYNDYSMP.js.map +0 -6
  153. package/dist/startup/chunks/chunk-TZNTMUGF.js +0 -117
  154. package/dist/startup/chunks/chunk-TZNTMUGF.js.map +0 -6
  155. package/dist/startup/chunks/chunk-UT4NB43O.js +0 -2
  156. package/dist/startup/chunks/chunk-UT4NB43O.js.map +0 -6
  157. package/dist/startup/chunks/chunk-VTNLVERY.js +0 -2
  158. package/dist/startup/chunks/chunk-VTNLVERY.js.map +0 -6
  159. package/dist/startup/chunks/configuration-wizard-G5VQFNBR.js +0 -3
  160. package/dist/startup/chunks/configuration-wizard-G5VQFNBR.js.map +0 -6
  161. package/dist/startup/chunks/production-connection-providers-3BNIYUIS.js +0 -2
  162. package/dist/startup/chunks/production-connection-providers-3BNIYUIS.js.map +0 -6
  163. package/dist/startup/chunks/production-connections-27KWJIR6.js +0 -2
  164. package/dist/startup/chunks/production-connections-27KWJIR6.js.map +0 -6
  165. package/dist/startup/chunks/profile-connection-dispatch-HFTWSEIR.js +0 -2
  166. package/dist/startup/chunks/profile-connection-dispatch-HFTWSEIR.js.map +0 -6
  167. package/dist/startup/chunks/supervisor-control-VPVKE7NI.js +0 -2
  168. package/dist/startup/chunks/supervisor-control-VPVKE7NI.js.map +0 -6
  169. package/dist/startup/chunks/supervisor-watch-X6TXO6GN.js +0 -2
  170. package/dist/startup/chunks/supervisor-watch-X6TXO6GN.js.map +0 -6
  171. package/dist/startup/chunks/trace-store-ZIU4S2VR.js +0 -6
  172. package/dist/startup/chunks/trace-store-ZIU4S2VR.js.map +0 -6
  173. package/dist/startup/chunks/ui-dispatch-NV3XTZDR.js +0 -3
  174. package/dist/startup/chunks/ui-dispatch-NV3XTZDR.js.map +0 -6
@@ -1,344 +1,2 @@
1
- import{a as Cv,b as Ov}from"./chunks/chunk-FRHYXPNB.js";import{a as z,b as ce,e as Ir,g as Av,h as Tv,k as ya}from"./chunks/chunk-ICFZ5GZR.js";import{a as mu,b as vv,c as fa,d as vr,e as Iv}from"./chunks/chunk-LUXHNCKY.js";import{a as yv,b as Mn,c as fu,d as hv,e as zt,f as ze,g as $o,h as gu,i as Be,j as Ye,k as Qe,l as Bn,m as sn,n as Rv,o as Sv,p as je,r as ma,t as Ev,y as Nv}from"./chunks/chunk-UT4NB43O.js";import{e as $v,h as ga}from"./chunks/chunk-GZLREBOD.js";import{A as Pv,a as uu,b as lu,c as ye,d as $,e as ua,f as L,g as K,h as iv,i as jn,j as pu,k as Un,l as S,m as Re,n as j,o as Z,p as av,q as sv,r as dv,s as cv,t as la,u as uv,v as lv,w as pv,x as fv,y as mv,z as gv}from"./chunks/chunk-TYNDYSMP.js";import{a as ke}from"./chunks/chunk-PAPTIOCL.js";import{a as To,b as q,c as re}from"./chunks/chunk-TW2LBTSL.js";import{b as _v,c as xv,d as kv}from"./chunks/chunk-VTNLVERY.js";import{a as ca,b as _t,c as pa,d as Ln,e as zn,f as bv,g as wv,j as qn}from"./chunks/chunk-EQDIVTWX.js";import{a as m}from"./chunks/chunk-6G7QKB6J.js";import{a as Ao,f as Oh,i as Te,k as $e}from"./chunks/chunk-ECYRVU25.js";import"./chunks/chunk-RPJ2AWHI.js";import{a as me,c as ev,d as tv,e as nv,g as aa,h as sa,i as da,j as Y,k as an,l as _e,m as U,n as Dn,o as Ce,p as rv,q as ov,r as cu}from"./chunks/chunk-GZKMBTCI.js";import{a as yu,c as ve,d as Co}from"./chunks/chunk-AUAERYTD.js";import{a as J,b as R}from"./chunks/chunk-JR4A5QXZ.js";import{A as Hh,B as Zh,C as Kh,D as Wh,E as Jh,H as Xe,I as we,J as Gh,K as Xh,L as St,M as Et,N as Yh,O as Qh,P as rn,R as on,S as oa,T as ia,a as Ph,b as Qi,c as ea,f as Nh,h as ta,j as Dh,k as G,l as jh,m as hr,n as na,o as Uh,p as be,q as nn,r as Lh,s as Mh,t as zh,u as Bh,v as qh,w as Fh,x as ra,z as Vh}from"./chunks/chunk-HFZ5Q3X5.js";import{a as Mt}from"./chunks/chunk-2B6P3EZQ.js";import{performance as Yi}from"node:perf_hooks";import{randomBytes as Wx,randomUUID as Dv,timingSafeEqual as Jx}from"node:crypto";var Gx="Braid",hu=class{#e;#t;#n;constructor(t,n){this.#e=t,this.#t=n}async setSecret(t){await(await this.load()).setSecret(t)}async getSecret(){return(await this.load()).getSecret()}async deleteCredential(){return(await this.load()).deleteCredential()}load(){return this.#n??=import("@napi-rs/keyring").then(({AsyncEntry:t})=>new t(this.#e,this.#t)),this.#n}},Xx=(e,t)=>new hu(e,t),vu=class{ref;#e;constructor(t,n){this.ref=t,this.#e=Buffer.from(n)}read(){if(!this.#e)throw new z("SECRET_HANDLE_CLOSED","Secret handle is closed");return Buffer.from(this.#e)}dispose(){this.#e?.fill(0),this.#e=void 0}};function Yx(e){return e instanceof Error?e.message:String(e)}function Qx(e){if(!(!e||typeof e!="object"||!("code"in e)))return typeof e.code=="string"?e.code:void 0}function jv(e){let t=Qx(e)?.replaceAll(/[-_\s]/gu,"").toLowerCase();return t==="noentry"||t==="notfound"||t==="credentialnotfound"?!0:/(?:no|missing)\s+(?:matching\s+)?(?:credential|entry)|not found/iu.test(Yx(e))}function ek(e,t){return new z("CREDENTIAL_STORE_UNAVAILABLE",`${e} credential facility is unavailable`,{cause:t})}var Oo=class{#e;constructor(t=Xx){this.#e=t}#t(t){return this.#e(Gx,t)}async store(t){let n=t.ref??ce(`cred:v1:${this.platform}-${Dv()}`);if(t.value.length===0)throw new z("EMPTY_SECRET","Credential values must not be empty");let o=Buffer.from(t.value);try{await this.#t(n).setSecret(o)}catch(r){throw new z("CREDENTIAL_WRITE_FAILED","The credential could not be stored",{cause:r})}finally{o.fill(0)}return n}async resolve(t){let n;try{n=await this.#t(t).getSecret()}catch(o){throw jv(o)?new z("CREDENTIAL_NOT_FOUND",`Credential ${t} was not found`):ek(this.platform,o)}if(!n||n.length===0)throw n?.fill(0),new z("CREDENTIAL_NOT_FOUND",`Credential ${t} was not found`);try{return new vu(t,n)}finally{n.fill(0)}}async remove(t){let n=this.#t(t);try{if(await n.deleteCredential())return;let r=await n.getSecret();try{if(r===void 0||r.length===0)return}finally{r?.fill(0)}throw new z("CREDENTIAL_REMOVE_FAILED","The credential store reported success without removing the credential")}catch(o){if(jv(o))return;throw o instanceof z?o:new z("CREDENTIAL_REMOVE_FAILED","The credential could not be removed",{cause:o})}}async available(){let t=this.#t(`__braid_availability_probe_v1__-${Dv()}`),n=Wx(32),o,r=!1;try{await t.setSecret(n),o=await t.getSecret();let i=o!==void 0&&o.length===n.length&&Jx(o,n);r=!0;let a=await t.deleteCredential();return i&&a}catch{return r||await t.deleteCredential().catch(()=>!1),!1}finally{n.fill(0),o?.fill(0)}}},Iu=class extends Oo{platform="macos-keychain"},bu=class extends Oo{platform="linux-secret-service"},wu=class extends Oo{platform="windows-credential-manager"};function Uv(){switch(process.platform){case"darwin":return new Iu;case"linux":return new bu;case"win32":return new wu;default:throw new z("CREDENTIAL_STORE_UNAVAILABLE",`No maintained credential adapter is available for ${process.platform}`)}}var Ru="BRAID_SANDBOX_INTERACTION_UNSUPPORTED",ha="BRAID_SANDBOX_CLEANUP_UNCONFIRMED",Lv=Object.freeze({[Ru]:"Sandbox requested user interaction, but this ephemeral route cannot retain and resume the environment",[ha]:"Sandbox deletion was not acknowledged; resource state is unknown"});function Mv(e){if(!(typeof e!="string"||!Object.hasOwn(Lv,e)))return Lv[e]}var br=Object.freeze({streaming:{live:!0,replay:!1,detach:!1,turnIdempotency:!0},sessions:{continue:!1,messages:!1},controls:{cancel:!0,steer:!1,queue:!0,status:!1,recreate:!1},events:{stableIdentity:!1,sequence:!0,cursor:!1},usage:!0}),ot=Object.freeze({streaming:{live:!1,replay:!1,detach:!1,turnIdempotency:!1},sessions:{continue:!1,messages:!1},controls:{cancel:!1,steer:!1,queue:!1,status:!1,recreate:!1},events:{stableIdentity:!1,sequence:!1,cursor:!1},usage:!1});function zv(e,t){return{streaming:{live:e.streaming.live,replay:!1,detach:!1,turnIdempotency:e.streaming.turnIdempotency},sessions:{continue:e.sessions.continue,messages:!1},controls:{cancel:t,steer:!1,queue:!1,status:!1,recreate:!1},events:{stableIdentity:!1,sequence:!0,cursor:!1},usage:e.usage,environment:e}}function Po(e){return e.kind==="prepared-execution"}import{contentAddress as tk,createSandboxToolPartState as nk,mapExecutorResult as rk,mapSandboxToolEvent as ok}from"@tangle-network/agent-runtime/kernel";import{collectAgentFinalMessageText as ik,collectAgentResponseText as ak}from"@tangle-network/sandbox";function Bv(e){return(t,n)=>rk(e(t,n),o=>{let r=sk(o.out),i=r.events??[],a=ik([...i])??ak([...i])??"",s=ck(i),d=uk(i),c={content:a,sandboxOutcome:d,...s.length===0?{}:{toolCalls:s},...r.estimatedCostUsd===void 0?{}:{estimatedCostUsd:r.estimatedCostUsd},...r.promptCache===void 0?{}:{promptCache:r.promptCache}};return{outRef:tk({kind:"braid-sandbox-turn",source:o.outRef,out:c}),out:c,...o.verdict===void 0?{}:{verdict:o.verdict}}})}function qv(e){if(e===null||typeof e!="object"||Array.isArray(e))return;let t=e.sandboxOutcome;if(t===null||typeof t!="object"||Array.isArray(t))return;let n=t.status;if(!["completed","failed","aborted"].includes(String(n)))return;let o=t.reason;return Object.freeze({status:n,...typeof o=="string"&&o.length>0?{reason:o}:{}})}function sk(e){if(e===null||typeof e!="object"||Array.isArray(e))return{};let t=e,n=Array.isArray(t.events)?t.events.filter(dk):void 0,o=typeof t.estimatedCostUsd=="number"&&Number.isFinite(t.estimatedCostUsd)?t.estimatedCostUsd:void 0,r=mk(t.promptCache);return{...n===void 0?{}:{events:n},...o===void 0?{}:{estimatedCostUsd:o},...r===void 0?{}:{promptCache:r}}}function dk(e){return e!==null&&typeof e=="object"&&typeof e.type=="string"&&e.data!==null&&typeof e.data=="object"&&!Array.isArray(e.data)}function ck(e){let t=nk();return e.flatMap(n=>ok(n,t).flatMap(o=>o.type==="tool_call"?[{...o.toolCallId===void 0?{}:{id:o.toolCallId},name:o.toolName,arguments:o.args??{}}]:[]))}function uk(e){let t=!1,n=!1,o,r;for(let i of e){let a=i.type.toLowerCase(),s=Vv(i.data.status),d=pk(i.data);a==="error"&&(r??=d??"Sandbox agent reported an error"),(a==="result"||a==="done"||a==="final")&&(t=!0),s==="failed"?r??=d??"Sandbox agent reported a failed turn":s==="aborted"?o??=d??"Sandbox agent aborted the turn":s==="interaction-required"&&(n=!0),lk(i)&&(n=!0),i.data.success===!1&&(r??=d??"Sandbox agent reported a failed turn");let c=fk(i.data.toolInvocations);c!==void 0&&(r??=`Sandbox tool ${c} failed`)}return n?{status:"failed",reason:Ru}:r!==void 0?{status:"failed",reason:r}:o!==void 0?{status:"aborted",reason:o}:t?{status:"completed"}:{status:"failed",reason:"Sandbox agent stream ended without a terminal event"}}function lk(e){let t=e.type.toLowerCase();return t==="interaction"||t==="plan.submitted"||[e.data.approval,e.data.plan,e.data.question].some(Su)||Su(e.data.outcome)&&Vv(e.data.outcome.type)==="interaction-required"?!0:Array.isArray(e.data.toolInvocations)?e.data.toolInvocations.some(n=>Su(n)&&n.isError===!0&&Fv(n.result,"HUB_APPROVAL_REQUIRED")):!1}function Fv(e,t,n=0,o=new Set){if(typeof e=="string")return e.includes(t);if(n>=8||e!==null&&typeof e=="object"&&o.has(e)||e===null||typeof e!="object")return!1;o.add(e);try{return Object.values(e).some(r=>Fv(r,t,n+1,o))}catch{return!1}}function Su(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Vv(e){if(typeof e!="string")return;let t=e.trim().toLowerCase().replaceAll("-","_");if(["success","succeeded","completed","complete","done","ok"].includes(t))return"completed";if(["failed","failure","error"].includes(t))return"failed";if(["cancelled","canceled","aborted"].includes(t))return"aborted";if(["blocked","blocked_on_approval","awaiting_question","awaiting_plan_decision"].includes(t))return"interaction-required"}function pk(e){for(let t of[e.error,e.message,e.reason,e.errorMessage]){let n=typeof t=="string"?t:t!==null&&typeof t=="object"&&!Array.isArray(t)?t.message:void 0;if(typeof n!="string"||n.trim().length===0)continue;let o=Ce(n,"");if(o.length>0)return o}}function fk(e){if(Array.isArray(e))for(let t of e){if(t===null||typeof t!="object"||Array.isArray(t))continue;let n=t;if(n.isError===!0)return U(n.toolName)??"operation"}}function mk(e){if(e===null||typeof e!="object"||Array.isArray(e))return;let t=Object.entries(e).filter(n=>typeof n[1]=="string"||typeof n[1]=="number"&&Number.isFinite(n[1]));return t.length===0?void 0:Object.fromEntries(t)}var wr=class e{admissionMode;#e;#t;#n=new Map;#r=new Map;#o=[];#i;static#s=128;constructor(t,n,o={}){this.#e=t,this.admissionMode=o.admissionMode??"async",typeof n=="function"?(this.#t=n,this.#i={...br,controls:{...br.controls,cancel:!0}}):this.#i=n??{...ot,streaming:{...ot.streaming,live:!0}}}capabilities(){return this.#i}admit(t){let n=this.#e(t);return Ik(n)?n.then(o=>this.#a(t,o)):this.#a(t,n)}#a(t,n){let o=$e(t.profile),r=Po(n),i=r?n.providerSessionId:void 0,a=r&&n.capabilities!==void 0?zv(n.capabilities,n.cancellation!==void 0):this.#i,s=ca(r?n.materializationReceipt:{backendKind:n.kind,provider:"agent-runtime"}),d=typeof s.provider=="string"?s.provider:"agent-runtime";return r&&n.cancellation!==void 0&&!this.#n.has(t.runId)&&this.#n.set(t.runId,{localAbort:new AbortController,cancellation:n.cancellation}),this.#u(t.runId,{key:Zv(t,o),execution:n}),{capabilities:a,provider:d,...r&&n.environmentId!==void 0?{environmentId:n.environmentId}:{},...i===void 0?{}:{providerSessionId:i},materializationReceipt:s,profileDigest:o,capabilitiesDigest:R(a),materializationDigest:R(s)}}async cancelRun(t){if(this.#t){let r=await this.#t({runId:t.runId,operationId:t.operationId,reason:t.reason??"Cancelled by user",...t.signal===void 0?{}:{signal:t.signal}});return r.status==="cancelled"?{operationId:t.operationId,outcome:"accepted"}:{operationId:t.operationId,outcome:"unknown",detail:r.reason}}let n=this.#n.get(t.runId);if(!n)return{operationId:t.operationId,outcome:"unknown",detail:"The provider did not acknowledge cancellation"};if(n.cancellation?.kind!=="runtime-executor-teardown")return n.localAbort.abort(new Error(t.reason??"Cancelled by user")),{operationId:t.operationId,outcome:"unknown",detail:"Provider cancellation is unsupported; only the local iterator was stopped"};if(n.executor===void 0)return n.localAbort.abort(new Error(t.reason??"Cancelled by user")),{operationId:t.operationId,outcome:"unknown",detail:"Runtime did not create an executor before cancellation was requested"};let o=await vk(n.executor,t.operationId);return o.outcome==="accepted"||o.outcome==="already-applied"?n.localAbort.abort(new Error(t.reason??"Cancelled by user")):o.outcome==="unknown"&&n.localAbort.abort(new Error(t.reason??"Cancellation outcome is unknown")),o}async*streamTurn(t){let n=this.#n.get(t.runId),o=n?.localAbort??new AbortController,r=()=>o.abort(t.signal.reason);t.signal.aborted?r():t.signal.addEventListener("abort",r,{once:!0});let i=n??{localAbort:o};n===void 0&&this.#n.set(t.runId,i);try{o.signal.throwIfAborted();let a=$e(t.profile),s=this.#r.get(t.runId),d=s?.key===Zv(t,a)?s.execution:await this.#e(t);this.#c(t.runId);let c=Po(d)?d:void 0;i.cancellation=c?.cancellation;let u=Po(d)?d.backend:d,l=Po(d)?d.observation:void 0,f=i.cancellation===void 0?u:hk(u,p=>{i.executor=p}),{streamAgentTurn:g}=await import("@tangle-network/agent-runtime/kernel");try{let p;for await(let w of g(f,t.text,{signal:o.signal,preserveToolParts:!0}))w.type==="final"?p=w:yield w;let v=l===void 0?void 0:await Hv(l);v!==void 0&&(yield v),p!==void 0&&(yield yk(gk(p),v))}catch(p){if(l!==void 0){let v=await Hv(l);v!==void 0&&(yield v)}throw p}}finally{t.signal.removeEventListener("abort",r),this.#n.delete(t.runId)}}#u(t,n){for(this.#r.has(t)||this.#o.push(t),this.#r.set(t,n);this.#o.length>e.#s;){let o=this.#o.shift();o!==void 0&&this.#r.delete(o)}}#c(t){this.#r.delete(t);let n=this.#o.indexOf(t);n>=0&&this.#o.splice(n,1)}};function gk(e){if(e.status!=="completed")return e;let t=e.metadata?.result,n=t!==null&&typeof t=="object"&&!Array.isArray(t)?t.output:void 0,o=qv(n);if(o===void 0||o.status==="completed")return e;let r=o.reason??`Sandbox agent reported a ${o.status} turn`;return{...e,status:o.status,reason:r,...o.status==="failed"?{error:{kind:"backend",message:r}}:{}}}function yk(e,t){return e.status!=="completed"||t?.observation.cleanup!=="delete-after-turn"||t.observation.lifecycle==="destroyed"?e:{...e,status:"failed",reason:ha,error:{kind:"backend",message:ha}}}function hk(e,t){return{...e,factory:(n,o)=>{let r=e.factory(n,o);return t(r),r}}}async function vk(e,t){return Promise.resolve().then(()=>e.teardown("infinity")).then(({destroyed:n})=>n?{operationId:t,outcome:"accepted",detail:"Provider cancellation acknowledged"}:{operationId:t,outcome:"unknown",detail:"Runtime did not confirm executor teardown; provider state is unknown"}).catch(()=>({operationId:t,outcome:"unknown",detail:"Provider cancellation failed before acknowledgement"}))}async function Hv(e){try{let t=await e.snapshot();return t===void 0?void 0:{type:"braid.execution.observed",observation:t,timestamp:t.observedAt}}catch{return}}function Ik(e){return typeof e=="object"&&e!==null&&"then"in e}function Zv(e,t){return R({operationId:e.operationId,runId:e.runId,text:e.text,profileDigest:t,connectionId:e.connectionId??null,sessionId:e.sessionId??null,contextBoundary:e.contextBoundary??null})}var va=class extends Error{code="CONNECTION_REQUIRED";constructor(){super("Configure a connection before starting a run"),this.name="ExecutionUnavailableError"}},Ia=class{admissionMode="sync";capabilities={cancel:!1};admit(t){throw new va}streamTurn(t){return{[Symbol.asyncIterator](){return{next:async()=>{throw new va}}}}}};import{randomBytes as HO}from"node:crypto";import{dirname as BS}from"node:path";import{performance as sr}from"node:perf_hooks";import{closeSync as Jv,constants as Kv,fstatSync as Gv,lstatSync as bk,openSync as wk,readlinkSync as Rk,readSync as Sk,realpathSync as Xv,statSync as Ek}from"node:fs";import{isAbsolute as Ra,join as _k,parse as xk,relative as kk,resolve as ba,sep as Yv}from"node:path";var wa=128;function Ak(e,t){let n=kk(ba(t),ba(e));return n===""||n!==".."&&!n.startsWith(`..${Yv}`)&&!Ra(n)}function Eu(e,t){if(Ak(e,t))throw new z("HEADLESS_KEY_IN_WORKSPACE","Headless key files must be outside the workspace")}function Qv(e){try{return Xv(e)}catch(t){throw new z("HEADLESS_KEY_WORKSPACE","The workspace root could not be resolved",{cause:t})}}function Tk(e){let t=ba(e),n=xk(t).root,o=n;for(let r of t.slice(n.length).split(Yv).filter(Boolean)){o=_k(o,r);let i;try{i=bk(o)}catch(a){throw new z("HEADLESS_KEY_UNREADABLE",`Cannot inspect key path ${o}`,{cause:a})}if(i.isSymbolicLink())throw new z("HEADLESS_KEY_SYMLINK","Symlinked headless key paths are rejected")}}function eI(e){if(!e.isFile())throw new z("HEADLESS_KEY_NOT_FILE","Headless key source must be a regular file");if((e.mode&511)!==384)throw new z("HEADLESS_KEY_PERMISSIONS","Headless key files must have mode 0600");if(typeof process.getuid=="function"&&e.uid!==process.getuid())throw new z("HEADLESS_KEY_OWNER","Headless key file ownership does not match the process");if(e.nlink!==1)throw new z("HEADLESS_KEY_LINK_COUNT","Headless key files must have exactly one filesystem link")}function $k(e){if(e.length===32)return Buffer.from(e);if(e.length>wa)throw new z("HEADLESS_KEY_SIZE","Headless key input is too large");let t=e.toString("utf8").trim();if(!/^[0-9a-f]{64}$/iu.test(t))throw new z("HEADLESS_KEY_FORMAT","Headless keys must be 32 bytes or 64 hexadecimal characters");return Buffer.from(t,"hex")}function tI(e){try{let t=Rk(`/proc/self/fd/${e}`);if(t.includes(" (deleted)"))throw new z("HEADLESS_KEY_FD_DELETED","Deleted headless key files are rejected");return Ra(t)?ba(t):void 0}catch(t){if(t instanceof z)throw t;return}}function Ck(e,t,n,o){let r=Qv(n),i=tI(e);if(i){Eu(i,r);return}let a,s;try{a=Xv(t),s=Ek(a)}catch(d){throw new z("HEADLESS_KEY_PATH_CHANGED","The headless key path changed while it was being opened",{cause:d})}if(s.dev!==o.dev||s.ino!==o.ino)throw new z("HEADLESS_KEY_PATH_CHANGED","The headless key path changed while it was being opened");Eu(a,r)}function Ok(e){if(!Number.isInteger(e)||e<3)throw new z("HEADLESS_KEY_FD","Headless key file descriptors must be integers >= 3");let t;try{t=Gv(e)}catch(n){throw new z("HEADLESS_KEY_FD","The inherited headless key descriptor is invalid",{cause:n})}if(t.nlink===0)throw new z("HEADLESS_KEY_FD_DELETED","Deleted headless key files are rejected");if(eI(t),t.size>wa)throw new z("HEADLESS_KEY_SIZE","Headless key input is too large");return t}function Wv(e,t){Ok(e);let n=tI(e);if(!n)throw new z("HEADLESS_KEY_FD_PATH","The inherited headless key descriptor path could not be verified");Eu(n,Qv(t));let o=Buffer.alloc(wa+1),r=0;for(;r<o.length;){let i=Sk(e,o,r,o.length-r,r);if(i===0)break;r+=i}if(r>wa)throw o.fill(0),new z("HEADLESS_KEY_SIZE","Headless key input is too large");try{return $k(o.subarray(0,r))}finally{o.fill(0)}}function nI(e){if(!e||typeof e!="object")throw new z("HEADLESS_KEY_SOURCE","A protected file or descriptor is required");if(e.type==="fd"){if(!e.workspaceRoot)throw new z("HEADLESS_KEY_SOURCE","Headless key descriptors require a workspace root");return Wv(e.fd,e.workspaceRoot)}if(e.type!=="file"||!Ra(e.path)||!e.workspaceRoot)throw new z("HEADLESS_KEY_SOURCE","Headless keys require an absolute mode-0600 file path and workspace root");let t=Pk(e.path,e.workspaceRoot);try{return Wv(t,e.workspaceRoot)}finally{Nk(t)}}function Pk(e,t){if(!Ra(e))throw new z("HEADLESS_KEY_SOURCE","Headless key paths must be absolute");Tk(e);let n=wk(e,Kv.O_RDONLY|(Kv.O_NOFOLLOW??0));try{let o=Gv(n);return eI(o),Ck(n,e,t,o),n}catch(o){throw Jv(n),o}}function Nk(e){Jv(e)}import{constants as Bt,closeSync as Fn,fchmodSync as Dk,fstatSync as Sa,openSync as Do,unlinkSync as jk}from"node:fs";import{basename as _u,dirname as rI,resolve as iI}from"node:path";var y=class extends Error{code;constructor(t,n,o){super(n,o),this.name="StorageError",this.code=t}};var xu=Bt.O_DIRECTORY|(Bt.O_NOFOLLOW??0),ku=Bt.O_RDWR|(Bt.O_NOFOLLOW??0);function Au(e){return new y("STORAGE_PATH_RACE_UNSUPPORTED",e)}function No(e){if(process.platform==="linux")return`/proc/self/fd/${e}`;if(process.platform==="darwin"||process.platform==="freebsd")return`/dev/fd/${e}`;throw Au("This platform has no inode-bound SQLite descriptor path")}function oI(e,t){return e.dev===t.dev&&e.ino===t.ino}function Uk(e,t){if(!e.isDirectory())throw new y("STORAGE_PATH",`Not a directory: ${t}`);if(typeof process.getuid=="function"&&e.uid!==process.getuid())throw new y("STORAGE_OWNERSHIP",`Storage directory is not owned by this process: ${t}`);if((Number(e.mode)&63)!==0)throw new y("STORAGE_PERMISSIONS",`Storage directory is too permissive: ${t}`)}function Lk(e,t){if(!e.isFile()||e.nlink!==1)throw new y("STORAGE_INPUT_IDENTITY",`SQLite path must be a single-linked regular file: ${t}`);if(typeof process.getuid=="function"&&e.uid!==process.getuid())throw new y("STORAGE_OWNERSHIP",`SQLite path is not owned by this process: ${t}`)}function Mk(e){let t=Do("/",xu);try{for(let n of iI(e).split("/").filter(Boolean)){let o=Do(`${No(t)}/${n}`,xu);Fn(t),t=o}return t}catch(n){throw Fn(t),n}}function zk(e,t){let n=`${No(e)}/${_u(t)}`,o=ku|Bt.O_CREAT|Bt.O_EXCL;try{return{fileDescriptor:Do(n,o,384),newDatabase:!0}}catch(r){if(r.code!=="EEXIST")throw r;return{fileDescriptor:Do(n,ku),newDatabase:!1}}}function Ea(e,t,n){if(process.platform==="win32"||Bt.O_NOFOLLOW===void 0||Bt.O_DIRECTORY===void 0)throw Au("This platform cannot provide no-follow inode-bound SQLite opening");if((xu&Bt.O_NOFOLLOW)===0)throw Au("The platform did not expose O_NOFOLLOW");let o=iI(e),r=Mk(rI(o)),i,a,s=!1,d;try{let c=Sa(r);Uk(c,rI(o));let u=zk(r,o);i=u.fileDescriptor,s=u.newDatabase;let l=Sa(r);if(!oI(c,l))throw new y("STORAGE_PATH_RACE","SQLite parent directory changed during open");let f=Sa(i);if(d=f,Lk(f,o),!u.newDatabase&&f.size===0)throw new y("STORAGE_CORRUPT_EMPTY",`Existing SQLite path is empty: ${o}`);return Dk(i,384),a=t(No(i),{timeout:n}),{database:a,fileDescriptor:i,newDatabase:u.newDatabase}}catch(c){try{a?.close()}catch{}if(i!==void 0&&Fn(i),s)try{let u=Do(`${No(r)}/${_u(o)}`,ku);try{let l=Sa(u);d!==void 0&&oI(d,l)&&jk(`${No(r)}/${_u(o)}`)}finally{Fn(u)}}catch{}throw c instanceof y?c:new y("STORAGE_PATH",`Cannot open SQLite path: ${o}`,{cause:c})}finally{Fn(r)}}function aI(e){try{e.database.close()}finally{Fn(e.fileDescriptor)}}function sI(e,t){let n=e.close.bind(e),o=!1;return e.close=()=>{if(!o){o=!0;try{n()}finally{Fn(t)}}},e}import{readFileSync as Bk}from"node:fs";import{createRequire as qk}from"node:module";import{dirname as dI,join as Fk}from"node:path";var Tu="better-sqlite3-multiple-ciphers",$u="13.0.3",Cu=Buffer.from("raw:","ascii");function Vk(e){try{let t=Fk(dI(dI(e)),"package.json"),n=JSON.parse(Bk(t,"utf8"));return typeof n.version=="string"?n.version:void 0}catch{return}}function cI(){let e=qk(import.meta.url),t;try{t=e.resolve(Tu)}catch(i){throw new y("SQLITE_CIPHER_UNAVAILABLE",`${Tu}@${$u} is not installed`,{cause:i})}let n=Vk(t);if(n!==void 0&&n!==$u)throw new y("SQLITE_DRIVER_VERSION",`Expected ${Tu}@${$u}, found ${n}`);let o;try{o=e(t)}catch(i){throw new y("SQLITE_CIPHER_UNAVAILABLE","The encrypted SQLite native binding failed to load",{cause:i})}let r=o.default??o;if(typeof r!="function")throw new y("SQLITE_CIPHER_UNAVAILABLE","The encrypted SQLite module has no constructor");return(i,a)=>{try{return new r(i,a)}catch(s){throw new y("SQLITE_CIPHER_UNAVAILABLE","The encrypted SQLite native binding failed to initialize",{cause:s})}}}function _a(e,t,n={}){if(!e.key||!e.rekey)throw new y("SQLITE_CIPHER_UNAVAILABLE","The SQLite binding does not expose key and rekey operations");if(t.length!==32)throw new y("SQLITE_KEY_INVALID","SQLite keys must be exactly 32 bytes");try{e.pragma("cipher = 'sqlcipher'"),e.pragma("legacy = 4");let r=Buffer.allocUnsafe(Cu.length+t.length);Cu.copy(r),t.copy(r,Cu.length);try{n.newDatabase?e.rekey(r):e.key(r)}finally{r.fill(0)}e.prepare("SELECT count(*) AS count FROM sqlite_master").get()}catch(r){throw new y("SQLITE_KEY_REJECTED","The encrypted SQLite key was rejected",{cause:r})}let o=e.pragma("cipher",{simple:!0});if(typeof o!="string"||o.toLowerCase()!=="sqlcipher")throw new y("SQLITE_CIPHER_UNAVAILABLE","The SQLite binding did not activate SQLCipher mode")}import{constants as yI}from"node:fs";import{createHash as eA}from"node:crypto";import{open as Pu,rm as Lo}from"node:fs/promises";import{dirname as Nu}from"node:path";import{closeSync as Hk,constants as dn,fchmodSync as Zk,fstatSync as Kk,openSync as Wk,statSync as p0}from"node:fs";import{chmod as uI,lstat as jo,mkdir as Jk,open as xa}from"node:fs/promises";import{isAbsolute as lI,join as Gk,relative as Xk,resolve as Yk,sep as pI}from"node:path";function ut(e,t){if(!lI(e))throw new y("STORAGE_PATH",`${t} must be an absolute path`);return Yk(e)}function Qk(e,t){let n=Xk(t,e);return n===""||n!==".."&&!n.startsWith(`..${pI}`)&&!lI(n)}async function gt(e,t,n,o=!0){let r=ut(e,n),i=ut(t,"Approved root");if(!Qk(r,i))throw new y("STORAGE_APPROVED_ROOT",`${n} must remain inside the approved root`);let a=await jo(i).catch(c=>{throw new y("STORAGE_APPROVED_ROOT","Approved root could not be inspected",{cause:c})});if(a.isSymbolicLink()||!a.isDirectory())throw new y("STORAGE_APPROVED_ROOT","Approved root must be a directory");let s=r.slice(i.length).split(pI).filter(Boolean),d=i;for(let c of s){d=Gk(d,c);try{let u=await jo(d);if(u.isSymbolicLink())throw new y("STORAGE_SYMLINK",`${n} contains a symbolic link`);if(d!==r&&!u.isDirectory())throw new y("STORAGE_PATH",`${n} contains a non-directory component`)}catch(u){if(u instanceof y)throw u;if(u.code==="ENOENT"&&o)break;throw new y("STORAGE_PATH",`Cannot inspect ${n}`,{cause:u})}}}async function Uo(e){await Jk(e,{recursive:!0,mode:448}),await uI(e,448)}async function Rr(e,t){let n;try{n=await xa(e,dn.O_RDONLY|(dn.O_NOFOLLOW??0));let o=await n.stat();if(!o.isFile()||o.nlink!==1)throw new y("STORAGE_INPUT_IDENTITY",`${t} must be a single linked regular file`);return n}catch(o){throw await n?.close().catch(()=>{}),o instanceof y?o:new y("STORAGE_INPUT_UNREADABLE",`Cannot open ${t}`,{cause:o})}}async function fI(e,t,n){let o=await Rr(e,n),r,i=Buffer.allocUnsafe(1024*1024);try{for(r=await xa(t,dn.O_WRONLY|dn.O_CREAT|dn.O_EXCL|(dn.O_NOFOLLOW??0),384);;){let a=await o.read(i,0,i.length,null);if(a.bytesRead===0)break;let s=0;for(;s<a.bytesRead;){let d=await r.write(i,s,a.bytesRead-s);s+=d.bytesWritten}}await r.sync()}catch(a){throw a.code==="EEXIST"?new y("STORAGE_TEMP_EXISTS",`Temporary ${n} already exists`,{cause:a}):a instanceof y?a:new y("STORAGE_COPY_FAILED",`Could not copy ${n}`,{cause:a})}finally{i.fill(0),await r?.close().catch(()=>{}),await o.close().catch(()=>{})}}async function mI(e,t){try{let n=await jo(e);if(n.isSymbolicLink())throw new y("STORAGE_SYMLINK",`Symlinked storage path rejected: ${e}`);if(t&&!n.isFile())throw new y("STORAGE_PATH",`Storage path is not a file: ${e}`)}catch(n){if(n instanceof y||t||n.code!=="ENOENT")throw n}}async function ka(e){let t;try{t=Wk(e,dn.O_RDONLY|(dn.O_NOFOLLOW??0));let n=Kk(t);if(!n.isFile()||n.nlink!==1)throw new y("STORAGE_INPUT_IDENTITY",`Storage artifact is not a regular single-linked file: ${e}`);Zk(t,384)}catch(n){throw new y("STORAGE_PERMISSIONS",`Could not restrict storage artifact ${e}`,{cause:n})}finally{t!==void 0&&Hk(t)}}async function Aa(e){let t;try{t=await jo(e)}catch(n){if(n.code==="ENOENT")return!1;throw new y("STORAGE_PERMISSIONS",`Could not inspect live SQLite artifact ${e}`,{cause:n})}try{if(!t.isFile()||t.isSymbolicLink()||t.nlink!==1)throw new y("STORAGE_INPUT_IDENTITY",`Live SQLite artifact is not a regular single-linked file: ${e}`);if(typeof process.getuid=="function"&&t.uid!==process.getuid())throw new y("STORAGE_OWNERSHIP",`Live SQLite artifact is not owned by this process: ${e}`);await uI(e,384);let n=await jo(e);if(!n.isFile()||n.isSymbolicLink()||n.nlink!==1||t.dev!==n.dev||t.ino!==n.ino||typeof process.getuid=="function"&&n.uid!==process.getuid()||(n.mode&511)!==384)throw new y("STORAGE_INPUT_IDENTITY",`Live SQLite artifact changed while permissions were restricted: ${e}`);return!0}catch(n){throw n instanceof y?n:new y("STORAGE_PERMISSIONS",`Could not restrict live SQLite artifact ${e}`,{cause:n})}}async function Ou(e){let t=await xa(e,"r");try{await t.sync()}finally{await t.close()}}async function pe(e){if(process.platform==="win32")return;let t=await xa(e,"r");try{await t.sync()}finally{await t.close()}}function gI(e){if(!Number.isSafeInteger(e)||e<=0)return!1;try{return process.kill(e,0),!0}catch(t){return t.code==="EPERM"}}function Q(e){if(e instanceof y)return e;let t=e instanceof Error?e.message:String(e);return/busy|locked/iu.test(t)?new y("STORAGE_LOCKED","SQLite is locked",{cause:e}):/full|disk|no space/iu.test(t)?new y("STORAGE_COMMIT_FAILED","SQLite could not commit because storage is full",{cause:e}):new y("STORAGE_COMMIT_FAILED","SQLite transaction failed",{cause:e})}function Ta(e){return`${e}.initializing`}function Du(e,t=process.pid){return{version:1,databaseDigest:eA("sha256").update(e).digest("hex"),pid:t}}function tA(e){if(!Number.isSafeInteger(e)||e<=0)return!1;try{return process.kill(e,0),!0}catch(t){return t.code==="EPERM"}}async function ju(e){let t=Ta(e),n;try{n=await Pu(t,yI.O_RDONLY|(yI.O_NOFOLLOW??0));let o=await n.stat();if(!o.isFile()||o.nlink!==1||o.size>512)throw new y("STORAGE_INITIALIZATION_MARKER","Database initialization marker is invalid");if(process.platform!=="win32"&&(o.mode&511)!==384)throw new y("STORAGE_INITIALIZATION_MARKER","Database initialization marker must have mode 0600");if(typeof process.getuid=="function"&&o.uid!==process.getuid())throw new y("STORAGE_INITIALIZATION_MARKER","Database initialization marker ownership does not match the process");let r=await n.readFile({encoding:"utf8"}),i=JSON.parse(r),a=Du(e,0).databaseDigest;if(i.version!==1||i.databaseDigest!==a||!Number.isSafeInteger(i.pid))throw new y("STORAGE_INITIALIZATION_MARKER","Database initialization marker is invalid");return tA(i.pid)?"active":"stale"}catch(o){if(o.code==="ENOENT")return"none";throw o instanceof y?o:new y("STORAGE_INITIALIZATION_MARKER","Database initialization marker could not be read",{cause:o})}finally{await n?.close().catch(()=>{})}}async function hI(e){let t=Ta(e);for(;;){let n;try{n=await Pu(t,"wx",384),await n.writeFile(`${J(Du(e))}
2
- `),await n.sync(),await n.close(),n=void 0,await pe(Nu(e));return}catch(o){if(await n?.close().catch(()=>{}),o.code!=="EEXIST")throw o;if(await ju(e)==="active")throw new y("STORAGE_INITIALIZING","Another process is initializing the encrypted database");await Lo(t,{force:!0})}}}async function $a(e){await Lo(Ta(e),{force:!0}),await pe(Nu(e))}async function vI(e){let t=Ta(e),n;try{n=await Pu(t,"r+"),await n.truncate(0),await n.writeFile(`${J(Du(e,0))}
3
- `),await n.sync()}finally{await n?.close().catch(()=>{})}}async function Uu(e){await Lo(e,{force:!0}),await Lo(`${e}-wal`,{force:!0}),await Lo(`${e}-shm`,{force:!0}),await pe(Nu(e))}import{randomUUID as nA}from"node:crypto";import{constants as Ca}from"node:fs";import{lstat as rA,open as bI,rename as Lu,rm as Mu,stat as II,unlink as Oa}from"node:fs/promises";import{dirname as Vn}from"node:path";function cn(e){return`${e}.restore.manifest`}async function oA(e){let t=cn(e);try{await rA(t)}catch(o){if(o.code==="ENOENT")return;throw o}let n;try{n=await Rr(t,"restore manifest");let o=await n.readFile({encoding:"utf8"});if(o.length>16*1024)throw new y("RESTORE_MANIFEST_INVALID","Restore manifest is too large");let r=JSON.parse(o);if(r.version!==1||typeof r.operationId!="string"||typeof r.source!="string"||typeof r.recovery!="string"||typeof r.temporary!="string"||typeof r.displaced!="string"||typeof r.displacedWal!="string"||typeof r.displacedSharedMemory!="string"||!["prepared","candidate-ready","live-displaced","installed","verified"].includes(r.phase??""))throw new y("RESTORE_MANIFEST_INVALID","Restore manifest is invalid");return r}catch(o){throw o instanceof y?o:new y("RESTORE_MANIFEST_INVALID","Restore manifest could not be read",{cause:o})}finally{await n?.close().catch(()=>{})}}async function Sr(e,t,n){let o=cn(e),r=`${o}.write-${nA()}`,i;try{n?.(`before:restore.manifest.${t.phase}`),i=await bI(r,Ca.O_WRONLY|Ca.O_CREAT|Ca.O_EXCL|(Ca.O_NOFOLLOW??0),384),await i.writeFile(`${J(t)}
4
- `),await i.sync(),await i.close(),i=void 0,await Lu(r,o),await pe(Vn(e)),n?.(`after:restore.manifest.${t.phase}`)}catch(a){throw await i?.close().catch(()=>{}),await Mu(r,{force:!0}).catch(()=>{}),a instanceof y?a:new y("RESTORE_MANIFEST_WRITE_FAILED","Restore manifest could not be written",{cause:a})}}async function Pa(e){for(;;){let t;try{t=await bI(e,"wx",384),await t.writeFile(`${J({version:1,pid:process.pid})}
5
- `),await t.close(),t=void 0;let n=!1;return{release:async()=>{n||(n=!0,await Oa(e).catch(o=>{if(o.code!=="ENOENT")throw o}))}}}catch(n){if(await t?.close().catch(()=>{}),n.code!=="EEXIST")throw new y("STORAGE_LOCK_FAILED","Could not acquire the storage lock",{cause:n});let o,r;try{if(r=await Rr(e,"storage lock"),(await r.stat()).size>1024)throw new y("STORAGE_LOCKED","Storage lock is held by another process");o=JSON.parse(await r.readFile({encoding:"utf8"}))}catch{throw new y("STORAGE_LOCKED","Storage lock is held by another process")}finally{await r?.close().catch(()=>{})}let i=typeof o.pid=="number"?o.pid:0;if(gI(i))throw new y("STORAGE_LOCKED","Storage lock is held by another process");await Oa(e).catch(a=>{if(a.code!=="ENOENT")throw a})}}}async function wI(e,t){let n=await oA(e);if(!n)return;for(let[a,s]of Object.entries(n))a==="version"||a==="operationId"||a==="phase"||await gt(s,t,`Restore manifest ${a}`,!0);let o=e,r=await II(n.displaced).then(()=>!0).catch(()=>!1),i=await II(o).then(()=>!0).catch(()=>!1);if(n.phase==="prepared"||n.phase==="candidate-ready"){!i&&r&&(await Lu(n.displaced,o),await pe(Vn(e))),await Mu(n.temporary,{force:!0}),await pe(Vn(e)),await Oa(cn(e)).catch(a=>{if(a.code!=="ENOENT")throw a}),await pe(Vn(e));return}!i&&r&&(await Lu(n.displaced,o),await pe(Vn(e)));for(let a of[n.displaced,n.displacedWal,n.displacedSharedMemory,n.temporary])await Mu(a,{force:!0}),await pe(Vn(e));await Oa(cn(e)).catch(a=>{if(a.code!=="ENOENT")throw a}),await pe(Vn(e))}import{createHash as LO,randomBytes as MO,randomUUID as zO}from"node:crypto";import{createCipheriv as iA,createDecipheriv as aA,createHash as sA,randomBytes as dA}from"node:crypto";function qe(e){return e===null||typeof e=="string"||typeof e=="boolean"?!0:typeof e=="number"?Number.isFinite(e):Array.isArray(e)?e.every(qe):typeof e!="object"?!1:Object.values(e).every(qe)}var RI=1,Er=12,Bu=16;function un(e){return sA("sha256").update(J(e)).digest("hex")}function Hn(e,t){if(t.length!==32)throw new y("CONTENT_KEY_INVALID","Content keys must be exactly 32 bytes");let n=dA(Er),o=iA("aes-256-gcm",t,n),r=Buffer.from(J(e)),i=Buffer.concat([o.update(r),o.final()]),a=o.getAuthTag();return r.fill(0),Buffer.concat([Buffer.from([RI]),n,a,i])}function ln(e,t){if(t.length!==32||e.length<1+Er+Bu)throw new y("PAYLOAD_DECRYPT_FAILED","Encrypted payload has invalid dimensions");if(e[0]!==RI)throw new y("PAYLOAD_VERSION","Encrypted payload version is unsupported");let n=e.subarray(1,1+Er),o=e.subarray(1+Er,1+Er+Bu),r=e.subarray(1+Er+Bu),i;try{let a=aA("aes-256-gcm",t,n);a.setAuthTag(o),i=Buffer.concat([a.update(r),a.final()]);let s=JSON.parse(i.toString("utf8"));if(!qe(s))throw new Error("payload is not JSON");return s}catch(a){throw new y("PAYLOAD_DECRYPT_FAILED","The conversation content key did not decrypt the payload",{cause:a})}finally{i?.fill(0)}}var cA=/(secret|password|passphrase|token|bearer|authorization|credential|private(?:[_-]?key)?|api[-_]?key)/iu,uA=/(ref|name|kind)$/iu;function lA(e){if(e===null||typeof e!="object"||Array.isArray(e))return[];let t=e.fields;if(!Array.isArray(t))return[];let n=[];for(let o of t){if(o===null||typeof o!="object"||Array.isArray(o))throw new y("INTERACTION_SPEC_INVALID","Interaction answerSpec field is invalid");let r=o;if(typeof r.name!="string"||r.name.length===0||typeof r.type!="string")throw new y("INTERACTION_SPEC_INVALID","Interaction answerSpec field is invalid");if(r.type==="secret"){if(Object.hasOwn(r,"default"))throw new y("INTERACTION_SPEC_INVALID",`Secret interaction field ${r.name} cannot define a default`);n.push(r.name)}}return n}function pA(e){function t(o,r,i){let a=lA(r);if(a.length===0)return;let s=(d,c)=>{if(!(d===null||typeof d!="object"||Array.isArray(d))){for(let u of a)if(Object.hasOwn(d,u))throw new y("SECRET_PAYLOAD_REJECTED",`Secret-designated interaction field ${c}.${u} cannot be persisted`)}};for(let[d,c]of Object.entries(o))if(!(d==="answerSpec"||d==="request")&&(/^(answer|answers|data|publicData|response|value)$/u.test(d)&&s(c,`${i}.${d}`),a.includes(d)))throw new y("SECRET_PAYLOAD_REJECTED",`Secret-designated interaction field ${i}.${d} cannot be persisted`)}function n(o,r){if(o===null||typeof o!="object")return;if(Array.isArray(o)){o.forEach((d,c)=>{n(d,`${r}[${c}]`)});return}let i=o,a=i.answerSpec;a!==void 0&&t(i,a,r);let s=i.request;if(s!=null&&typeof s=="object"&&!Array.isArray(s)){let d=s;d.answerSpec!==void 0&&t(i,d.answerSpec,r)}for(let[d,c]of Object.entries(i))n(c,`${r}.${d}`)}n(e,"$")}function Mo(e){if(!qe(e))throw new y("PAYLOAD_INVALID","Journal payload must be finite JSON");pA(e);function t(n,o,r=!1){if(Array.isArray(n)){n.forEach((s,d)=>{t(s,`${o}[${d}]`,r)});return}if(n===null||typeof n!="object")return;let i=n,a=r||i.containsSecret===!0||i.secretDesignated===!0||i.isSecret===!0;for(let[s,d]of Object.entries(n)){let c=s==="containsSecret"||s==="secretDesignated"||s==="isSecret",u=!a&&(ev(s,d)||tv(s,d)||nv(s,d));if(cA.test(s)&&!uA.test(s)&&!c&&!u)throw new y("SECRET_PAYLOAD_REJECTED",`Secret-bearing field ${o}.${s} cannot be persisted`);if(a&&/^(answer|data|publicData|response|value)$/u.test(s))throw new y("SECRET_PAYLOAD_REJECTED",`Secret-designated field ${o}.${s} cannot be persisted`);t(d,`${o}.${s}`,a)}}t(e,"$")}import{randomUUID as Ci}from"node:crypto";import{rename as zS,rm as uy,unlink as DO}from"node:fs/promises";import{basename as jO,dirname as ir,join as UO}from"node:path";var Fe=8;function it(e,t){let n=e.pragma(t,{simple:!0}),o=typeof n=="string"?{off:0,normal:1,full:2,extra:3}[n.toLowerCase()]??Number(n):Number(n);if(!Number.isSafeInteger(o))throw new y("SQLITE_PRAGMA",`Invalid numeric pragma ${t}`);return o}function fA(e){if(typeof e=="string")return e;if(Array.isArray(e)&&e.length===1&&e[0]&&typeof e[0]=="object"){let t=e[0],n=Object.values(t)[0];return typeof n=="string"?n:null}if(e&&typeof e=="object"){let t=Object.values(e)[0];return typeof t=="string"?t:null}return null}function Zn(e,t){return fA(e.pragma(t))}function Kn(e,t){e.exec(`PRAGMA busy_timeout = ${t}`),e.exec("PRAGMA foreign_keys = ON"),e.exec("PRAGMA synchronous = FULL");let n=Zn(e,"journal_mode = WAL")?.toLowerCase(),o=it(e,"foreign_keys")===1,r=it(e,"synchronous")===2;if(n!=="wal"||!o||!r)throw new y("SQLITE_PRAGMAS","SQLite did not accept WAL, foreign keys, and FULL synchronous mode");return{wal:n==="wal",foreignKeys:o,synchronousFull:r}}function mA(e){e.exec(`
6
- CREATE TABLE IF NOT EXISTS braid_conversations (
7
- conversation_id TEXT PRIMARY KEY NOT NULL,
8
- workspace_id TEXT NOT NULL,
9
- created_at TEXT NOT NULL
10
- );
11
- CREATE TABLE IF NOT EXISTS braid_conversation_keys (
12
- conversation_id TEXT PRIMARY KEY NOT NULL REFERENCES braid_conversations(conversation_id),
13
- credential_ref TEXT NOT NULL,
14
- destroyed INTEGER NOT NULL DEFAULT 0 CHECK (destroyed IN (0, 1))
15
- );
16
- CREATE TABLE IF NOT EXISTS braid_journal_events (
17
- storage_id INTEGER PRIMARY KEY AUTOINCREMENT,
18
- workspace_id TEXT NOT NULL,
19
- conversation_id TEXT NOT NULL REFERENCES braid_conversations(conversation_id),
20
- run_id TEXT NOT NULL,
21
- event_id TEXT NOT NULL,
22
- run_sequence INTEGER NOT NULL CHECK (run_sequence > 0),
23
- kind TEXT NOT NULL,
24
- cursor TEXT,
25
- operation_id TEXT,
26
- payload BLOB NOT NULL,
27
- payload_checksum TEXT NOT NULL,
28
- occurred_at TEXT NOT NULL,
29
- received_at TEXT NOT NULL,
30
- terminal INTEGER NOT NULL DEFAULT 0 CHECK (terminal IN (0, 1)),
31
- redacted INTEGER NOT NULL DEFAULT 0 CHECK (redacted IN (0, 1)),
32
- UNIQUE (run_id, event_id),
33
- UNIQUE (run_id, run_sequence)
34
- );
35
- CREATE INDEX IF NOT EXISTS braid_journal_conversation_idx
36
- ON braid_journal_events(conversation_id, storage_id);
37
- CREATE TABLE IF NOT EXISTS braid_run_cursors (
38
- run_id TEXT PRIMARY KEY NOT NULL,
39
- conversation_id TEXT NOT NULL REFERENCES braid_conversations(conversation_id),
40
- last_sequence INTEGER NOT NULL DEFAULT 0,
41
- last_cursor TEXT,
42
- missing_from INTEGER,
43
- missing_to INTEGER,
44
- terminal INTEGER NOT NULL DEFAULT 0 CHECK (terminal IN (0, 1))
45
- );
46
- CREATE TABLE IF NOT EXISTS braid_operation_records (
47
- operation_id TEXT PRIMARY KEY NOT NULL,
48
- operation_kind TEXT NOT NULL,
49
- request_digest TEXT NOT NULL,
50
- request_json TEXT NOT NULL,
51
- status TEXT NOT NULL CHECK (status IN ('pending', 'acknowledged', 'failed', 'unknown', 'conflict', 'terminal')),
52
- result_json TEXT,
53
- created_at TEXT NOT NULL,
54
- updated_at TEXT NOT NULL
55
- );
56
- CREATE TABLE IF NOT EXISTS braid_effect_records (
57
- effect_sequence INTEGER PRIMARY KEY AUTOINCREMENT,
58
- operation_id TEXT NOT NULL,
59
- effect_kind TEXT NOT NULL,
60
- request_digest TEXT NOT NULL,
61
- status TEXT NOT NULL CHECK (status IN ('pending', 'acknowledged', 'failed', 'unknown', 'conflict', 'terminal')),
62
- attempt INTEGER NOT NULL CHECK (attempt > 0),
63
- created_at TEXT NOT NULL,
64
- updated_at TEXT NOT NULL,
65
- metadata_json TEXT NOT NULL,
66
- detail TEXT,
67
- external_reference TEXT,
68
- conflict_with_digest TEXT
69
- );
70
- CREATE INDEX IF NOT EXISTS braid_effect_operation_idx
71
- ON braid_effect_records(operation_id, effect_sequence);
72
- CREATE TABLE IF NOT EXISTS braid_projection_state (
73
- projection_name TEXT PRIMARY KEY NOT NULL,
74
- revision INTEGER NOT NULL,
75
- checksum TEXT NOT NULL,
76
- state_json TEXT NOT NULL
77
- );
78
- CREATE TABLE IF NOT EXISTS braid_conversation_tombstones (
79
- conversation_id TEXT PRIMARY KEY NOT NULL REFERENCES braid_conversations(conversation_id),
80
- reason TEXT NOT NULL,
81
- deleted_at TEXT NOT NULL
82
- );
83
- CREATE TABLE IF NOT EXISTS braid_effect_admissions (
84
- operation_id TEXT PRIMARY KEY NOT NULL,
85
- effect_kind TEXT NOT NULL,
86
- request_digest TEXT NOT NULL,
87
- attempt INTEGER NOT NULL CHECK (attempt > 0),
88
- created_at TEXT NOT NULL,
89
- updated_at TEXT NOT NULL
90
- );
91
- `)}function gA(e){e.exec(`
92
- CREATE TABLE IF NOT EXISTS braid_operation_conflicts (
93
- operation_id TEXT NOT NULL REFERENCES braid_operation_records(operation_id),
94
- attempted_digest TEXT NOT NULL,
95
- original_digest TEXT NOT NULL,
96
- occurred_at TEXT NOT NULL,
97
- PRIMARY KEY (operation_id, attempted_digest)
98
- );
99
- CREATE TABLE IF NOT EXISTS braid_redaction_records (
100
- conversation_id TEXT NOT NULL REFERENCES braid_conversations(conversation_id),
101
- event_id TEXT NOT NULL,
102
- reason TEXT NOT NULL,
103
- rewritten_at TEXT NOT NULL,
104
- PRIMARY KEY (conversation_id, event_id)
105
- );
106
- `)}function yA(e){e.exec(`
107
- CREATE TABLE IF NOT EXISTS braid_content_key_rotations (
108
- conversation_id TEXT PRIMARY KEY NOT NULL REFERENCES braid_conversations(conversation_id),
109
- old_credential_ref TEXT NOT NULL,
110
- new_credential_ref TEXT NOT NULL,
111
- prepared_at TEXT NOT NULL
112
- );
113
- `)}function hA(e){e.exec(`
114
- DROP INDEX IF EXISTS braid_journal_event_id_unique;
115
- `)}function Na(e,t,n){return e.prepare(`PRAGMA table_info(${t})`).all().some(r=>r.name===n)}function vA(e){Na(e,"braid_journal_events","provider_event_id")||e.exec("ALTER TABLE braid_journal_events ADD COLUMN provider_event_id TEXT"),e.exec(`
116
- CREATE INDEX IF NOT EXISTS braid_journal_provider_event_idx
117
- ON braid_journal_events(run_id, provider_event_id);
118
- CREATE TABLE IF NOT EXISTS braid_conversation_tombstones (
119
- conversation_id TEXT PRIMARY KEY NOT NULL REFERENCES braid_conversations(conversation_id),
120
- reason TEXT NOT NULL,
121
- deleted_at TEXT NOT NULL
122
- );
123
- CREATE TABLE IF NOT EXISTS braid_effect_admissions (
124
- operation_id TEXT PRIMARY KEY NOT NULL,
125
- effect_kind TEXT NOT NULL,
126
- request_digest TEXT NOT NULL,
127
- attempt INTEGER NOT NULL CHECK (attempt > 0),
128
- created_at TEXT NOT NULL,
129
- updated_at TEXT NOT NULL
130
- );
131
- `),Na(e,"braid_content_key_rotations","redacted_event_id")||e.exec("ALTER TABLE braid_content_key_rotations ADD COLUMN redacted_event_id TEXT"),Na(e,"braid_content_key_rotations","phase")||e.exec("ALTER TABLE braid_content_key_rotations ADD COLUMN phase TEXT")}function IA(e){e.exec(`
132
- INSERT INTO braid_effect_admissions(
133
- operation_id, effect_kind, request_digest, attempt, created_at, updated_at
134
- )
135
- SELECT operation_id, effect_kind, request_digest, MAX(attempt), MIN(created_at), MAX(updated_at)
136
- FROM braid_effect_records
137
- WHERE status <> 'conflict'
138
- GROUP BY operation_id, effect_kind, request_digest
139
- ON CONFLICT(operation_id) DO NOTHING;
140
- `)}function SI(e){e.exec(`
141
- CREATE TABLE IF NOT EXISTS braid_state_snapshots (
142
- snapshot_id INTEGER PRIMARY KEY AUTOINCREMENT,
143
- scope_id TEXT NOT NULL,
144
- generation INTEGER NOT NULL CHECK (generation > 0),
145
- storage_id INTEGER NOT NULL,
146
- event_id TEXT NOT NULL,
147
- journal_sequence INTEGER NOT NULL CHECK (journal_sequence > 0),
148
- revision INTEGER NOT NULL CHECK (revision > 0),
149
- state_checksum TEXT NOT NULL,
150
- key_ref TEXT NOT NULL,
151
- state_ciphertext BLOB NOT NULL,
152
- created_at TEXT NOT NULL,
153
- UNIQUE (scope_id, generation)
154
- );
155
- CREATE INDEX IF NOT EXISTS braid_state_snapshot_scope_sequence_idx
156
- ON braid_state_snapshots(scope_id, journal_sequence DESC, snapshot_id DESC);
157
- CREATE TABLE IF NOT EXISTS braid_state_snapshot_keys (
158
- scope_id TEXT NOT NULL,
159
- generation INTEGER NOT NULL CHECK (generation > 0),
160
- credential_ref TEXT NOT NULL,
161
- retired INTEGER NOT NULL DEFAULT 0 CHECK (retired IN (0, 1)),
162
- created_at TEXT NOT NULL,
163
- PRIMARY KEY (scope_id, generation),
164
- UNIQUE (scope_id, credential_ref)
165
- );
166
- CREATE INDEX IF NOT EXISTS braid_state_snapshot_key_retired_idx
167
- ON braid_state_snapshot_keys(retired, scope_id, generation);
168
- `)}function bA(e){Na(e,"braid_state_snapshots","state_json")?(e.exec("DROP TABLE braid_state_snapshots"),e.exec("DROP TABLE IF EXISTS braid_state_snapshot_keys"),SI(e)):e.exec(`
169
- CREATE INDEX IF NOT EXISTS braid_state_snapshot_scope_sequence_idx
170
- ON braid_state_snapshots(scope_id, journal_sequence DESC, snapshot_id DESC);
171
- CREATE TABLE IF NOT EXISTS braid_state_snapshot_keys (
172
- scope_id TEXT NOT NULL,
173
- generation INTEGER NOT NULL CHECK (generation > 0),
174
- credential_ref TEXT NOT NULL,
175
- retired INTEGER NOT NULL DEFAULT 0 CHECK (retired IN (0, 1)),
176
- created_at TEXT NOT NULL,
177
- PRIMARY KEY (scope_id, generation),
178
- UNIQUE (scope_id, credential_ref)
179
- );
180
- CREATE INDEX IF NOT EXISTS braid_state_snapshot_key_retired_idx
181
- ON braid_state_snapshot_keys(retired, scope_id, generation);
182
- `)}function Da(e,t=Fe){let n=it(e,"user_version");if(n>t)throw new y("SQLITE_SCHEMA_NEWER",`Database schema ${n} is newer than ${t}`);n<1&&mA(e),n<2&&gA(e),n<3&&yA(e),n<4&&hA(e),n<5&&vA(e),n<6&&IA(e),n<7&&SI(e),n<8&&bA(e),e.exec(`PRAGMA user_version = ${t}`)}var wA=64,RA=128,SA=1024,EA=16*1024,EI=/(secret|password|passphrase|token|bearer|authorization|credential|private(?:[_-]?key)?|api[-_]?key)/iu,_A=/(ref|name|kind)$/iu,xA=/(?:secret|password|passphrase|token|bearer|authorization|credential|private(?:[_-]?key)?|api[-_]?key)\s*[:=]/iu;function kA(e){if(/:\/\/[^/\s:@]+:[^/\s@]+@/u.test(e))return!0;try{let t=new URL(e);return t.username||t.password?!0:[...t.searchParams.keys()].some(n=>EI.test(n))}catch{return!1}}function ja(e){let t=Object.entries(e);if(t.length>wA)return!1;let n=0;for(let[o,r]of t)if(typeof r!="string"||Buffer.byteLength(o,"utf8")>RA||Buffer.byteLength(r,"utf8")>SA||!/^[A-Za-z][A-Za-z0-9._-]*$/u.test(o)||EI.test(o)&&!_A.test(o)||da(r)||xA.test(r)||kA(r)||(n+=Buffer.byteLength(o,"utf8")+Buffer.byteLength(r,"utf8"),n>EA))return!1;return!0}var AA=new Set(["interaction.automation.audited","replay.cursor.advanced","run.cancel.requested","run.control.acknowledged","run.control.requested","run.interaction.responded","run.interaction.response.requested","run.queue.removed","run.reconciled"]);function _I(e){return e.terminal!==!0&&AA.has(e.kind)}function xI(e){try{if(ea(e.workspaceId),G(e.conversationId),be(e.runId),Et(e.eventId),e.providerEventId!==void 0&&(typeof e.providerEventId!="string"||e.providerEventId.length===0||e.providerEventId.length>4096||e.providerEventId.includes("\0")||e.providerEventId.includes("\r")||e.providerEventId.includes(`
183
- `)))throw new y("EVENT_INVALID","Provider event identity must be a bounded single-line string");e.operationId!==void 0&&we(e.operationId),e.cursor!==void 0&&on(e.cursor)}catch(t){throw new y("EVENT_INVALID","Journal event contains an identifier from the wrong domain",{cause:t})}if(!Number.isSafeInteger(e.sequence)||e.sequence<1)throw new y("EVENT_INVALID","Journal event sequence must be a positive integer");if(typeof e.kind!="string"||e.kind.length===0||e.kind.length>256)throw new y("EVENT_INVALID","Journal event kind must be a non-empty bounded string");if(!Y(e.occurredAt))throw new y("EVENT_INVALID","Journal event occurredAt must be a canonical ISO date");if(e.receivedAt!==void 0&&!Y(e.receivedAt))throw new y("EVENT_INVALID","Journal event receivedAt must be a canonical ISO date")}function qu(e){try{we(e.operationId)}catch(t){throw new y("OPERATION_INVALID","Operation identifier is not valid",{cause:t})}if(!/^[0-9a-f]{64}$/u.test(e.requestDigest))throw new y("OPERATION_INVALID","Operation request digest must be a SHA-256 digest");if(R(e.request)!==e.requestDigest)throw new y("OPERATION_INVALID","Operation request digest does not match the canonical request");if(typeof e.kind!="string"||e.kind.length===0||e.kind.length>256)throw new y("OPERATION_INVALID","Operation kind must be a non-empty bounded string");if(e.createdAt!==void 0&&!Y(e.createdAt))throw new y("OPERATION_INVALID","Operation createdAt must be a canonical ISO date")}function yt(e,t){if(qu(e),R(t)!==e.requestDigest)throw new y("OPERATION_INVALID","Operation request digest does not cover the complete storage mutation request")}function zo(e){try{we(e.operationId)}catch(n){throw new y("EFFECT_INVALID","Effect operation identifier is not valid",{cause:n})}if(!/^[0-9a-f]{64}$/u.test(e.requestDigest))throw new y("EFFECT_INVALID","Effect request digest must be a SHA-256 digest");if(typeof e.effectKind!="string"||e.effectKind.length===0||e.effectKind.length>256)throw new y("EFFECT_INVALID","Effect kind must be a non-empty bounded string");if(!Number.isSafeInteger(e.attempt)||e.attempt<1)throw new y("EFFECT_INVALID","Effect attempt must be a positive integer");if(!Y(e.createdAt)||!Y(e.updatedAt)||e.updatedAt<e.createdAt)throw new y("EFFECT_INVALID","Effect timestamps must be canonical ISO dates in order");if(!["pending","acknowledged","failed","unknown","conflict","terminal"].includes(e.status))throw new y("EFFECT_INVALID","Effect status is not recognized");let t=(n,o,r)=>{if(n.length>r||da(n)||/(secret|password|passphrase|token|bearer|authorization|credential|private(?:[_-]?key)?|api[-_]?key)\s*[:=]/iu.test(n))throw new y("EFFECT_INVALID",`${o} contains unsafe diagnostic text`)};if(e.detail!==void 0&&t(e.detail,"Effect detail",128),e.externalReference!==void 0&&t(e.externalReference,"Effect external reference",256),!ja(e.metadata))throw new y("EFFECT_INVALID","Effect metadata must contain only bounded public strings")}import{stat as MS}from"node:fs/promises";import{dirname as NO}from"node:path";import{randomUUID as kO}from"node:crypto";import{closeSync as AO}from"node:fs";import{link as TO,lstat as $O,rename as CO,rm as cy,stat as $i,unlink as LS}from"node:fs/promises";import{basename as OO,dirname as or,join as PO}from"node:path";import{performance as fo}from"node:perf_hooks";import{randomBytes as PA,randomUUID as NA}from"node:crypto";import{createHash as TA,createHmac as $A}from"node:crypto";import{closeSync as CA}from"node:fs";import{performance as OA}from"node:perf_hooks";var Ua=class{#e;#t=[];#n=!1;#r;constructor(t){this.#e=t}run(t){return this.#t.length>=this.#e?Promise.reject(new y("STORAGE_QUEUE_FULL","The serialized SQLite writer queue is full")):new Promise((n,o)=>{this.#t.push({operation:t,resolve:n,reject:o}),this.#o()})}async#o(){if(this.#n)return this.#r;this.#n=!0;let t=(async()=>{try{for(;this.#t.length>0;){let n=this.#t.shift();if(n)try{n.resolve(await n.operation())}catch(o){n.reject(o)}}}finally{this.#n=!1,this.#r=void 0}})();return this.#r=t,t}async drain(){for(;this.#n||this.#t.length>0;)await(this.#r??this.#o())}};var La=class{path;stateSnapshotScope;workspaceRoot;credentials;databaseKeyRef;databaseFactory;busyTimeoutMs;maxEvents;maxPayloadBytes;backupDirectory;migrationHooks;durableBoundaryHook;startupObserver;writes;database;databaseFileDescriptor;exclusiveLock;databaseKey;latestBackupPath;closed=!1;constructor(t){this.path=t.path,this.stateSnapshotScope=`storage-${TA("sha256").update(t.path).digest("hex").slice(0,32)}`,this.workspaceRoot=t.workspaceRoot,this.credentials=t.credentials,this.databaseKeyRef=t.databaseKeyRef,this.databaseKey=Buffer.from(t.databaseKey),this.databaseFactory=t.databaseFactory,this.busyTimeoutMs=t.busyTimeoutMs,this.maxEvents=t.maxEvents,this.maxPayloadBytes=t.maxPayloadBytes,this.backupDirectory=t.backupDirectory,this.migrationHooks=t.migrationHooks,this.durableBoundaryHook=t.durableBoundaryHook,this.startupObserver=t.startupObserver,this.writes=new Ua(t.maxQueuedTransactions),this.database=t.database,this.databaseFileDescriptor=t.databaseFileDescriptor,this.exclusiveLock=t.exclusiveLock}fingerprint(t){return $A("sha256",this.databaseKey).update("braid-operation-fingerprint:v1\0").update(t.effectKind).update("\0").update(J(t.request)).digest("hex")}snapshotScopeId(){return this.stateSnapshotScope}artifacts(){return{database:this.path,wal:`${this.path}-wal`,sharedMemory:`${this.path}-shm`,backups:this.latestBackupPath?[this.latestBackupPath]:[]}}async integrity(){return this.assertOpen(),this.integrityReport()}async close(){if(this.closed)return;let t;try{await this.writes.drain()}catch(n){t=n}this.closed=!0;try{this.database.close()}finally{try{this.databaseFileDescriptor!==void 0&&(CA(this.databaseFileDescriptor),this.databaseFileDescriptor=void 0),this.databaseKey.fill(0)}finally{let n=this.exclusiveLock;this.exclusiveLock=void 0,await n?.release()}}if(t!==void 0)throw t}integrityReportFor(t){let n=[],o=!1,r=!1;try{let d=t.prepare("PRAGMA quick_check").all();o=d.length>0&&d.every(c=>Object.values(c).some(u=>u==="ok"))}catch(d){n.push(`quick_check failed: ${d instanceof Error?d.message:String(d)}`)}try{let d=t.prepare("PRAGMA integrity_check").all();r=d.length>0&&d.every(c=>Object.values(c).some(u=>u==="ok"))}catch(d){n.push(`integrity_check failed: ${d instanceof Error?d.message:String(d)}`)}let i=!1;try{i=it(t,"foreign_keys")===1}catch{n.push("foreign_keys pragma is unavailable")}let a=!1;try{a=Zn(t,"journal_mode")?.toLowerCase()==="wal"}catch{n.push("journal_mode pragma is unavailable")}let s="verified";try{Zn(t,"cipher")?.toLowerCase()!=="sqlcipher"&&(s="unavailable",n.push("SQLCipher mode is not active"))}catch{s="unavailable",n.push("cipher pragma is unavailable")}return{ok:n.length===0&&o&&r&&i&&a&&s==="verified",encryption:s,quickCheck:o,fullCheck:r,foreignKeys:i,wal:a,schemaVersion:it(t,"user_version"),errors:n}}integrityReport(){return this.integrityReportFor(this.database)}begin(){this.assertOpen();try{this.database.exec("BEGIN IMMEDIATE")}catch(t){throw Q(t)}}commit(t){this.durableBoundaryHook?.(`before:${t}`);try{this.database.exec("COMMIT")}catch(n){throw Q(n)}try{this.durableBoundaryHook?.(`after:${t}`)}catch{}}rollback(){try{this.database.exec("ROLLBACK")}catch{}}assertOpen(){if(this.closed||!this.database.open)throw new y("STORAGE_CLOSED","SQLite storage is closed")}observeStartup(t,n){try{this.startupObserver?.({name:t,durationMs:OA.now()-n})}catch{}}async withExclusiveLock(t){if(this.exclusiveLock!==void 0)return t();let n=await Pa(`${this.path}.exclusive.lock`);try{return await t()}finally{await n.release()}}};import{createHash as Ma}from"node:crypto";function Ae(){return new Date().toISOString()}function ee(e,t){let n=Number(e);if(!Number.isSafeInteger(n))throw new y("STORAGE_ROW_INVALID",`Invalid ${t} in SQLite row`);return n}function O(e,t){if(typeof e!="string")throw new y("STORAGE_ROW_INVALID",`Invalid ${t} in SQLite row`);return e}function pn(e,t){if(Buffer.isBuffer(e)||e instanceof Uint8Array)return Buffer.from(e);throw new y("STORAGE_ROW_INVALID",`Invalid ${t} in SQLite row`)}function za(e){return JSON.parse(J(e))}function _r(e){return JSON.parse(J(e))}function qo(e,t,n){let o=O(t.event_id,"event_id"),r=ee(t.storage_id,"storage_id"),i=()=>({__braidEvent:{kind:"unknown.event",unknown:{id:o,type:O(t.kind,"kind"),namespace:"braid.redacted",summary:"Event payload redacted",sequence:ee(t.run_sequence,"run_sequence")}},__braidEnvelope:{eventId:o,sequence:r,revision:r,occurredAt:O(t.occurred_at,"occurred_at"),...t.cursor===null?{}:{cursor:O(t.cursor,"cursor")}}});if(e===null||typeof e!="object"||Array.isArray(e))return i();let a=e,s=a.__braidEvent,d=a.__braidEnvelope;if(s===null||typeof s!="object"||Array.isArray(s)||d===null||typeof d!="object"||Array.isArray(d))return i();let c=s,u=d;return typeof c.kind!="string"||typeof u.sequence!="number"||typeof u.revision!="number"||typeof u.occurredAt!="string"?i():{__braidEvent:{kind:"unknown.event",unknown:{id:o,type:c.kind,namespace:"braid.redacted",summary:"Event payload redacted",sequence:u.sequence}},__braidEnvelope:{eventId:o,sequence:u.sequence,revision:u.revision,occurredAt:u.occurredAt,...typeof u.cursor=="string"?{cursor:u.cursor}:{}}}}function xr(e){return e instanceof z?e.code:void 0}function kI(e,t){let n=Ma("sha256").update(t).digest("hex");return ce(`cred:v1:${e}-${n}`)}function Fu(e){return`sha256:${Ma("sha256").update(e).digest("hex")}`}function Ba(e){let t=JSON.parse(e.request_json);if(!qe(t))throw new y("OPERATION_RECORD_INVALID","Stored operation request is invalid");let n=e.result_json===null?void 0:JSON.parse(e.result_json);if(n!==void 0&&!qe(n))throw new y("OPERATION_RECORD_INVALID","Stored operation result is invalid");if(!Y(e.created_at)||!Y(e.updated_at)||e.updated_at<e.created_at)throw new y("OPERATION_RECORD_INVALID","Stored operation timestamps are invalid");return{operationId:we(e.operation_id),kind:e.operation_kind,request:t,requestDigest:e.request_digest,status:e.status,...n===void 0?{}:{result:n},updatedAt:e.updated_at,createdAt:e.created_at}}function Fo(e){let t=JSON.parse(O(e.metadata_json,"metadata_json"));if(t===null||typeof t!="object"||Array.isArray(t)||Object.values(t).some(r=>typeof r!="string"))throw new y("EFFECT_RECORD_INVALID","Stored effect metadata is invalid");let n=O(e.status,"status");if(!["pending","acknowledged","failed","unknown","conflict","terminal"].includes(n))throw new y("EFFECT_RECORD_INVALID",`Unknown effect status ${n}`);let o={operationId:we(O(e.operation_id,"operation_id")),effectKind:O(e.effect_kind,"effect_kind"),requestDigest:O(e.request_digest,"request_digest"),status:n,attempt:ee(e.attempt,"attempt"),createdAt:O(e.created_at,"created_at"),updatedAt:O(e.updated_at,"updated_at"),metadata:t,...e.detail===null||e.detail===void 0?{}:{detail:O(e.detail,"detail")},...e.external_reference===null||e.external_reference===void 0?{}:{externalReference:O(e.external_reference,"external_reference")},...e.conflict_with_digest===null||e.conflict_with_digest===void 0?{}:{conflictWithDigest:O(e.conflict_with_digest,"conflict_with_digest")}};return zo(o),o}function Vo(e){return e.missing_from===null||e.missing_to===null?null:{runId:be(e.run_id),fromSequence:e.missing_from,toSequence:e.missing_to}}var qa=Ma("sha256").update("braid-projection-events-v1").digest("hex");function Fa(e,t){return Ma("sha256").update(`${e}\0${t}`).digest("hex")}function kr(e){let t=Buffer.alloc(32);for(let n of[...e].sort((o,r)=>o.runId.localeCompare(r.runId))){let o=Buffer.from(R(n),"hex");for(let r=0;r<t.length;r+=1)t[r]=(t[r]??0)^(o[r]??0)}return t.toString("hex")}function Va(e){return R(e)}function AI(e,t){let n=new Map;for(let a of t)n.set(a.run_id,{runId:be(a.run_id),conversationId:G(a.conversation_id),lastSequence:a.last_sequence,lastCursor:a.last_cursor,missingFrom:a.missing_from,missingTo:a.missing_to,terminal:a.terminal===1});let o=e.map(a=>Et(a.event_id)),r={schemaVersion:3,eventCount:e.length,revision:e.length,eventIds:o,runs:[...n.values()].sort((a,s)=>a.runId.localeCompare(s.runId))},i=qa;for(let a of o)i=Fa(i,a);return{...r,checksum:Va({schemaVersion:r.schemaVersion,eventCount:r.eventCount,revision:r.revision,eventIdsDigest:i,runsDigest:kr(r.runs)})}}var Ha=class extends La{async storedEvents(t){let n={tombstones:new Map,contentKeys:new Map};try{let o=[];for(let r of t)o.push(await this.storedEvent(r,n));return o}finally{for(let o of n.contentKeys.values())o?.fill(0)}}async storedEvent(t,n){let o=G(O(t.conversation_id,"conversation_id")),r={workspaceId:ea(O(t.workspace_id,"workspace_id")),conversationId:o,runId:be(O(t.run_id,"run_id")),eventId:Et(O(t.event_id,"event_id")),sequence:ee(t.run_sequence,"run_sequence"),kind:O(t.kind,"kind"),occurredAt:O(t.occurred_at,"occurred_at"),...t.cursor===null?{}:{cursor:on(O(t.cursor,"cursor"))},...t.operation_id===null?{}:{operationId:we(O(t.operation_id,"operation_id"))},terminal:t.terminal===1,receivedAt:O(t.received_at,"received_at"),payloadChecksum:O(t.payload_checksum,"payload_checksum"),redacted:t.redacted===1,...t.provider_event_id===null||t.provider_event_id===void 0?{}:{providerEventId:O(t.provider_event_id,"provider_event_id")}},i=n?.tombstones.get(o);if(n===void 0||!n.tombstones.has(o)){let s=this.database.prepare("SELECT reason FROM braid_conversation_tombstones WHERE conversation_id = ?").get(o);i=s?O(s.reason,"tombstone.reason"):null,n?.tombstones.set(o,i)}if(i!=null)return{...r,payload:qo(null,t,"destruction"),payloadState:"deleted",tombstoneReason:i};let a=n?.contentKeys.get(o)??void 0;if((n===void 0||!n.contentKeys.has(o))&&(a=await this.existingContentKey(o),n?.contentKeys.set(o,a??null)),!a)return{...r,payload:null,payloadState:"content-key-unavailable"};try{let s=ln(pn(t.payload,"payload"),a);if(un(s)!==r.payloadChecksum)throw new y("PAYLOAD_CHECKSUM_MISMATCH",`Stored payload checksum does not match event ${r.eventId}`);return{...r,payload:s,payloadState:t.redacted===1?"redacted":"available"}}finally{n===void 0&&a.fill(0)}}async ensureContentKey(t,n){let o=this.database.prepare("SELECT credential_ref, destroyed FROM braid_conversation_keys WHERE conversation_id = ?").get(t);if(o){if(Number(o.destroyed)===1)throw new y("CONTENT_KEY_DESTROYED","Conversation content key was destroyed");let a=ce(O(o.credential_ref,"credential_ref"));return{key:await this.resolveKey(a),ref:a}}let r=ce(`cred:v1:content-${NA()}`),i=PA(32);try{return await this.credentials.store({ref:r,value:i}),n.push(r),{key:Buffer.from(i),ref:r}}finally{i.fill(0)}}async existingContentKey(t){let n=this.database.prepare("SELECT credential_ref, destroyed FROM braid_conversation_keys WHERE conversation_id = ?").get(t);if(!n||Number(n.destroyed)===1)return;let o=ce(O(n.credential_ref,"credential_ref"));try{return await this.resolveKey(o)}catch(r){if(xr(r)==="CREDENTIAL_NOT_FOUND")return;throw r}}async resolveKey(t){let n;try{n=await this.credentials.resolve(t);let o=Buffer.from(n.read());if(o.length!==32)throw new y("CONTENT_KEY_INVALID","Stored content key has invalid length");return o}finally{n?.dispose()}}async verifyConversation(t,n,o){let r=await this.resolveKey(o);try{let i=this.database.prepare("SELECT * FROM braid_journal_events WHERE conversation_id = ? ORDER BY storage_id").all(t);for(let a of i){let s=ln(pn(a.payload,"payload"),r);if(un(s)!==a.payload_checksum||a.event_id===n&&a.redacted!==1)return!1}return!0}finally{r.fill(0)}}};function TI(e){S("conversation",e.id,"conversation.id"),S("workspace",e.workspaceId,"conversation.workspaceId"),S("branch",e.activeBranchId,"conversation.activeBranchId"),L(e.title,"conversation.title"),e.profileId!==void 0&&S("profile",e.profileId,"conversation.profileId");for(let[t,n]of Object.entries(e.retention))n!==void 0&&K(n,`conversation.retention.${t}`);j(e.createdAt,"conversation.createdAt"),j(e.updatedAt,"conversation.updatedAt"),e.deletedAt!==void 0&&j(e.deletedAt,"conversation.deletedAt")}function $I(e){S("branch",e.id,"branch.id"),S("conversation",e.conversationId,"branch.conversationId"),e.source!==void 0&&(S("conversation",e.source.conversationId,"branch.source.conversationId"),S("branch",e.source.branchId,"branch.source.branchId"),e.source.throughMessageId!==void 0&&S("message",e.source.throughMessageId,"branch.source.throughMessageId"),e.source.throughTurnId!==void 0&&S("turn",e.source.throughTurnId,"branch.source.throughTurnId")),e.profileId!==void 0&&S("profile",e.profileId,"branch.profileId"),e.profileSnapshotId!==void 0&&S("profileSnapshot",e.profileSnapshotId,"branch.profileSnapshotId"),e.connectionId!==void 0&&S("connection",e.connectionId,"branch.connectionId"),S("draft",e.draftId,"branch.draftId"),S("queue",e.queueId,"branch.queueId"),e.bindingId!==void 0&&S("binding",e.bindingId,"branch.bindingId"),e.environmentId!==void 0&&S("environment",e.environmentId,"branch.environmentId"),e.tipMessageId!==void 0&&S("message",e.tipMessageId,"branch.tipMessageId"),j(e.createdAt,"branch.createdAt"),j(e.updatedAt,"branch.updatedAt")}function CI(e){S("turn",e.id,"turn.id"),S("conversation",e.conversationId,"turn.conversationId"),S("branch",e.branchId,"turn.branchId"),S("message",e.userMessageId,"turn.userMessageId"),e.runIds.forEach(t=>{S("run",t,"turn.runIds")}),Z(e.runIds,"turn.runIds"),e.selectedRunId!==void 0&&S("run",e.selectedRunId,"turn.selectedRunId"),e.queueEntryId!==void 0&&S("queueEntry",e.queueEntryId,"turn.queueEntryId"),j(e.createdAt,"turn.createdAt"),j(e.updatedAt,"turn.updatedAt")}function OI(e){S("message",e.id,"message.id"),S("conversation",e.conversationId,"message.conversationId"),S("branch",e.branchId,"message.branchId"),e.partIds.forEach(t=>{S("messagePart",t,"message.partIds")}),Z(e.partIds,"message.partIds"),e.turnId!==void 0&&S("turn",e.turnId,"message.turnId"),e.runId!==void 0&&S("run",e.runId,"message.runId"),typeof e.text!="string"&&$("message.text must be text"),e.complete&&!["complete","failed","aborted","cancelled","blocked","expired","unknown","redacted"].includes(e.status)&&$("complete messages must have a terminal status"),j(e.createdAt,"message.createdAt"),j(e.updatedAt,"message.updatedAt"),e.missingHistory!==void 0&&la(e.missingHistory)}function PI(e){switch(S("messagePart",e.id,"messagePart.id"),S("message",e.messageId,"messagePart.messageId"),K(e.ordinal,"messagePart.ordinal"),j(e.createdAt,"messagePart.createdAt"),j(e.updatedAt,"messagePart.updatedAt"),e.kind){case"text":case"reasoning":typeof e.text!="string"&&$(`messagePart.${e.kind}.text must be text`);return;case"tool-call":L(e.name,"messagePart.tool-call.name"),Un(e.arguments,"messagePart.tool-call.arguments");return;case"tool-result":L(e.summary,"messagePart.tool-result.summary"),e.output!==void 0&&Un(e.output,"messagePart.tool-result.output");return;case"artifact":S("artifact",e.artifactId,"messagePart.artifact.artifactId"),L(e.summary,"messagePart.artifact.summary");return;case"file":e.path===void 0&&e.filename===void 0&&$("messagePart.file needs path or filename");return;case"image":e.artifactId!==void 0&&S("artifact",e.artifactId,"messagePart.image.artifactId");return;case"warning":case"error":L(e.message,`messagePart.${e.kind}.message`);return;case"unknown":L(e.namespace,"messagePart.unknown.namespace"),L(e.type,"messagePart.unknown.type"),L(e.summary,"messagePart.unknown.summary");return;default:ua(e,"message part kind")}}var h={};Mt(h,{$brand:()=>Hu,$input:()=>ff,$output:()=>pf,NEVER:()=>Vu,TimePrecision:()=>hf,ZodAny:()=>ag,ZodArray:()=>ug,ZodBase64:()=>vd,ZodBase64URL:()=>Id,ZodBigInt:()=>oo,ZodBigIntFormat:()=>Rd,ZodBoolean:()=>ro,ZodCIDRv4:()=>yd,ZodCIDRv6:()=>hd,ZodCUID:()=>cd,ZodCUID2:()=>ud,ZodCatch:()=>Og,ZodCodec:()=>Ri,ZodCustom:()=>Si,ZodCustomStringFormat:()=>to,ZodDate:()=>hi,ZodDefault:()=>xg,ZodDiscriminatedUnion:()=>pg,ZodE164:()=>bd,ZodEmail:()=>ad,ZodEmoji:()=>sd,ZodEnum:()=>Qr,ZodError:()=>lC,ZodExactOptional:()=>Sg,ZodFile:()=>wg,ZodFirstPartyTypeKind:()=>Hg,ZodFunction:()=>qg,ZodGUID:()=>pi,ZodIPv4:()=>md,ZodIPv6:()=>gd,ZodISODate:()=>ed,ZodISODateTime:()=>Qs,ZodISODuration:()=>nd,ZodISOTime:()=>td,ZodIntersection:()=>fg,ZodIssueCode:()=>fC,ZodJWT:()=>wd,ZodKSUID:()=>fd,ZodLazy:()=>Mg,ZodLiteral:()=>bg,ZodMAC:()=>Qm,ZodMap:()=>vg,ZodNaN:()=>Ng,ZodNanoID:()=>dd,ZodNever:()=>dg,ZodNonOptional:()=>Ad,ZodNull:()=>og,ZodNullable:()=>_g,ZodNumber:()=>no,ZodNumberFormat:()=>nr,ZodObject:()=>Ii,ZodOptional:()=>kd,ZodPipe:()=>wi,ZodPrefault:()=>Ag,ZodPreprocess:()=>Dg,ZodPromise:()=>Bg,ZodReadonly:()=>jg,ZodRealError:()=>nt,ZodRecord:()=>Yr,ZodSet:()=>Ig,ZodString:()=>eo,ZodStringFormat:()=>ie,ZodSuccess:()=>Cg,ZodSymbol:()=>ng,ZodTemplateLiteral:()=>Lg,ZodTransform:()=>Rg,ZodTuple:()=>gg,ZodType:()=>F,ZodULID:()=>ld,ZodURL:()=>yi,ZodUUID:()=>Tt,ZodUndefined:()=>rg,ZodUnion:()=>bi,ZodUnknown:()=>sg,ZodVoid:()=>cg,ZodXID:()=>pd,ZodXor:()=>lg,_ZodString:()=>id,_default:()=>kg,_function:()=>wR,any:()=>Yw,array:()=>vi,base64:()=>Dw,base64url:()=>jw,bigint:()=>Kw,boolean:()=>tg,catch:()=>Pg,check:()=>RR,cidrv4:()=>Pw,cidrv6:()=>Nw,clone:()=>Ve,codec:()=>hR,coerce:()=>Zg,config:()=>he,core:()=>Vt,cuid:()=>_w,cuid2:()=>xw,custom:()=>SR,date:()=>eR,decode:()=>Zm,decodeAsync:()=>Wm,describe:()=>ER,discriminatedUnion:()=>aR,e164:()=>Uw,email:()=>gw,emoji:()=>Sw,encode:()=>Hm,encodeAsync:()=>Km,endsWith:()=>qr,enum:()=>_d,exactOptional:()=>Eg,file:()=>fR,flattenError:()=>Yo,float32:()=>Fw,float64:()=>Vw,formatError:()=>Qo,fromJSONSchema:()=>CR,function:()=>wR,getErrorMap:()=>gC,globalRegistry:()=>Oe,gt:()=>kt,gte:()=>Ze,guid:()=>yw,hash:()=>qw,hex:()=>Bw,hostname:()=>zw,httpUrl:()=>Rw,includes:()=>zr,instanceof:()=>xR,int:()=>rd,int32:()=>Hw,int64:()=>Ww,intersection:()=>mg,invertCodec:()=>vR,ipv4:()=>$w,ipv6:()=>Ow,iso:()=>Xr,json:()=>AR,jwt:()=>Lw,keyof:()=>tR,ksuid:()=>Tw,lazy:()=>zg,length:()=>er,literal:()=>pR,locales:()=>si,looseObject:()=>oR,looseRecord:()=>dR,lowercase:()=>Lr,lt:()=>xt,lte:()=>st,mac:()=>Cw,map:()=>cR,maxLength:()=>Qn,maxSize:()=>In,meta:()=>_R,mime:()=>Fr,minLength:()=>Ft,minSize:()=>At,multipleOf:()=>vn,nan:()=>yR,nanoid:()=>Ew,nativeEnum:()=>lR,negative:()=>Fs,never:()=>Sd,nonnegative:()=>Hs,nonoptional:()=>$g,nonpositive:()=>Vs,normalize:()=>Vr,null:()=>ig,nullable:()=>mi,nullish:()=>mR,number:()=>eg,object:()=>nR,optional:()=>fi,overwrite:()=>vt,parse:()=>Bm,parseAsync:()=>qm,partialRecord:()=>sR,pipe:()=>od,positive:()=>qs,prefault:()=>Tg,preprocess:()=>TR,prettifyError:()=>ol,promise:()=>bR,property:()=>Zs,readonly:()=>Ug,record:()=>hg,refine:()=>Fg,regex:()=>Ur,regexes:()=>at,registry:()=>ws,safeDecode:()=>Gm,safeDecodeAsync:()=>Ym,safeEncode:()=>Jm,safeEncodeAsync:()=>Xm,safeParse:()=>Fm,safeParseAsync:()=>Vm,set:()=>uR,setErrorMap:()=>mC,size:()=>Yn,slugify:()=>Wr,startsWith:()=>Br,strictObject:()=>rR,string:()=>li,stringFormat:()=>Mw,stringbool:()=>kR,success:()=>gR,superRefine:()=>Vg,symbol:()=>Gw,templateLiteral:()=>IR,toJSONSchema:()=>Gs,toLowerCase:()=>Zr,toUpperCase:()=>Kr,transform:()=>xd,treeifyError:()=>rl,trim:()=>Hr,tuple:()=>yg,uint32:()=>Zw,uint64:()=>Jw,ulid:()=>kw,undefined:()=>Xw,union:()=>Ed,unknown:()=>tr,uppercase:()=>Mr,url:()=>ww,util:()=>A,uuid:()=>hw,uuidv4:()=>vw,uuidv6:()=>Iw,uuidv7:()=>bw,void:()=>Qw,xid:()=>Aw,xor:()=>iR});var Vt={};Mt(Vt,{$ZodAny:()=>Pp,$ZodArray:()=>Lp,$ZodAsyncError:()=>ht,$ZodBase64:()=>Sp,$ZodBase64URL:()=>Ep,$ZodBigInt:()=>fs,$ZodBigIntFormat:()=>Tp,$ZodBoolean:()=>ri,$ZodCIDRv4:()=>bp,$ZodCIDRv6:()=>wp,$ZodCUID:()=>dp,$ZodCUID2:()=>cp,$ZodCatch:()=>nf,$ZodCheck:()=>se,$ZodCheckBigIntFormat:()=>Ll,$ZodCheckEndsWith:()=>Gl,$ZodCheckGreaterThan:()=>ss,$ZodCheckIncludes:()=>Wl,$ZodCheckLengthEquals:()=>Vl,$ZodCheckLessThan:()=>as,$ZodCheckLowerCase:()=>Zl,$ZodCheckMaxLength:()=>ql,$ZodCheckMaxSize:()=>Ml,$ZodCheckMimeType:()=>Yl,$ZodCheckMinLength:()=>Fl,$ZodCheckMinSize:()=>zl,$ZodCheckMultipleOf:()=>jl,$ZodCheckNumberFormat:()=>Ul,$ZodCheckOverwrite:()=>Ql,$ZodCheckProperty:()=>Xl,$ZodCheckRegex:()=>Hl,$ZodCheckSizeEquals:()=>Bl,$ZodCheckStartsWith:()=>Jl,$ZodCheckStringFormat:()=>Dr,$ZodCheckUpperCase:()=>Kl,$ZodCodec:()=>ii,$ZodCustom:()=>lf,$ZodCustomStringFormat:()=>kp,$ZodDate:()=>Up,$ZodDefault:()=>Yp,$ZodDiscriminatedUnion:()=>Bp,$ZodE164:()=>_p,$ZodEmail:()=>op,$ZodEmoji:()=>ap,$ZodEncodeError:()=>fn,$ZodEnum:()=>Zp,$ZodError:()=>Xo,$ZodExactOptional:()=>Gp,$ZodFile:()=>Wp,$ZodFunction:()=>df,$ZodGUID:()=>np,$ZodIPv4:()=>hp,$ZodIPv6:()=>vp,$ZodISODate:()=>mp,$ZodISODateTime:()=>fp,$ZodISODuration:()=>yp,$ZodISOTime:()=>gp,$ZodIntersection:()=>qp,$ZodJWT:()=>xp,$ZodKSUID:()=>pp,$ZodLazy:()=>uf,$ZodLiteral:()=>Kp,$ZodMAC:()=>Ip,$ZodMap:()=>Vp,$ZodNaN:()=>rf,$ZodNanoID:()=>sp,$ZodNever:()=>Dp,$ZodNonOptional:()=>ef,$ZodNull:()=>Op,$ZodNullable:()=>Xp,$ZodNumber:()=>ps,$ZodNumberFormat:()=>Ap,$ZodObject:()=>ub,$ZodObjectJIT:()=>Mp,$ZodOptional:()=>gs,$ZodPipe:()=>ys,$ZodPrefault:()=>Qp,$ZodPreprocess:()=>of,$ZodPromise:()=>cf,$ZodReadonly:()=>af,$ZodRealError:()=>tt,$ZodRecord:()=>Fp,$ZodRegistry:()=>bs,$ZodSet:()=>Hp,$ZodString:()=>Xn,$ZodStringFormat:()=>oe,$ZodSuccess:()=>tf,$ZodSymbol:()=>$p,$ZodTemplateLiteral:()=>sf,$ZodTransform:()=>Jp,$ZodTuple:()=>ms,$ZodType:()=>M,$ZodULID:()=>up,$ZodURL:()=>ip,$ZodUUID:()=>rp,$ZodUndefined:()=>Cp,$ZodUnion:()=>oi,$ZodUnknown:()=>Np,$ZodVoid:()=>jp,$ZodXID:()=>lp,$ZodXor:()=>zp,$brand:()=>Hu,$constructor:()=>I,$input:()=>ff,$output:()=>pf,Doc:()=>ni,JSONSchema:()=>pw,JSONSchemaGenerator:()=>Xs,NEVER:()=>Vu,TimePrecision:()=>hf,_any:()=>Lf,_array:()=>Hf,_base64:()=>Ls,_base64url:()=>Ms,_bigint:()=>Cf,_boolean:()=>Tf,_catch:()=>rC,_check:()=>lw,_cidrv4:()=>js,_cidrv6:()=>Us,_coercedBigint:()=>Of,_coercedBoolean:()=>$f,_coercedDate:()=>Ff,_coercedNumber:()=>Sf,_coercedString:()=>gf,_cuid:()=>Ts,_cuid2:()=>$s,_custom:()=>Kf,_date:()=>qf,_decode:()=>Xa,_decodeAsync:()=>Qa,_default:()=>eC,_discriminatedUnion:()=>q$,_e164:()=>zs,_email:()=>Rs,_emoji:()=>ks,_encode:()=>Ga,_encodeAsync:()=>Ya,_endsWith:()=>qr,_enum:()=>W$,_file:()=>Zf,_float32:()=>_f,_float64:()=>xf,_gt:()=>kt,_gte:()=>Ze,_guid:()=>di,_includes:()=>zr,_int:()=>Ef,_int32:()=>kf,_int64:()=>Pf,_intersection:()=>F$,_ipv4:()=>Ns,_ipv6:()=>Ds,_isoDate:()=>If,_isoDateTime:()=>vf,_isoDuration:()=>wf,_isoTime:()=>bf,_jwt:()=>Bs,_ksuid:()=>Ps,_lazy:()=>sC,_length:()=>er,_literal:()=>G$,_lowercase:()=>Lr,_lt:()=>xt,_lte:()=>st,_mac:()=>yf,_map:()=>Z$,_max:()=>st,_maxLength:()=>Qn,_maxSize:()=>In,_mime:()=>Fr,_min:()=>Ze,_minLength:()=>Ft,_minSize:()=>At,_multipleOf:()=>vn,_nan:()=>Vf,_nanoid:()=>As,_nativeEnum:()=>J$,_negative:()=>Fs,_never:()=>zf,_nonnegative:()=>Hs,_nonoptional:()=>tC,_nonpositive:()=>Vs,_normalize:()=>Vr,_null:()=>Uf,_nullable:()=>Q$,_number:()=>Rf,_optional:()=>Y$,_overwrite:()=>vt,_parse:()=>Cr,_parseAsync:()=>Or,_pipe:()=>oC,_positive:()=>qs,_promise:()=>dC,_property:()=>Zs,_readonly:()=>iC,_record:()=>H$,_refine:()=>Wf,_regex:()=>Ur,_safeDecode:()=>ts,_safeDecodeAsync:()=>rs,_safeEncode:()=>es,_safeEncodeAsync:()=>ns,_safeParse:()=>Pr,_safeParseAsync:()=>Nr,_set:()=>K$,_size:()=>Yn,_slugify:()=>Wr,_startsWith:()=>Br,_string:()=>mf,_stringFormat:()=>Jr,_stringbool:()=>Yf,_success:()=>nC,_superRefine:()=>Jf,_symbol:()=>Df,_templateLiteral:()=>aC,_toLowerCase:()=>Zr,_toUpperCase:()=>Kr,_transform:()=>X$,_trim:()=>Hr,_tuple:()=>V$,_uint32:()=>Af,_uint64:()=>Nf,_ulid:()=>Cs,_undefined:()=>jf,_union:()=>z$,_unknown:()=>Mf,_uppercase:()=>Mr,_url:()=>ci,_uuid:()=>Ss,_uuidv4:()=>Es,_uuidv6:()=>_s,_uuidv7:()=>xs,_void:()=>Bf,_xid:()=>Os,_xor:()=>B$,clone:()=>Ve,config:()=>he,createStandardJSONSchemaMethod:()=>Gr,createToJSONSchemaMethod:()=>Qf,decode:()=>dT,decodeAsync:()=>uT,describe:()=>Gf,encode:()=>sT,encodeAsync:()=>cT,extractDefs:()=>wn,finalize:()=>Rn,flattenError:()=>Yo,formatError:()=>Qo,globalConfig:()=>Wn,globalRegistry:()=>Oe,initializeContext:()=>bn,isValidBase64:()=>Rp,isValidBase64URL:()=>ab,isValidJWT:()=>sb,locales:()=>si,meta:()=>Xf,parse:()=>Wa,parseAsync:()=>Ja,prettifyError:()=>ol,process:()=>te,regexes:()=>at,registry:()=>ws,safeDecode:()=>pT,safeDecodeAsync:()=>mT,safeEncode:()=>lT,safeEncodeAsync:()=>fT,safeParse:()=>il,safeParseAsync:()=>al,toDotPath:()=>MI,toJSONSchema:()=>Gs,treeifyError:()=>rl,util:()=>A,version:()=>ep});var NI,Vu=Object.freeze({status:"aborted"});function I(e,t,n){function o(s,d){if(s._zod||Object.defineProperty(s,"_zod",{value:{def:d,constr:a,traits:new Set},enumerable:!1}),s._zod.traits.has(e))return;s._zod.traits.add(e),t(s,d);let c=a.prototype,u=Object.keys(c);for(let l=0;l<u.length;l++){let f=u[l];f in s||(s[f]=c[f].bind(s))}}let r=n?.Parent??Object;class i extends r{}Object.defineProperty(i,"name",{value:e});function a(s){var d;let c=n?.Parent?new i:this;o(c,s),(d=c._zod).deferred??(d.deferred=[]);for(let u of c._zod.deferred)u();return c}return Object.defineProperty(a,"init",{value:o}),Object.defineProperty(a,Symbol.hasInstance,{value:s=>n?.Parent&&s instanceof n.Parent?!0:s?._zod?.traits?.has(e)}),Object.defineProperty(a,"name",{value:e}),a}var Hu=Symbol("zod_brand"),ht=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},fn=class extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}};(NI=globalThis).__zod_globalConfig??(NI.__zod_globalConfig={});var Wn=globalThis.__zod_globalConfig;function he(e){return e&&Object.assign(Wn,e),Wn}var A={};Mt(A,{BIGINT_FORMAT_RANGES:()=>tl,Class:()=>Ku,NUMBER_FORMAT_RANGES:()=>el,aborted:()=>hn,allowsEval:()=>Gu,assert:()=>MA,assertEqual:()=>DA,assertIs:()=>UA,assertNever:()=>LA,assertNotEqual:()=>jA,assignProp:()=>gn,base64ToUint8Array:()=>jI,base64urlToUint8Array:()=>nT,cached:()=>Tr,captureStackTrace:()=>Ka,cleanEnum:()=>tT,cleanRegex:()=>Ko,clone:()=>Ve,cloneDef:()=>BA,createTransparentProxy:()=>KA,defineLazy:()=>V,esc:()=>Za,escapeRegex:()=>lt,explicitlyAborted:()=>nl,extend:()=>GA,finalizeIssue:()=>He,floatSafeRemainder:()=>Wu,getElementAtPath:()=>qA,getEnumValues:()=>Zo,getLengthableOrigin:()=>Go,getParsedType:()=>ZA,getSizableOrigin:()=>Jo,hexToUint8Array:()=>oT,isObject:()=>Jn,isPlainObject:()=>yn,issue:()=>$r,joinValues:()=>b,jsonStringifyReplacer:()=>Ar,merge:()=>YA,mergeDefs:()=>qt,normalizeParams:()=>T,nullish:()=>mn,numKeys:()=>HA,objectClone:()=>zA,omit:()=>JA,optionalKeys:()=>Qu,parsedType:()=>_,partial:()=>QA,pick:()=>WA,prefixIssues:()=>et,primitiveTypes:()=>Yu,promiseAllObject:()=>FA,propertyKeyTypes:()=>Wo,randomString:()=>VA,required:()=>eT,safeExtend:()=>XA,shallowClone:()=>Xu,slugify:()=>Ju,stringifyPrimitive:()=>E,uint8ArrayToBase64:()=>UI,uint8ArrayToBase64url:()=>rT,uint8ArrayToHex:()=>iT,unwrapMessage:()=>Ho});function DA(e){return e}function jA(e){return e}function UA(e){}function LA(e){throw new Error("Unexpected value in exhaustive check")}function MA(e){}function Zo(e){let t=Object.values(e).filter(o=>typeof o=="number");return Object.entries(e).filter(([o,r])=>t.indexOf(+o)===-1).map(([o,r])=>r)}function b(e,t="|"){return e.map(n=>E(n)).join(t)}function Ar(e,t){return typeof t=="bigint"?t.toString():t}function Tr(e){return{get value(){{let n=e();return Object.defineProperty(this,"value",{value:n}),n}throw new Error("cached value already set")}}}function mn(e){return e==null}function Ko(e){let t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}function Wu(e,t){let n=e/t,o=Math.round(n),r=Number.EPSILON*Math.max(Math.abs(n),1);return Math.abs(n-o)<r?0:n-o}var DI=Symbol("evaluating");function V(e,t,n){let o;Object.defineProperty(e,t,{get(){if(o!==DI)return o===void 0&&(o=DI,o=n()),o},set(r){Object.defineProperty(e,t,{value:r})},configurable:!0})}function zA(e){return Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e))}function gn(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function qt(...e){let t={};for(let n of e){let o=Object.getOwnPropertyDescriptors(n);Object.assign(t,o)}return Object.defineProperties({},t)}function BA(e){return qt(e._zod.def)}function qA(e,t){return t?t.reduce((n,o)=>n?.[o],e):e}function FA(e){let t=Object.keys(e),n=t.map(o=>e[o]);return Promise.all(n).then(o=>{let r={};for(let i=0;i<t.length;i++)r[t[i]]=o[i];return r})}function VA(e=10){let t="abcdefghijklmnopqrstuvwxyz",n="";for(let o=0;o<e;o++)n+=t[Math.floor(Math.random()*t.length)];return n}function Za(e){return JSON.stringify(e)}function Ju(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var Ka="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function Jn(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var Gu=Tr(()=>{if(Wn.jitless||typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let e=Function;return new e(""),!0}catch{return!1}});function yn(e){if(Jn(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!="function")return!0;let n=t.prototype;return!(Jn(n)===!1||Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)}function Xu(e){return yn(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}function HA(e){let t=0;for(let n in e)Object.prototype.hasOwnProperty.call(e,n)&&t++;return t}var ZA=e=>{let t=typeof e;switch(t){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(e)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(e)?"array":e===null?"null":e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?"promise":typeof Map<"u"&&e instanceof Map?"map":typeof Set<"u"&&e instanceof Set?"set":typeof Date<"u"&&e instanceof Date?"date":typeof File<"u"&&e instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${t}`)}},Wo=new Set(["string","number","symbol"]),Yu=new Set(["string","number","bigint","boolean","symbol","undefined"]);function lt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Ve(e,t,n){let o=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(o._zod.parent=e),o}function T(e){let t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function KA(e){let t;return new Proxy({},{get(n,o,r){return t??(t=e()),Reflect.get(t,o,r)},set(n,o,r,i){return t??(t=e()),Reflect.set(t,o,r,i)},has(n,o){return t??(t=e()),Reflect.has(t,o)},deleteProperty(n,o){return t??(t=e()),Reflect.deleteProperty(t,o)},ownKeys(n){return t??(t=e()),Reflect.ownKeys(t)},getOwnPropertyDescriptor(n,o){return t??(t=e()),Reflect.getOwnPropertyDescriptor(t,o)},defineProperty(n,o,r){return t??(t=e()),Reflect.defineProperty(t,o,r)}})}function E(e){return typeof e=="bigint"?e.toString()+"n":typeof e=="string"?`"${e}"`:`${e}`}function Qu(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var el={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]},tl={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function WA(e,t){let n=e._zod.def,o=n.checks;if(o&&o.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");let i=qt(e._zod.def,{get shape(){let a={};for(let s in t){if(!(s in n.shape))throw new Error(`Unrecognized key: "${s}"`);t[s]&&(a[s]=n.shape[s])}return gn(this,"shape",a),a},checks:[]});return Ve(e,i)}function JA(e,t){let n=e._zod.def,o=n.checks;if(o&&o.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");let i=qt(e._zod.def,{get shape(){let a={...e._zod.def.shape};for(let s in t){if(!(s in n.shape))throw new Error(`Unrecognized key: "${s}"`);t[s]&&delete a[s]}return gn(this,"shape",a),a},checks:[]});return Ve(e,i)}function GA(e,t){if(!yn(t))throw new Error("Invalid input to extend: expected a plain object");let n=e._zod.def.checks;if(n&&n.length>0){let i=e._zod.def.shape;for(let a in t)if(Object.getOwnPropertyDescriptor(i,a)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let r=qt(e._zod.def,{get shape(){let i={...e._zod.def.shape,...t};return gn(this,"shape",i),i}});return Ve(e,r)}function XA(e,t){if(!yn(t))throw new Error("Invalid input to safeExtend: expected a plain object");let n=qt(e._zod.def,{get shape(){let o={...e._zod.def.shape,...t};return gn(this,"shape",o),o}});return Ve(e,n)}function YA(e,t){if(e._zod.def.checks?.length)throw new Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let n=qt(e._zod.def,{get shape(){let o={...e._zod.def.shape,...t._zod.def.shape};return gn(this,"shape",o),o},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return Ve(e,n)}function QA(e,t,n){let r=t._zod.def.checks;if(r&&r.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");let a=qt(t._zod.def,{get shape(){let s=t._zod.def.shape,d={...s};if(n)for(let c in n){if(!(c in s))throw new Error(`Unrecognized key: "${c}"`);n[c]&&(d[c]=e?new e({type:"optional",innerType:s[c]}):s[c])}else for(let c in s)d[c]=e?new e({type:"optional",innerType:s[c]}):s[c];return gn(this,"shape",d),d},checks:[]});return Ve(t,a)}function eT(e,t,n){let o=qt(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let a in n){if(!(a in i))throw new Error(`Unrecognized key: "${a}"`);n[a]&&(i[a]=new e({type:"nonoptional",innerType:r[a]}))}else for(let a in r)i[a]=new e({type:"nonoptional",innerType:r[a]});return gn(this,"shape",i),i}});return Ve(t,o)}function hn(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function nl(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function et(e,t){return t.map(n=>{var o;return(o=n).path??(o.path=[]),n.path.unshift(e),n})}function Ho(e){return typeof e=="string"?e:e?.message}function He(e,t,n){let o=e.message?e.message:Ho(e.inst?._zod.def?.error?.(e))??Ho(t?.error?.(e))??Ho(n.customError?.(e))??Ho(n.localeError?.(e))??"Invalid input",{inst:r,continue:i,input:a,...s}=e;return s.path??(s.path=[]),s.message=o,t?.reportInput&&(s.input=a),s}function Jo(e){return e instanceof Set?"set":e instanceof Map?"map":e instanceof File?"file":"unknown"}function Go(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function _(e){let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"nan":"number";case"object":{if(e===null)return"null";if(Array.isArray(e))return"array";let n=e;if(n&&Object.getPrototypeOf(n)!==Object.prototype&&"constructor"in n&&n.constructor)return n.constructor.name}}return t}function $r(...e){let[t,n,o]=e;return typeof t=="string"?{message:t,code:"custom",input:n,inst:o}:{...t}}function tT(e){return Object.entries(e).filter(([t,n])=>Number.isNaN(Number.parseInt(t,10))).map(t=>t[1])}function jI(e){let t=atob(e),n=new Uint8Array(t.length);for(let o=0;o<t.length;o++)n[o]=t.charCodeAt(o);return n}function UI(e){let t="";for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return btoa(t)}function nT(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),n="=".repeat((4-t.length%4)%4);return jI(t+n)}function rT(e){return UI(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function oT(e){let t=e.replace(/^0x/,"");if(t.length%2!==0)throw new Error("Invalid hex string length");let n=new Uint8Array(t.length/2);for(let o=0;o<t.length;o+=2)n[o/2]=Number.parseInt(t.slice(o,o+2),16);return n}function iT(e){return Array.from(e).map(t=>t.toString(16).padStart(2,"0")).join("")}var Ku=class{constructor(...t){}};var LI=(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,Ar,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Xo=I("$ZodError",LI),tt=I("$ZodError",LI,{Parent:Error});function Yo(e,t=n=>n.message){let n={},o=[];for(let r of e.issues)r.path.length>0?(n[r.path[0]]=n[r.path[0]]||[],n[r.path[0]].push(t(r))):o.push(t(r));return{formErrors:o,fieldErrors:n}}function Qo(e,t=n=>n.message){let n={_errors:[]},o=(r,i=[])=>{for(let a of r.issues)if(a.code==="invalid_union"&&a.errors.length)a.errors.map(s=>o({issues:s},[...i,...a.path]));else if(a.code==="invalid_key")o({issues:a.issues},[...i,...a.path]);else if(a.code==="invalid_element")o({issues:a.issues},[...i,...a.path]);else{let s=[...i,...a.path];if(s.length===0)n._errors.push(t(a));else{let d=n,c=0;for(;c<s.length;){let u=s[c];c===s.length-1?(d[u]=d[u]||{_errors:[]},d[u]._errors.push(t(a))):d[u]=d[u]||{_errors:[]},d=d[u],c++}}}};return o(e),n}function rl(e,t=n=>n.message){let n={errors:[]},o=(r,i=[])=>{var a,s;for(let d of r.issues)if(d.code==="invalid_union"&&d.errors.length)d.errors.map(c=>o({issues:c},[...i,...d.path]));else if(d.code==="invalid_key")o({issues:d.issues},[...i,...d.path]);else if(d.code==="invalid_element")o({issues:d.issues},[...i,...d.path]);else{let c=[...i,...d.path];if(c.length===0){n.errors.push(t(d));continue}let u=n,l=0;for(;l<c.length;){let f=c[l],g=l===c.length-1;typeof f=="string"?(u.properties??(u.properties={}),(a=u.properties)[f]??(a[f]={errors:[]}),u=u.properties[f]):(u.items??(u.items=[]),(s=u.items)[f]??(s[f]={errors:[]}),u=u.items[f]),g&&u.errors.push(t(d)),l++}}};return o(e),n}function MI(e){let t=[],n=e.map(o=>typeof o=="object"?o.key:o);for(let o of n)typeof o=="number"?t.push(`[${o}]`):typeof o=="symbol"?t.push(`[${JSON.stringify(String(o))}]`):/[^\w$]/.test(o)?t.push(`[${JSON.stringify(o)}]`):(t.length&&t.push("."),t.push(o));return t.join("")}function ol(e){let t=[],n=[...e.issues].sort((o,r)=>(o.path??[]).length-(r.path??[]).length);for(let o of n)t.push(`\u2716 ${o.message}`),o.path?.length&&t.push(` \u2192 at ${MI(o.path)}`);return t.join(`
184
- `)}var Cr=e=>(t,n,o,r)=>{let i=o?{...o,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new ht;if(a.issues.length){let s=new(r?.Err??e)(a.issues.map(d=>He(d,i,he())));throw Ka(s,r?.callee),s}return a.value},Wa=Cr(tt),Or=e=>async(t,n,o,r)=>{let i=o?{...o,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise&&(a=await a),a.issues.length){let s=new(r?.Err??e)(a.issues.map(d=>He(d,i,he())));throw Ka(s,r?.callee),s}return a.value},Ja=Or(tt),Pr=e=>(t,n,o)=>{let r=o?{...o,async:!1}:{async:!1},i=t._zod.run({value:n,issues:[]},r);if(i instanceof Promise)throw new ht;return i.issues.length?{success:!1,error:new(e??Xo)(i.issues.map(a=>He(a,r,he())))}:{success:!0,data:i.value}},il=Pr(tt),Nr=e=>async(t,n,o)=>{let r=o?{...o,async:!0}:{async:!0},i=t._zod.run({value:n,issues:[]},r);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new e(i.issues.map(a=>He(a,r,he())))}:{success:!0,data:i.value}},al=Nr(tt),Ga=e=>(t,n,o)=>{let r=o?{...o,direction:"backward"}:{direction:"backward"};return Cr(e)(t,n,r)},sT=Ga(tt),Xa=e=>(t,n,o)=>Cr(e)(t,n,o),dT=Xa(tt),Ya=e=>async(t,n,o)=>{let r=o?{...o,direction:"backward"}:{direction:"backward"};return Or(e)(t,n,r)},cT=Ya(tt),Qa=e=>async(t,n,o)=>Or(e)(t,n,o),uT=Qa(tt),es=e=>(t,n,o)=>{let r=o?{...o,direction:"backward"}:{direction:"backward"};return Pr(e)(t,n,r)},lT=es(tt),ts=e=>(t,n,o)=>Pr(e)(t,n,o),pT=ts(tt),ns=e=>async(t,n,o)=>{let r=o?{...o,direction:"backward"}:{direction:"backward"};return Nr(e)(t,n,r)},fT=ns(tt),rs=e=>async(t,n,o)=>Nr(e)(t,n,o),mT=rs(tt);var at={};Mt(at,{base64:()=>Rl,base64url:()=>os,bigint:()=>Tl,boolean:()=>Cl,browserEmail:()=>RT,cidrv4:()=>bl,cidrv6:()=>wl,cuid:()=>sl,cuid2:()=>dl,date:()=>_l,datetime:()=>kl,domain:()=>_T,duration:()=>fl,e164:()=>El,email:()=>gl,emoji:()=>yl,extendedDuration:()=>gT,guid:()=>ml,hex:()=>xT,hostname:()=>ET,html5Email:()=>IT,httpProtocol:()=>Sl,idnEmail:()=>wT,integer:()=>$l,ipv4:()=>hl,ipv6:()=>vl,ksuid:()=>ll,lowercase:()=>Nl,mac:()=>Il,md5_base64:()=>AT,md5_base64url:()=>TT,md5_hex:()=>kT,nanoid:()=>pl,null:()=>Ol,number:()=>is,rfc5322Email:()=>bT,sha1_base64:()=>CT,sha1_base64url:()=>OT,sha1_hex:()=>$T,sha256_base64:()=>NT,sha256_base64url:()=>DT,sha256_hex:()=>PT,sha384_base64:()=>UT,sha384_base64url:()=>LT,sha384_hex:()=>jT,sha512_base64:()=>zT,sha512_base64url:()=>BT,sha512_hex:()=>MT,string:()=>Al,time:()=>xl,ulid:()=>cl,undefined:()=>Pl,unicodeEmail:()=>zI,uppercase:()=>Dl,uuid:()=>Gn,uuid4:()=>yT,uuid6:()=>hT,uuid7:()=>vT,xid:()=>ul});var sl=/^[cC][0-9a-z]{6,}$/,dl=/^[0-9a-z]+$/,cl=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,ul=/^[0-9a-vA-V]{20}$/,ll=/^[A-Za-z0-9]{27}$/,pl=/^[a-zA-Z0-9_-]{21}$/,fl=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,gT=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,ml=/^([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})$/,Gn=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)$/,yT=Gn(4),hT=Gn(6),vT=Gn(7),gl=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,IT=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,bT=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,zI=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,wT=zI,RT=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,ST="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function yl(){return new RegExp(ST,"u")}var hl=/^(?:(?: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])$/,vl=/^(([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}|:))$/,Il=e=>{let t=lt(e??":");return new RegExp(`^(?:[0-9A-F]{2}${t}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${t}){5}[0-9a-f]{2}$`)},bl=/^((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])$/,wl=/^(([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])$/,Rl=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,os=/^[A-Za-z0-9_-]*$/,ET=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,_T=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,Sl=/^https?$/,El=/^\+[1-9]\d{6,14}$/,BI="(?:(?:\\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])))",_l=new RegExp(`^${BI}$`);function qI(e){let 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 xl(e){return new RegExp(`^${qI(e)}$`)}function kl(e){let t=qI({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let o=`${t}(?:${n.join("|")})`;return new RegExp(`^${BI}T(?:${o})$`)}var Al=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},Tl=/^-?\d+n?$/,$l=/^-?\d+$/,is=/^-?\d+(?:\.\d+)?$/,Cl=/^(?:true|false)$/i,Ol=/^null$/i;var Pl=/^undefined$/i;var Nl=/^[^A-Z]*$/,Dl=/^[^a-z]*$/,xT=/^[0-9a-fA-F]*$/;function ei(e,t){return new RegExp(`^[A-Za-z0-9+/]{${e}}${t}$`)}function ti(e){return new RegExp(`^[A-Za-z0-9_-]{${e}}$`)}var kT=/^[0-9a-fA-F]{32}$/,AT=ei(22,"=="),TT=ti(22),$T=/^[0-9a-fA-F]{40}$/,CT=ei(27,"="),OT=ti(27),PT=/^[0-9a-fA-F]{64}$/,NT=ei(43,"="),DT=ti(43),jT=/^[0-9a-fA-F]{96}$/,UT=ei(64,""),LT=ti(64),MT=/^[0-9a-fA-F]{128}$/,zT=ei(86,"=="),BT=ti(86);var se=I("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),VI={number:"number",bigint:"bigint",object:"date"},as=I("$ZodCheckLessThan",(e,t)=>{se.init(e,t);let n=VI[typeof t.value];e._zod.onattach.push(o=>{let r=o._zod.bag,i=(t.inclusive?r.maximum:r.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<i&&(t.inclusive?r.maximum=t.value:r.exclusiveMaximum=t.value)}),e._zod.check=o=>{(t.inclusive?o.value<=t.value:o.value<t.value)||o.issues.push({origin:n,code:"too_big",maximum:typeof t.value=="object"?t.value.getTime():t.value,input:o.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),ss=I("$ZodCheckGreaterThan",(e,t)=>{se.init(e,t);let n=VI[typeof t.value];e._zod.onattach.push(o=>{let r=o._zod.bag,i=(t.inclusive?r.minimum:r.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>i&&(t.inclusive?r.minimum=t.value:r.exclusiveMinimum=t.value)}),e._zod.check=o=>{(t.inclusive?o.value>=t.value:o.value>t.value)||o.issues.push({origin:n,code:"too_small",minimum:typeof t.value=="object"?t.value.getTime():t.value,input:o.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),jl=I("$ZodCheckMultipleOf",(e,t)=>{se.init(e,t),e._zod.onattach.push(n=>{var o;(o=n._zod.bag).multipleOf??(o.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof n.value=="bigint"?n.value%t.value===BigInt(0):Wu(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Ul=I("$ZodCheckNumberFormat",(e,t)=>{se.init(e,t),t.format=t.format||"float64";let n=t.format?.includes("int"),o=n?"int":"number",[r,i]=el[t.format];e._zod.onattach.push(a=>{let s=a._zod.bag;s.format=t.format,s.minimum=r,s.maximum=i,n&&(s.pattern=$l)}),e._zod.check=a=>{let s=a.value;if(n){if(!Number.isInteger(s)){a.issues.push({expected:o,format:t.format,code:"invalid_type",continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?a.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:o,inclusive:!0,continue:!t.abort}):a.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:o,inclusive:!0,continue:!t.abort});return}}s<r&&a.issues.push({origin:"number",input:s,code:"too_small",minimum:r,inclusive:!0,inst:e,continue:!t.abort}),s>i&&a.issues.push({origin:"number",input:s,code:"too_big",maximum:i,inclusive:!0,inst:e,continue:!t.abort})}}),Ll=I("$ZodCheckBigIntFormat",(e,t)=>{se.init(e,t);let[n,o]=tl[t.format];e._zod.onattach.push(r=>{let i=r._zod.bag;i.format=t.format,i.minimum=n,i.maximum=o}),e._zod.check=r=>{let i=r.value;i<n&&r.issues.push({origin:"bigint",input:i,code:"too_small",minimum:n,inclusive:!0,inst:e,continue:!t.abort}),i>o&&r.issues.push({origin:"bigint",input:i,code:"too_big",maximum:o,inclusive:!0,inst:e,continue:!t.abort})}}),Ml=I("$ZodCheckMaxSize",(e,t)=>{var n;se.init(e,t),(n=e._zod.def).when??(n.when=o=>{let r=o.value;return!mn(r)&&r.size!==void 0}),e._zod.onattach.push(o=>{let r=o._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<r&&(o._zod.bag.maximum=t.maximum)}),e._zod.check=o=>{let r=o.value;r.size<=t.maximum||o.issues.push({origin:Jo(r),code:"too_big",maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),zl=I("$ZodCheckMinSize",(e,t)=>{var n;se.init(e,t),(n=e._zod.def).when??(n.when=o=>{let r=o.value;return!mn(r)&&r.size!==void 0}),e._zod.onattach.push(o=>{let r=o._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>r&&(o._zod.bag.minimum=t.minimum)}),e._zod.check=o=>{let r=o.value;r.size>=t.minimum||o.issues.push({origin:Jo(r),code:"too_small",minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Bl=I("$ZodCheckSizeEquals",(e,t)=>{var n;se.init(e,t),(n=e._zod.def).when??(n.when=o=>{let r=o.value;return!mn(r)&&r.size!==void 0}),e._zod.onattach.push(o=>{let r=o._zod.bag;r.minimum=t.size,r.maximum=t.size,r.size=t.size}),e._zod.check=o=>{let r=o.value,i=r.size;if(i===t.size)return;let a=i>t.size;o.issues.push({origin:Jo(r),...a?{code:"too_big",maximum:t.size}:{code:"too_small",minimum:t.size},inclusive:!0,exact:!0,input:o.value,inst:e,continue:!t.abort})}}),ql=I("$ZodCheckMaxLength",(e,t)=>{var n;se.init(e,t),(n=e._zod.def).when??(n.when=o=>{let r=o.value;return!mn(r)&&r.length!==void 0}),e._zod.onattach.push(o=>{let r=o._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<r&&(o._zod.bag.maximum=t.maximum)}),e._zod.check=o=>{let r=o.value;if(r.length<=t.maximum)return;let a=Go(r);o.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Fl=I("$ZodCheckMinLength",(e,t)=>{var n;se.init(e,t),(n=e._zod.def).when??(n.when=o=>{let r=o.value;return!mn(r)&&r.length!==void 0}),e._zod.onattach.push(o=>{let r=o._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>r&&(o._zod.bag.minimum=t.minimum)}),e._zod.check=o=>{let r=o.value;if(r.length>=t.minimum)return;let a=Go(r);o.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Vl=I("$ZodCheckLengthEquals",(e,t)=>{var n;se.init(e,t),(n=e._zod.def).when??(n.when=o=>{let r=o.value;return!mn(r)&&r.length!==void 0}),e._zod.onattach.push(o=>{let r=o._zod.bag;r.minimum=t.length,r.maximum=t.length,r.length=t.length}),e._zod.check=o=>{let r=o.value,i=r.length;if(i===t.length)return;let a=Go(r),s=i>t.length;o.issues.push({origin:a,...s?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:o.value,inst:e,continue:!t.abort})}}),Dr=I("$ZodCheckStringFormat",(e,t)=>{var n,o;se.init(e,t),e._zod.onattach.push(r=>{let i=r._zod.bag;i.format=t.format,t.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=r=>{t.pattern.lastIndex=0,!t.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:t.format,input:r.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(o=e._zod).check??(o.check=()=>{})}),Hl=I("$ZodCheckRegex",(e,t)=>{Dr.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Zl=I("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Nl),Dr.init(e,t)}),Kl=I("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Dl),Dr.init(e,t)}),Wl=I("$ZodCheckIncludes",(e,t)=>{se.init(e,t);let n=lt(t.includes),o=new RegExp(typeof t.position=="number"?`^.{${t.position}}${n}`:n);t.pattern=o,e._zod.onattach.push(r=>{let i=r._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(o)}),e._zod.check=r=>{r.value.includes(t.includes,t.position)||r.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:r.value,inst:e,continue:!t.abort})}}),Jl=I("$ZodCheckStartsWith",(e,t)=>{se.init(e,t);let n=new RegExp(`^${lt(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push(o=>{let r=o._zod.bag;r.patterns??(r.patterns=new Set),r.patterns.add(n)}),e._zod.check=o=>{o.value.startsWith(t.prefix)||o.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:o.value,inst:e,continue:!t.abort})}}),Gl=I("$ZodCheckEndsWith",(e,t)=>{se.init(e,t);let n=new RegExp(`.*${lt(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push(o=>{let r=o._zod.bag;r.patterns??(r.patterns=new Set),r.patterns.add(n)}),e._zod.check=o=>{o.value.endsWith(t.suffix)||o.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:o.value,inst:e,continue:!t.abort})}});function FI(e,t,n){e.issues.length&&t.issues.push(...et(n,e.issues))}var Xl=I("$ZodCheckProperty",(e,t)=>{se.init(e,t),e._zod.check=n=>{let o=t.schema._zod.run({value:n.value[t.property],issues:[]},{});if(o instanceof Promise)return o.then(r=>FI(r,n,t.property));FI(o,n,t.property)}}),Yl=I("$ZodCheckMimeType",(e,t)=>{se.init(e,t);let n=new Set(t.mime);e._zod.onattach.push(o=>{o._zod.bag.mime=t.mime}),e._zod.check=o=>{n.has(o.value.type)||o.issues.push({code:"invalid_value",values:t.mime,input:o.value.type,inst:e,continue:!t.abort})}}),Ql=I("$ZodCheckOverwrite",(e,t)=>{se.init(e,t),e._zod.check=n=>{n.value=t.tx(n.value)}});var ni=class{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}let o=t.split(`
185
- `).filter(a=>a),r=Math.min(...o.map(a=>a.length-a.trimStart().length)),i=o.map(a=>a.slice(r)).map(a=>" ".repeat(this.indent*2)+a);for(let a of i)this.content.push(a)}compile(){let t=Function,n=this?.args,r=[...(this?.content??[""]).map(i=>` ${i}`)];return new t(...n,r.join(`
186
- `))}};var ep={major:4,minor:4,patch:3};var M=I("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=ep;let o=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&o.unshift(e);for(let r of o)for(let i of r._zod.onattach)i(e);if(o.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let r=(a,s,d)=>{let c=hn(a),u;for(let l of s){if(l._zod.def.when){if(nl(a)||!l._zod.def.when(a))continue}else if(c)continue;let f=a.issues.length,g=l._zod.check(a);if(g instanceof Promise&&d?.async===!1)throw new ht;if(u||g instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await g,a.issues.length!==f&&(c||(c=hn(a,f)))});else{if(a.issues.length===f)continue;c||(c=hn(a,f))}}return u?u.then(()=>a):a},i=(a,s,d)=>{if(hn(a))return a.aborted=!0,a;let c=r(s,o,d);if(c instanceof Promise){if(d.async===!1)throw new ht;return c.then(u=>e._zod.parse(u,d))}return e._zod.parse(c,d)};e._zod.run=(a,s)=>{if(s.skipChecks)return e._zod.parse(a,s);if(s.direction==="backward"){let c=e._zod.parse({value:a.value,issues:[]},{...s,skipChecks:!0});return c instanceof Promise?c.then(u=>i(u,a,s)):i(c,a,s)}let d=e._zod.parse(a,s);if(d instanceof Promise){if(s.async===!1)throw new ht;return d.then(c=>r(c,o,s))}return r(d,o,s)}}V(e,"~standard",()=>({validate:r=>{try{let i=il(e,r);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return al(e,r).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}))}),Xn=I("$ZodString",(e,t)=>{M.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Al(e._zod.bag),e._zod.parse=(n,o)=>{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}}),oe=I("$ZodStringFormat",(e,t)=>{Dr.init(e,t),Xn.init(e,t)}),np=I("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=ml),oe.init(e,t)}),rp=I("$ZodUUID",(e,t)=>{if(t.version){let o={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(o===void 0)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=Gn(o))}else t.pattern??(t.pattern=Gn());oe.init(e,t)}),op=I("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=gl),oe.init(e,t)}),ip=I("$ZodURL",(e,t)=>{oe.init(e,t),e._zod.check=n=>{try{let o=n.value.trim();if(!t.normalize&&t.protocol?.source===Sl.source&&!/^https?:\/\//i.test(o)){n.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:n.value,inst:e,continue:!t.abort});return}let r=new URL(o);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(r.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(r.protocol.endsWith(":")?r.protocol.slice(0,-1):r.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=r.href:n.value=o;return}catch{n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),ap=I("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=yl()),oe.init(e,t)}),sp=I("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=pl),oe.init(e,t)}),dp=I("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=sl),oe.init(e,t)}),cp=I("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=dl),oe.init(e,t)}),up=I("$ZodULID",(e,t)=>{t.pattern??(t.pattern=cl),oe.init(e,t)}),lp=I("$ZodXID",(e,t)=>{t.pattern??(t.pattern=ul),oe.init(e,t)}),pp=I("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=ll),oe.init(e,t)}),fp=I("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=kl(t)),oe.init(e,t)}),mp=I("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=_l),oe.init(e,t)}),gp=I("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=xl(t)),oe.init(e,t)}),yp=I("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=fl),oe.init(e,t)}),hp=I("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=hl),oe.init(e,t),e._zod.bag.format="ipv4"}),vp=I("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=vl),oe.init(e,t),e._zod.bag.format="ipv6",e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),Ip=I("$ZodMAC",(e,t)=>{t.pattern??(t.pattern=Il(t.delimiter)),oe.init(e,t),e._zod.bag.format="mac"}),bp=I("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=bl),oe.init(e,t)}),wp=I("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=wl),oe.init(e,t),e._zod.check=n=>{let o=n.value.split("/");try{if(o.length!==2)throw new Error;let[r,i]=o;if(!i)throw new Error;let a=Number(i);if(`${a}`!==i)throw new Error;if(a<0||a>128)throw new Error;new URL(`http://[${r}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});function Rp(e){if(e==="")return!0;if(/\s/.test(e)||e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var Sp=I("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=Rl),oe.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=n=>{Rp(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});function ab(e){if(!os.test(e))return!1;let t=e.replace(/[-_]/g,o=>o==="-"?"+":"/"),n=t.padEnd(Math.ceil(t.length/4)*4,"=");return Rp(n)}var Ep=I("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=os),oe.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=n=>{ab(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),_p=I("$ZodE164",(e,t)=>{t.pattern??(t.pattern=El),oe.init(e,t)});function sb(e,t=null){try{let n=e.split(".");if(n.length!==3)return!1;let[o]=n;if(!o)return!1;let r=JSON.parse(atob(o));return!("typ"in r&&r?.typ!=="JWT"||!r.alg||t&&(!("alg"in r)||r.alg!==t))}catch{return!1}}var xp=I("$ZodJWT",(e,t)=>{oe.init(e,t),e._zod.check=n=>{sb(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),kp=I("$ZodCustomStringFormat",(e,t)=>{oe.init(e,t),e._zod.check=n=>{t.fn(n.value)||n.issues.push({code:"invalid_format",format:t.format,input:n.value,inst:e,continue:!t.abort})}}),ps=I("$ZodNumber",(e,t)=>{M.init(e,t),e._zod.pattern=e._zod.bag.pattern??is,e._zod.parse=(n,o)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let r=n.value;if(typeof r=="number"&&!Number.isNaN(r)&&Number.isFinite(r))return n;let i=typeof r=="number"?Number.isNaN(r)?"NaN":Number.isFinite(r)?void 0:"Infinity":void 0;return n.issues.push({expected:"number",code:"invalid_type",input:r,inst:e,...i?{received:i}:{}}),n}}),Ap=I("$ZodNumberFormat",(e,t)=>{Ul.init(e,t),ps.init(e,t)}),ri=I("$ZodBoolean",(e,t)=>{M.init(e,t),e._zod.pattern=Cl,e._zod.parse=(n,o)=>{if(t.coerce)try{n.value=!!n.value}catch{}let r=n.value;return typeof r=="boolean"||n.issues.push({expected:"boolean",code:"invalid_type",input:r,inst:e}),n}}),fs=I("$ZodBigInt",(e,t)=>{M.init(e,t),e._zod.pattern=Tl,e._zod.parse=(n,o)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch{}return typeof n.value=="bigint"||n.issues.push({expected:"bigint",code:"invalid_type",input:n.value,inst:e}),n}}),Tp=I("$ZodBigIntFormat",(e,t)=>{Ll.init(e,t),fs.init(e,t)}),$p=I("$ZodSymbol",(e,t)=>{M.init(e,t),e._zod.parse=(n,o)=>{let r=n.value;return typeof r=="symbol"||n.issues.push({expected:"symbol",code:"invalid_type",input:r,inst:e}),n}}),Cp=I("$ZodUndefined",(e,t)=>{M.init(e,t),e._zod.pattern=Pl,e._zod.values=new Set([void 0]),e._zod.parse=(n,o)=>{let r=n.value;return typeof r>"u"||n.issues.push({expected:"undefined",code:"invalid_type",input:r,inst:e}),n}}),Op=I("$ZodNull",(e,t)=>{M.init(e,t),e._zod.pattern=Ol,e._zod.values=new Set([null]),e._zod.parse=(n,o)=>{let r=n.value;return r===null||n.issues.push({expected:"null",code:"invalid_type",input:r,inst:e}),n}}),Pp=I("$ZodAny",(e,t)=>{M.init(e,t),e._zod.parse=n=>n}),Np=I("$ZodUnknown",(e,t)=>{M.init(e,t),e._zod.parse=n=>n}),Dp=I("$ZodNever",(e,t)=>{M.init(e,t),e._zod.parse=(n,o)=>(n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n)}),jp=I("$ZodVoid",(e,t)=>{M.init(e,t),e._zod.parse=(n,o)=>{let r=n.value;return typeof r>"u"||n.issues.push({expected:"void",code:"invalid_type",input:r,inst:e}),n}}),Up=I("$ZodDate",(e,t)=>{M.init(e,t),e._zod.parse=(n,o)=>{if(t.coerce)try{n.value=new Date(n.value)}catch{}let r=n.value,i=r instanceof Date;return i&&!Number.isNaN(r.getTime())||n.issues.push({expected:"date",code:"invalid_type",input:r,...i?{received:"Invalid Date"}:{},inst:e}),n}});function ZI(e,t,n){e.issues.length&&t.issues.push(...et(n,e.issues)),t.value[n]=e.value}var Lp=I("$ZodArray",(e,t)=>{M.init(e,t),e._zod.parse=(n,o)=>{let r=n.value;if(!Array.isArray(r))return n.issues.push({expected:"array",code:"invalid_type",input:r,inst:e}),n;n.value=Array(r.length);let i=[];for(let a=0;a<r.length;a++){let s=r[a],d=t.element._zod.run({value:s,issues:[]},o);d instanceof Promise?i.push(d.then(c=>ZI(c,n,a))):ZI(d,n,a)}return i.length?Promise.all(i).then(()=>n):n}});function ls(e,t,n,o,r,i){let a=n in o;if(e.issues.length){if(r&&i&&!a)return;t.issues.push(...et(n,e.issues))}if(!a&&!r){e.issues.length||t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[n]});return}e.value===void 0?a&&(t.value[n]=void 0):t.value[n]=e.value}function db(e){let t=Object.keys(e.shape);for(let o of t)if(!e.shape?.[o]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${o}": expected a Zod schema`);let n=Qu(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function cb(e,t,n,o,r,i){let a=[],s=r.keySet,d=r.catchall._zod,c=d.def.type,u=d.optin==="optional",l=d.optout==="optional";for(let f in t){if(f==="__proto__"||s.has(f))continue;if(c==="never"){a.push(f);continue}let g=d.run({value:t[f],issues:[]},o);g instanceof Promise?e.push(g.then(p=>ls(p,n,f,t,u,l))):ls(g,n,f,t,u,l)}return a.length&&n.issues.push({code:"unrecognized_keys",keys:a,input:t,inst:i}),e.length?Promise.all(e).then(()=>n):n}var ub=I("$ZodObject",(e,t)=>{if(M.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){let s=t.shape;Object.defineProperty(t,"shape",{get:()=>{let d={...s};return Object.defineProperty(t,"shape",{value:d}),d}})}let o=Tr(()=>db(t));V(e._zod,"propValues",()=>{let s=t.shape,d={};for(let c in s){let u=s[c]._zod;if(u.values){d[c]??(d[c]=new Set);for(let l of u.values)d[c].add(l)}}return d});let r=Jn,i=t.catchall,a;e._zod.parse=(s,d)=>{a??(a=o.value);let c=s.value;if(!r(c))return s.issues.push({expected:"object",code:"invalid_type",input:c,inst:e}),s;s.value={};let u=[],l=a.shape;for(let f of a.keys){let g=l[f],p=g._zod.optin==="optional",v=g._zod.optout==="optional",w=g._zod.run({value:c[f],issues:[]},d);w instanceof Promise?u.push(w.then(k=>ls(k,s,f,c,p,v))):ls(w,s,f,c,p,v)}return i?cb(u,c,s,d,o.value,e):u.length?Promise.all(u).then(()=>s):s}}),Mp=I("$ZodObjectJIT",(e,t)=>{ub.init(e,t);let n=e._zod.parse,o=Tr(()=>db(t)),r=f=>{let g=new ni(["shape","payload","ctx"]),p=o.value,v=N=>{let D=Za(N);return`shape[${D}]._zod.run({ value: input[${D}], issues: [] }, ctx)`};g.write("const input = payload.value;");let w=Object.create(null),k=0;for(let N of p.keys)w[N]=`key_${k++}`;g.write("const newResult = {};");for(let N of p.keys){let D=w[N],W=Za(N),Ee=f[N],Nn=Ee?._zod?.optin==="optional",yr=Ee?._zod?.optout==="optional";g.write(`const ${D} = ${v(N)};`),Nn&&yr?g.write(`
187
- if (${D}.issues.length) {
188
- if (${W} in input) {
189
- payload.issues = payload.issues.concat(${D}.issues.map(iss => ({
190
- ...iss,
191
- path: iss.path ? [${W}, ...iss.path] : [${W}]
192
- })));
193
- }
194
- }
195
-
196
- if (${D}.value === undefined) {
197
- if (${W} in input) {
198
- newResult[${W}] = undefined;
199
- }
200
- } else {
201
- newResult[${W}] = ${D}.value;
202
- }
203
-
204
- `):Nn?g.write(`
205
- if (${D}.issues.length) {
206
- payload.issues = payload.issues.concat(${D}.issues.map(iss => ({
207
- ...iss,
208
- path: iss.path ? [${W}, ...iss.path] : [${W}]
209
- })));
210
- }
211
-
212
- if (${D}.value === undefined) {
213
- if (${W} in input) {
214
- newResult[${W}] = undefined;
215
- }
216
- } else {
217
- newResult[${W}] = ${D}.value;
218
- }
219
-
220
- `):g.write(`
221
- const ${D}_present = ${W} in input;
222
- if (${D}.issues.length) {
223
- payload.issues = payload.issues.concat(${D}.issues.map(iss => ({
224
- ...iss,
225
- path: iss.path ? [${W}, ...iss.path] : [${W}]
226
- })));
227
- }
228
- if (!${D}_present && !${D}.issues.length) {
229
- payload.issues.push({
230
- code: "invalid_type",
231
- expected: "nonoptional",
232
- input: undefined,
233
- path: [${W}]
234
- });
235
- }
236
-
237
- if (${D}_present) {
238
- if (${D}.value === undefined) {
239
- newResult[${W}] = undefined;
240
- } else {
241
- newResult[${W}] = ${D}.value;
242
- }
243
- }
244
-
245
- `)}g.write("payload.value = newResult;"),g.write("return payload;");let P=g.compile();return(N,D)=>P(f,N,D)},i,a=Jn,s=!Wn.jitless,c=s&&Gu.value,u=t.catchall,l;e._zod.parse=(f,g)=>{l??(l=o.value);let p=f.value;return a(p)?s&&c&&g?.async===!1&&g.jitless!==!0?(i||(i=r(t.shape)),f=i(f,g),u?cb([],p,f,g,l,e):f):n(f,g):(f.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),f)}});function KI(e,t,n,o){for(let i of e)if(i.issues.length===0)return t.value=i.value,t;let r=e.filter(i=>!hn(i));return r.length===1?(t.value=r[0].value,r[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map(i=>i.issues.map(a=>He(a,o,he())))}),t)}var oi=I("$ZodUnion",(e,t)=>{M.init(e,t),V(e._zod,"optin",()=>t.options.some(o=>o._zod.optin==="optional")?"optional":void 0),V(e._zod,"optout",()=>t.options.some(o=>o._zod.optout==="optional")?"optional":void 0),V(e._zod,"values",()=>{if(t.options.every(o=>o._zod.values))return new Set(t.options.flatMap(o=>Array.from(o._zod.values)))}),V(e._zod,"pattern",()=>{if(t.options.every(o=>o._zod.pattern)){let o=t.options.map(r=>r._zod.pattern);return new RegExp(`^(${o.map(r=>Ko(r.source)).join("|")})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(o,r)=>{if(n)return n(o,r);let i=!1,a=[];for(let s of t.options){let d=s._zod.run({value:o.value,issues:[]},r);if(d instanceof Promise)a.push(d),i=!0;else{if(d.issues.length===0)return d;a.push(d)}}return i?Promise.all(a).then(s=>KI(s,o,e,r)):KI(a,o,e,r)}});function WI(e,t,n,o){let r=e.filter(i=>i.issues.length===0);return r.length===1?(t.value=r[0].value,t):(r.length===0?t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map(i=>i.issues.map(a=>He(a,o,he())))}):t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:[],inclusive:!1}),t)}var zp=I("$ZodXor",(e,t)=>{oi.init(e,t),t.inclusive=!1;let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(o,r)=>{if(n)return n(o,r);let i=!1,a=[];for(let s of t.options){let d=s._zod.run({value:o.value,issues:[]},r);d instanceof Promise?(a.push(d),i=!0):a.push(d)}return i?Promise.all(a).then(s=>WI(s,o,e,r)):WI(a,o,e,r)}}),Bp=I("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,oi.init(e,t);let n=e._zod.parse;V(e._zod,"propValues",()=>{let r={};for(let i of t.options){let a=i._zod.propValues;if(!a||Object.keys(a).length===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(i)}"`);for(let[s,d]of Object.entries(a)){r[s]||(r[s]=new Set);for(let c of d)r[s].add(c)}}return r});let o=Tr(()=>{let r=t.options,i=new Map;for(let a of r){let s=a._zod.propValues?.[t.discriminator];if(!s||s.size===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(a)}"`);for(let d of s){if(i.has(d))throw new Error(`Duplicate discriminator value "${String(d)}"`);i.set(d,a)}}return i});e._zod.parse=(r,i)=>{let a=r.value;if(!Jn(a))return r.issues.push({code:"invalid_type",expected:"object",input:a,inst:e}),r;let s=o.value.get(a?.[t.discriminator]);return s?s._zod.run(r,i):t.unionFallback||i.direction==="backward"?n(r,i):(r.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,options:Array.from(o.value.keys()),input:a,path:[t.discriminator],inst:e}),r)}}),qp=I("$ZodIntersection",(e,t)=>{M.init(e,t),e._zod.parse=(n,o)=>{let r=n.value,i=t.left._zod.run({value:r,issues:[]},o),a=t.right._zod.run({value:r,issues:[]},o);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([d,c])=>JI(n,d,c)):JI(n,i,a)}});function tp(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(yn(e)&&yn(t)){let n=Object.keys(t),o=Object.keys(e).filter(i=>n.indexOf(i)!==-1),r={...e,...t};for(let i of o){let a=tp(e[i],t[i]);if(!a.valid)return{valid:!1,mergeErrorPath:[i,...a.mergeErrorPath]};r[i]=a.data}return{valid:!0,data:r}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let o=0;o<e.length;o++){let r=e[o],i=t[o],a=tp(r,i);if(!a.valid)return{valid:!1,mergeErrorPath:[o,...a.mergeErrorPath]};n.push(a.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function JI(e,t,n){let o=new Map,r;for(let s of t.issues)if(s.code==="unrecognized_keys"){r??(r=s);for(let d of s.keys)o.has(d)||o.set(d,{}),o.get(d).l=!0}else e.issues.push(s);for(let s of n.issues)if(s.code==="unrecognized_keys")for(let d of s.keys)o.has(d)||o.set(d,{}),o.get(d).r=!0;else e.issues.push(s);let i=[...o].filter(([,s])=>s.l&&s.r).map(([s])=>s);if(i.length&&r&&e.issues.push({...r,keys:i}),hn(e))return e;let a=tp(t.value,n.value);if(!a.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(a.mergeErrorPath)}`);return e.value=a.data,e}var ms=I("$ZodTuple",(e,t)=>{M.init(e,t);let n=t.items;e._zod.parse=(o,r)=>{let i=o.value;if(!Array.isArray(i))return o.issues.push({input:i,inst:e,expected:"tuple",code:"invalid_type"}),o;o.value=[];let a=[],s=GI(n,"optin"),d=GI(n,"optout");if(!t.rest){if(i.length<s)return o.issues.push({code:"too_small",minimum:s,inclusive:!0,input:i,inst:e,origin:"array"}),o;i.length>n.length&&o.issues.push({code:"too_big",maximum:n.length,inclusive:!0,input:i,inst:e,origin:"array"})}let c=new Array(n.length);for(let u=0;u<n.length;u++){let l=n[u]._zod.run({value:i[u],issues:[]},r);l instanceof Promise?a.push(l.then(f=>{c[u]=f})):c[u]=l}if(t.rest){let u=n.length-1,l=i.slice(n.length);for(let f of l){u++;let g=t.rest._zod.run({value:f,issues:[]},r);g instanceof Promise?a.push(g.then(p=>XI(p,o,u))):XI(g,o,u)}}return a.length?Promise.all(a).then(()=>YI(c,o,n,i,d)):YI(c,o,n,i,d)}});function GI(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!=="optional")return n+1;return 0}function XI(e,t,n){e.issues.length&&t.issues.push(...et(n,e.issues)),t.value[n]=e.value}function YI(e,t,n,o,r){for(let i=0;i<n.length;i++){let a=e[i],s=i<o.length;if(a.issues.length){if(!s&&i>=r){t.value.length=i;break}t.issues.push(...et(i,a.issues))}t.value[i]=a.value}for(let i=t.value.length-1;i>=o.length&&(n[i]._zod.optout==="optional"&&t.value[i]===void 0);i--)t.value.length=i;return t}var Fp=I("$ZodRecord",(e,t)=>{M.init(e,t),e._zod.parse=(n,o)=>{let r=n.value;if(!yn(r))return n.issues.push({expected:"record",code:"invalid_type",input:r,inst:e}),n;let i=[],a=t.keyType._zod.values;if(a){n.value={};let s=new Set;for(let c of a)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){s.add(typeof c=="number"?c.toString():c);let u=t.keyType._zod.run({value:c,issues:[]},o);if(u instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(u.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:u.issues.map(g=>He(g,o,he())),input:c,path:[c],inst:e});continue}let l=u.value,f=t.valueType._zod.run({value:r[c],issues:[]},o);f instanceof Promise?i.push(f.then(g=>{g.issues.length&&n.issues.push(...et(c,g.issues)),n.value[l]=g.value})):(f.issues.length&&n.issues.push(...et(c,f.issues)),n.value[l]=f.value)}let d;for(let c in r)s.has(c)||(d=d??[],d.push(c));d&&d.length>0&&n.issues.push({code:"unrecognized_keys",input:r,inst:e,keys:d})}else{n.value={};for(let s of Reflect.ownKeys(r)){if(s==="__proto__"||!Object.prototype.propertyIsEnumerable.call(r,s))continue;let d=t.keyType._zod.run({value:s,issues:[]},o);if(d instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof s=="string"&&is.test(s)&&d.issues.length){let l=t.keyType._zod.run({value:Number(s),issues:[]},o);if(l instanceof Promise)throw new Error("Async schemas not supported in object keys currently");l.issues.length===0&&(d=l)}if(d.issues.length){t.mode==="loose"?n.value[s]=r[s]:n.issues.push({code:"invalid_key",origin:"record",issues:d.issues.map(l=>He(l,o,he())),input:s,path:[s],inst:e});continue}let u=t.valueType._zod.run({value:r[s],issues:[]},o);u instanceof Promise?i.push(u.then(l=>{l.issues.length&&n.issues.push(...et(s,l.issues)),n.value[d.value]=l.value})):(u.issues.length&&n.issues.push(...et(s,u.issues)),n.value[d.value]=u.value)}}return i.length?Promise.all(i).then(()=>n):n}}),Vp=I("$ZodMap",(e,t)=>{M.init(e,t),e._zod.parse=(n,o)=>{let r=n.value;if(!(r instanceof Map))return n.issues.push({expected:"map",code:"invalid_type",input:r,inst:e}),n;let i=[];n.value=new Map;for(let[a,s]of r){let d=t.keyType._zod.run({value:a,issues:[]},o),c=t.valueType._zod.run({value:s,issues:[]},o);d instanceof Promise||c instanceof Promise?i.push(Promise.all([d,c]).then(([u,l])=>{QI(u,l,n,a,r,e,o)})):QI(d,c,n,a,r,e,o)}return i.length?Promise.all(i).then(()=>n):n}});function QI(e,t,n,o,r,i,a){e.issues.length&&(Wo.has(typeof o)?n.issues.push(...et(o,e.issues)):n.issues.push({code:"invalid_key",origin:"map",input:r,inst:i,issues:e.issues.map(s=>He(s,a,he()))})),t.issues.length&&(Wo.has(typeof o)?n.issues.push(...et(o,t.issues)):n.issues.push({origin:"map",code:"invalid_element",input:r,inst:i,key:o,issues:t.issues.map(s=>He(s,a,he()))})),n.value.set(e.value,t.value)}var Hp=I("$ZodSet",(e,t)=>{M.init(e,t),e._zod.parse=(n,o)=>{let r=n.value;if(!(r instanceof Set))return n.issues.push({input:r,inst:e,expected:"set",code:"invalid_type"}),n;let i=[];n.value=new Set;for(let a of r){let s=t.valueType._zod.run({value:a,issues:[]},o);s instanceof Promise?i.push(s.then(d=>eb(d,n))):eb(s,n)}return i.length?Promise.all(i).then(()=>n):n}});function eb(e,t){e.issues.length&&t.issues.push(...e.issues),t.value.add(e.value)}var Zp=I("$ZodEnum",(e,t)=>{M.init(e,t);let n=Zo(t.entries),o=new Set(n);e._zod.values=o,e._zod.pattern=new RegExp(`^(${n.filter(r=>Wo.has(typeof r)).map(r=>typeof r=="string"?lt(r):r.toString()).join("|")})$`),e._zod.parse=(r,i)=>{let a=r.value;return o.has(a)||r.issues.push({code:"invalid_value",values:n,input:a,inst:e}),r}}),Kp=I("$ZodLiteral",(e,t)=>{if(M.init(e,t),t.values.length===0)throw new Error("Cannot create literal schema with no valid values");let n=new Set(t.values);e._zod.values=n,e._zod.pattern=new RegExp(`^(${t.values.map(o=>typeof o=="string"?lt(o):o?lt(o.toString()):String(o)).join("|")})$`),e._zod.parse=(o,r)=>{let i=o.value;return n.has(i)||o.issues.push({code:"invalid_value",values:t.values,input:i,inst:e}),o}}),Wp=I("$ZodFile",(e,t)=>{M.init(e,t),e._zod.parse=(n,o)=>{let r=n.value;return r instanceof File||n.issues.push({expected:"file",code:"invalid_type",input:r,inst:e}),n}}),Jp=I("$ZodTransform",(e,t)=>{M.init(e,t),e._zod.optin="optional",e._zod.parse=(n,o)=>{if(o.direction==="backward")throw new fn(e.constructor.name);let r=t.transform(n.value,n);if(o.async)return(r instanceof Promise?r:Promise.resolve(r)).then(a=>(n.value=a,n.fallback=!0,n));if(r instanceof Promise)throw new ht;return n.value=r,n.fallback=!0,n}});function tb(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}var gs=I("$ZodOptional",(e,t)=>{M.init(e,t),e._zod.optin="optional",e._zod.optout="optional",V(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),V(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${Ko(n.source)})?$`):void 0}),e._zod.parse=(n,o)=>{if(t.innerType._zod.optin==="optional"){let r=n.value,i=t.innerType._zod.run(n,o);return i instanceof Promise?i.then(a=>tb(a,r)):tb(i,r)}return n.value===void 0?n:t.innerType._zod.run(n,o)}}),Gp=I("$ZodExactOptional",(e,t)=>{gs.init(e,t),V(e._zod,"values",()=>t.innerType._zod.values),V(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(n,o)=>t.innerType._zod.run(n,o)}),Xp=I("$ZodNullable",(e,t)=>{M.init(e,t),V(e._zod,"optin",()=>t.innerType._zod.optin),V(e._zod,"optout",()=>t.innerType._zod.optout),V(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${Ko(n.source)}|null)$`):void 0}),V(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(n,o)=>n.value===null?n:t.innerType._zod.run(n,o)}),Yp=I("$ZodDefault",(e,t)=>{M.init(e,t),e._zod.optin="optional",V(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,o)=>{if(o.direction==="backward")return t.innerType._zod.run(n,o);if(n.value===void 0)return n.value=t.defaultValue,n;let r=t.innerType._zod.run(n,o);return r instanceof Promise?r.then(i=>nb(i,t)):nb(r,t)}});function nb(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var Qp=I("$ZodPrefault",(e,t)=>{M.init(e,t),e._zod.optin="optional",V(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,o)=>(o.direction==="backward"||n.value===void 0&&(n.value=t.defaultValue),t.innerType._zod.run(n,o))}),ef=I("$ZodNonOptional",(e,t)=>{M.init(e,t),V(e._zod,"values",()=>{let n=t.innerType._zod.values;return n?new Set([...n].filter(o=>o!==void 0)):void 0}),e._zod.parse=(n,o)=>{let r=t.innerType._zod.run(n,o);return r instanceof Promise?r.then(i=>rb(i,e)):rb(r,e)}});function rb(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}var tf=I("$ZodSuccess",(e,t)=>{M.init(e,t),e._zod.parse=(n,o)=>{if(o.direction==="backward")throw new fn("ZodSuccess");let r=t.innerType._zod.run(n,o);return r instanceof Promise?r.then(i=>(n.value=i.issues.length===0,n)):(n.value=r.issues.length===0,n)}}),nf=I("$ZodCatch",(e,t)=>{M.init(e,t),e._zod.optin="optional",V(e._zod,"optout",()=>t.innerType._zod.optout),V(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,o)=>{if(o.direction==="backward")return t.innerType._zod.run(n,o);let r=t.innerType._zod.run(n,o);return r instanceof Promise?r.then(i=>(n.value=i.value,i.issues.length&&(n.value=t.catchValue({...n,error:{issues:i.issues.map(a=>He(a,o,he()))},input:n.value}),n.issues=[],n.fallback=!0),n)):(n.value=r.value,r.issues.length&&(n.value=t.catchValue({...n,error:{issues:r.issues.map(i=>He(i,o,he()))},input:n.value}),n.issues=[],n.fallback=!0),n)}}),rf=I("$ZodNaN",(e,t)=>{M.init(e,t),e._zod.parse=(n,o)=>((typeof n.value!="number"||!Number.isNaN(n.value))&&n.issues.push({input:n.value,inst:e,expected:"nan",code:"invalid_type"}),n)}),ys=I("$ZodPipe",(e,t)=>{M.init(e,t),V(e._zod,"values",()=>t.in._zod.values),V(e._zod,"optin",()=>t.in._zod.optin),V(e._zod,"optout",()=>t.out._zod.optout),V(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,o)=>{if(o.direction==="backward"){let i=t.out._zod.run(n,o);return i instanceof Promise?i.then(a=>ds(a,t.in,o)):ds(i,t.in,o)}let r=t.in._zod.run(n,o);return r instanceof Promise?r.then(i=>ds(i,t.out,o)):ds(r,t.out,o)}});function ds(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}var ii=I("$ZodCodec",(e,t)=>{M.init(e,t),V(e._zod,"values",()=>t.in._zod.values),V(e._zod,"optin",()=>t.in._zod.optin),V(e._zod,"optout",()=>t.out._zod.optout),V(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,o)=>{if((o.direction||"forward")==="forward"){let i=t.in._zod.run(n,o);return i instanceof Promise?i.then(a=>cs(a,t,o)):cs(i,t,o)}else{let i=t.out._zod.run(n,o);return i instanceof Promise?i.then(a=>cs(a,t,o)):cs(i,t,o)}}});function cs(e,t,n){if(e.issues.length)return e.aborted=!0,e;if((n.direction||"forward")==="forward"){let r=t.transform(e.value,e);return r instanceof Promise?r.then(i=>us(e,i,t.out,n)):us(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(i=>us(e,i,t.in,n)):us(e,r,t.in,n)}}function us(e,t,n,o){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},o)}var of=I("$ZodPreprocess",(e,t)=>{ys.init(e,t)}),af=I("$ZodReadonly",(e,t)=>{M.init(e,t),V(e._zod,"propValues",()=>t.innerType._zod.propValues),V(e._zod,"values",()=>t.innerType._zod.values),V(e._zod,"optin",()=>t.innerType?._zod?.optin),V(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(n,o)=>{if(o.direction==="backward")return t.innerType._zod.run(n,o);let r=t.innerType._zod.run(n,o);return r instanceof Promise?r.then(ob):ob(r)}});function ob(e){return e.value=Object.freeze(e.value),e}var sf=I("$ZodTemplateLiteral",(e,t)=>{M.init(e,t);let n=[];for(let o of t.parts)if(typeof o=="object"&&o!==null){if(!o._zod.pattern)throw new Error(`Invalid template literal part, no pattern found: ${[...o._zod.traits].shift()}`);let r=o._zod.pattern instanceof RegExp?o._zod.pattern.source:o._zod.pattern;if(!r)throw new Error(`Invalid template literal part: ${o._zod.traits}`);let i=r.startsWith("^")?1:0,a=r.endsWith("$")?r.length-1:r.length;n.push(r.slice(i,a))}else if(o===null||Yu.has(typeof o))n.push(lt(`${o}`));else throw new Error(`Invalid template literal part: ${o}`);e._zod.pattern=new RegExp(`^${n.join("")}$`),e._zod.parse=(o,r)=>typeof o.value!="string"?(o.issues.push({input:o.value,inst:e,expected:"string",code:"invalid_type"}),o):(e._zod.pattern.lastIndex=0,e._zod.pattern.test(o.value)||o.issues.push({input:o.value,inst:e,code:"invalid_format",format:t.format??"template_literal",pattern:e._zod.pattern.source}),o)}),df=I("$ZodFunction",(e,t)=>(M.init(e,t),e._def=t,e._zod.def=t,e.implement=n=>{if(typeof n!="function")throw new Error("implement() must be called with a function");return function(...o){let r=e._def.input?Wa(e._def.input,o):o,i=Reflect.apply(n,this,r);return e._def.output?Wa(e._def.output,i):i}},e.implementAsync=n=>{if(typeof n!="function")throw new Error("implementAsync() must be called with a function");return async function(...o){let r=e._def.input?await Ja(e._def.input,o):o,i=await Reflect.apply(n,this,r);return e._def.output?await Ja(e._def.output,i):i}},e._zod.parse=(n,o)=>typeof n.value!="function"?(n.issues.push({code:"invalid_type",expected:"function",input:n.value,inst:e}),n):(e._def.output&&e._def.output._zod.def.type==="promise"?n.value=e.implementAsync(n.value):n.value=e.implement(n.value),n),e.input=(...n)=>{let o=e.constructor;return Array.isArray(n[0])?new o({type:"function",input:new ms({type:"tuple",items:n[0],rest:n[1]}),output:e._def.output}):new o({type:"function",input:n[0],output:e._def.output})},e.output=n=>{let o=e.constructor;return new o({type:"function",input:e._def.input,output:n})},e)),cf=I("$ZodPromise",(e,t)=>{M.init(e,t),e._zod.parse=(n,o)=>Promise.resolve(n.value).then(r=>t.innerType._zod.run({value:r,issues:[]},o))}),uf=I("$ZodLazy",(e,t)=>{M.init(e,t),V(e._zod,"innerType",()=>{let n=t;return n._cachedInner||(n._cachedInner=t.getter()),n._cachedInner}),V(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),V(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),V(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),V(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(n,o)=>e._zod.innerType._zod.run(n,o)}),lf=I("$ZodCustom",(e,t)=>{se.init(e,t),M.init(e,t),e._zod.parse=(n,o)=>n,e._zod.check=n=>{let o=n.value,r=t.fn(o);if(r instanceof Promise)return r.then(i=>ib(i,n,o,e));ib(r,n,o,e)}});function ib(e,t,n,o){if(!e){let r={code:"custom",input:n,inst:o,path:[...o._zod.def.path??[]],continue:!o._zod.def.abort};o._zod.def.params&&(r.params=o._zod.def.params),t.issues.push($r(r))}}var si={};Mt(si,{ar:()=>lb,az:()=>pb,be:()=>mb,bg:()=>gb,ca:()=>yb,cs:()=>hb,da:()=>vb,de:()=>Ib,el:()=>bb,en:()=>hs,eo:()=>wb,es:()=>Rb,fa:()=>Sb,fi:()=>Eb,fr:()=>_b,frCA:()=>xb,he:()=>kb,hr:()=>Ab,hu:()=>Tb,hy:()=>Cb,id:()=>Ob,is:()=>Pb,it:()=>Nb,ja:()=>Db,ka:()=>jb,kh:()=>Ub,km:()=>vs,ko:()=>Lb,lt:()=>zb,mk:()=>Bb,ms:()=>qb,nl:()=>Fb,no:()=>Vb,ota:()=>Hb,pl:()=>Kb,ps:()=>Zb,pt:()=>Wb,ro:()=>Jb,ru:()=>Xb,sl:()=>Yb,sv:()=>Qb,ta:()=>ew,th:()=>tw,tr:()=>nw,ua:()=>rw,uk:()=>Is,ur:()=>ow,uz:()=>iw,vi:()=>aw,yo:()=>cw,zhCN:()=>sw,zhTW:()=>dw});var FT=()=>{let e={string:{unit:"\u062D\u0631\u0641",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},file:{unit:"\u0628\u0627\u064A\u062A",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},array:{unit:"\u0639\u0646\u0635\u0631",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},set:{unit:"\u0639\u0646\u0635\u0631",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"}};function t(r){return e[r]??null}let n={regex:"\u0645\u062F\u062E\u0644",email:"\u0628\u0631\u064A\u062F \u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",url:"\u0631\u0627\u0628\u0637",emoji:"\u0625\u064A\u0645\u0648\u062C\u064A",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u062A\u0627\u0631\u064A\u062E \u0648\u0648\u0642\u062A \u0628\u0645\u0639\u064A\u0627\u0631 ISO",date:"\u062A\u0627\u0631\u064A\u062E \u0628\u0645\u0639\u064A\u0627\u0631 ISO",time:"\u0648\u0642\u062A \u0628\u0645\u0639\u064A\u0627\u0631 ISO",duration:"\u0645\u062F\u0629 \u0628\u0645\u0639\u064A\u0627\u0631 ISO",ipv4:"\u0639\u0646\u0648\u0627\u0646 IPv4",ipv6:"\u0639\u0646\u0648\u0627\u0646 IPv6",cidrv4:"\u0645\u062F\u0649 \u0639\u0646\u0627\u0648\u064A\u0646 \u0628\u0635\u064A\u063A\u0629 IPv4",cidrv6:"\u0645\u062F\u0649 \u0639\u0646\u0627\u0648\u064A\u0646 \u0628\u0635\u064A\u063A\u0629 IPv6",base64:"\u0646\u064E\u0635 \u0628\u062A\u0631\u0645\u064A\u0632 base64-encoded",base64url:"\u0646\u064E\u0635 \u0628\u062A\u0631\u0645\u064A\u0632 base64url-encoded",json_string:"\u0646\u064E\u0635 \u0639\u0644\u0649 \u0647\u064A\u0626\u0629 JSON",e164:"\u0631\u0642\u0645 \u0647\u0627\u062A\u0641 \u0628\u0645\u0639\u064A\u0627\u0631 E.164",jwt:"JWT",template_literal:"\u0645\u062F\u062E\u0644"},o={nan:"NaN"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 instanceof ${r.expected}\u060C \u0648\u0644\u0643\u0646 \u062A\u0645 \u0625\u062F\u062E\u0627\u0644 ${s}`:`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 ${i}\u060C \u0648\u0644\u0643\u0646 \u062A\u0645 \u0625\u062F\u062E\u0627\u0644 ${s}`}case"invalid_value":return r.values.length===1?`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 ${E(r.values[0])}`:`\u0627\u062E\u062A\u064A\u0627\u0631 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062A\u0648\u0642\u0639 \u0627\u0646\u062A\u0642\u0627\u0621 \u0623\u062D\u062F \u0647\u0630\u0647 \u0627\u0644\u062E\u064A\u0627\u0631\u0627\u062A: ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?` \u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0623\u0646 \u062A\u0643\u0648\u0646 ${r.origin??"\u0627\u0644\u0642\u064A\u0645\u0629"} ${i} ${r.maximum.toString()} ${a.unit??"\u0639\u0646\u0635\u0631"}`:`\u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0623\u0646 \u062A\u0643\u0648\u0646 ${r.origin??"\u0627\u0644\u0642\u064A\u0645\u0629"} ${i} ${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`\u0623\u0635\u063A\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0644\u0640 ${r.origin} \u0623\u0646 \u064A\u0643\u0648\u0646 ${i} ${r.minimum.toString()} ${a.unit}`:`\u0623\u0635\u063A\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0644\u0640 ${r.origin} \u0623\u0646 \u064A\u0643\u0648\u0646 ${i} ${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0628\u062F\u0623 \u0628\u0640 "${r.prefix}"`:i.format==="ends_with"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0646\u062A\u0647\u064A \u0628\u0640 "${i.suffix}"`:i.format==="includes"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u062A\u0636\u0645\u0651\u064E\u0646 "${i.includes}"`:i.format==="regex"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0637\u0627\u0628\u0642 \u0627\u0644\u0646\u0645\u0637 ${i.pattern}`:`${n[i.format]??r.format} \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644`}case"not_multiple_of":return`\u0631\u0642\u0645 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0643\u0648\u0646 \u0645\u0646 \u0645\u0636\u0627\u0639\u0641\u0627\u062A ${r.divisor}`;case"unrecognized_keys":return`\u0645\u0639\u0631\u0641${r.keys.length>1?"\u0627\u062A":""} \u063A\u0631\u064A\u0628${r.keys.length>1?"\u0629":""}: ${b(r.keys,"\u060C ")}`;case"invalid_key":return`\u0645\u0639\u0631\u0641 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644 \u0641\u064A ${r.origin}`;case"invalid_union":return"\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644";case"invalid_element":return`\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644 \u0641\u064A ${r.origin}`;default:return"\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644"}}};function lb(){return{localeError:FT()}}var VT=()=>{let e={string:{unit:"simvol",verb:"olmal\u0131d\u0131r"},file:{unit:"bayt",verb:"olmal\u0131d\u0131r"},array:{unit:"element",verb:"olmal\u0131d\u0131r"},set:{unit:"element",verb:"olmal\u0131d\u0131r"}};function t(r){return e[r]??null}let n={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},o={nan:"NaN"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n instanceof ${r.expected}, daxil olan ${s}`:`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n ${i}, daxil olan ${s}`}case"invalid_value":return r.values.length===1?`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n ${E(r.values[0])}`:`Yanl\u0131\u015F se\xE7im: a\u015Fa\u011F\u0131dak\u0131lardan biri olmal\u0131d\u0131r: ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`\xC7ox b\xF6y\xFCk: g\xF6zl\u0259nil\u0259n ${r.origin??"d\u0259y\u0259r"} ${i}${r.maximum.toString()} ${a.unit??"element"}`:`\xC7ox b\xF6y\xFCk: g\xF6zl\u0259nil\u0259n ${r.origin??"d\u0259y\u0259r"} ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`\xC7ox ki\xE7ik: g\xF6zl\u0259nil\u0259n ${r.origin} ${i}${r.minimum.toString()} ${a.unit}`:`\xC7ox ki\xE7ik: g\xF6zl\u0259nil\u0259n ${r.origin} ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Yanl\u0131\u015F m\u0259tn: "${i.prefix}" il\u0259 ba\u015Flamal\u0131d\u0131r`:i.format==="ends_with"?`Yanl\u0131\u015F m\u0259tn: "${i.suffix}" il\u0259 bitm\u0259lidir`:i.format==="includes"?`Yanl\u0131\u015F m\u0259tn: "${i.includes}" daxil olmal\u0131d\u0131r`:i.format==="regex"?`Yanl\u0131\u015F m\u0259tn: ${i.pattern} \u015Fablonuna uy\u011Fun olmal\u0131d\u0131r`:`Yanl\u0131\u015F ${n[i.format]??r.format}`}case"not_multiple_of":return`Yanl\u0131\u015F \u0259d\u0259d: ${r.divisor} il\u0259 b\xF6l\xFCn\u0259 bil\u0259n olmal\u0131d\u0131r`;case"unrecognized_keys":return`Tan\u0131nmayan a\xE7ar${r.keys.length>1?"lar":""}: ${b(r.keys,", ")}`;case"invalid_key":return`${r.origin} daxilind\u0259 yanl\u0131\u015F a\xE7ar`;case"invalid_union":return"Yanl\u0131\u015F d\u0259y\u0259r";case"invalid_element":return`${r.origin} daxilind\u0259 yanl\u0131\u015F d\u0259y\u0259r`;default:return"Yanl\u0131\u015F d\u0259y\u0259r"}}};function pb(){return{localeError:VT()}}function fb(e,t,n,o){let r=Math.abs(e),i=r%10,a=r%100;return a>=11&&a<=19?o:i===1?t:i>=2&&i<=4?n:o}var HT=()=>{let e={string:{unit:{one:"\u0441\u0456\u043C\u0432\u0430\u043B",few:"\u0441\u0456\u043C\u0432\u0430\u043B\u044B",many:"\u0441\u0456\u043C\u0432\u0430\u043B\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},array:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u044B",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},set:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u044B",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},file:{unit:{one:"\u0431\u0430\u0439\u0442",few:"\u0431\u0430\u0439\u0442\u044B",many:"\u0431\u0430\u0439\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"}};function t(r){return e[r]??null}let n={regex:"\u0443\u0432\u043E\u0434",email:"email \u0430\u0434\u0440\u0430\u0441",url:"URL",emoji:"\u044D\u043C\u043E\u0434\u0437\u0456",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0430 \u0456 \u0447\u0430\u0441",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0447\u0430\u0441",duration:"ISO \u043F\u0440\u0430\u0446\u044F\u0433\u043B\u0430\u0441\u0446\u044C",ipv4:"IPv4 \u0430\u0434\u0440\u0430\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0430\u0441",cidrv4:"IPv4 \u0434\u044B\u044F\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u044B\u044F\u043F\u0430\u0437\u043E\u043D",base64:"\u0440\u0430\u0434\u043E\u043A \u0443 \u0444\u0430\u0440\u043C\u0430\u0446\u0435 base64",base64url:"\u0440\u0430\u0434\u043E\u043A \u0443 \u0444\u0430\u0440\u043C\u0430\u0446\u0435 base64url",json_string:"JSON \u0440\u0430\u0434\u043E\u043A",e164:"\u043D\u0443\u043C\u0430\u0440 E.164",jwt:"JWT",template_literal:"\u0443\u0432\u043E\u0434"},o={nan:"NaN",number:"\u043B\u0456\u043A",array:"\u043C\u0430\u0441\u0456\u045E"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u045E\u0441\u044F instanceof ${r.expected}, \u0430\u0442\u0440\u044B\u043C\u0430\u043D\u0430 ${s}`:`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u045E\u0441\u044F ${i}, \u0430\u0442\u0440\u044B\u043C\u0430\u043D\u0430 ${s}`}case"invalid_value":return r.values.length===1?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F ${E(r.values[0])}`:`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0432\u0430\u0440\u044B\u044F\u043D\u0442: \u0447\u0430\u043A\u0430\u045E\u0441\u044F \u0430\u0434\u0437\u0456\u043D \u0437 ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);if(a){let s=Number(r.maximum),d=fb(s,a.unit.one,a.unit.few,a.unit.many);return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u0432\u044F\u043B\u0456\u043A\u0456: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${r.origin??"\u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435"} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 ${a.verb} ${i}${r.maximum.toString()} ${d}`}return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u0432\u044F\u043B\u0456\u043A\u0456: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${r.origin??"\u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435"} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 \u0431\u044B\u0446\u044C ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);if(a){let s=Number(r.minimum),d=fb(s,a.unit.one,a.unit.few,a.unit.many);return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u043C\u0430\u043B\u044B: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${r.origin} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 ${a.verb} ${i}${r.minimum.toString()} ${d}`}return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u043C\u0430\u043B\u044B: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${r.origin} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 \u0431\u044B\u0446\u044C ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u043F\u0430\u0447\u044B\u043D\u0430\u0446\u0446\u0430 \u0437 "${i.prefix}"`:i.format==="ends_with"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0437\u0430\u043A\u0430\u043D\u0447\u0432\u0430\u0446\u0446\u0430 \u043D\u0430 "${i.suffix}"`:i.format==="includes"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0437\u043C\u044F\u0448\u0447\u0430\u0446\u044C "${i.includes}"`:i.format==="regex"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0430\u0434\u043F\u0430\u0432\u044F\u0434\u0430\u0446\u044C \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${i.pattern}`:`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B ${n[i.format]??r.format}`}case"not_multiple_of":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u043B\u0456\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0431\u044B\u0446\u044C \u043A\u0440\u0430\u0442\u043D\u044B\u043C ${r.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0441\u043F\u0430\u0437\u043D\u0430\u043D\u044B ${r.keys.length>1?"\u043A\u043B\u044E\u0447\u044B":"\u043A\u043B\u044E\u0447"}: ${b(r.keys,", ")}`;case"invalid_key":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u043A\u043B\u044E\u0447 \u0443 ${r.origin}`;case"invalid_union":return"\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434";case"invalid_element":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u0430\u0435 \u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435 \u045E ${r.origin}`;default:return"\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434"}}};function mb(){return{localeError:HT()}}var ZT=()=>{let e={string:{unit:"\u0441\u0438\u043C\u0432\u043E\u043B\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"},file:{unit:"\u0431\u0430\u0439\u0442\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"},array:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"},set:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"}};function t(r){return e[r]??null}let n={regex:"\u0432\u0445\u043E\u0434",email:"\u0438\u043C\u0435\u0439\u043B \u0430\u0434\u0440\u0435\u0441",url:"URL",emoji:"\u0435\u043C\u043E\u0434\u0436\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0432\u0440\u0435\u043C\u0435",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0432\u0440\u0435\u043C\u0435",duration:"ISO \u043F\u0440\u043E\u0434\u044A\u043B\u0436\u0438\u0442\u0435\u043B\u043D\u043E\u0441\u0442",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441",cidrv4:"IPv4 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",base64:"base64-\u043A\u043E\u0434\u0438\u0440\u0430\u043D \u043D\u0438\u0437",base64url:"base64url-\u043A\u043E\u0434\u0438\u0440\u0430\u043D \u043D\u0438\u0437",json_string:"JSON \u043D\u0438\u0437",e164:"E.164 \u043D\u043E\u043C\u0435\u0440",jwt:"JWT",template_literal:"\u0432\u0445\u043E\u0434"},o={nan:"NaN",number:"\u0447\u0438\u0441\u043B\u043E",array:"\u043C\u0430\u0441\u0438\u0432"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D instanceof ${r.expected}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D ${s}`:`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D ${i}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D ${s}`}case"invalid_value":return r.values.length===1?`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D ${E(r.values[0])}`:`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430 \u043E\u043F\u0446\u0438\u044F: \u043E\u0447\u0430\u043A\u0432\u0430\u043D\u043E \u0435\u0434\u043D\u043E \u043E\u0442 ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`\u0422\u0432\u044A\u0440\u0434\u0435 \u0433\u043E\u043B\u044F\u043C\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${r.origin??"\u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442"} \u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430 ${i}${r.maximum.toString()} ${a.unit??"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0430"}`:`\u0422\u0432\u044A\u0440\u0434\u0435 \u0433\u043E\u043B\u044F\u043C\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${r.origin??"\u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442"} \u0434\u0430 \u0431\u044A\u0434\u0435 ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`\u0422\u0432\u044A\u0440\u0434\u0435 \u043C\u0430\u043B\u043A\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${r.origin} \u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430 ${i}${r.minimum.toString()} ${a.unit}`:`\u0422\u0432\u044A\u0440\u0434\u0435 \u043C\u0430\u043B\u043A\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${r.origin} \u0434\u0430 \u0431\u044A\u0434\u0435 ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;if(i.format==="starts_with")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0437\u0430\u043F\u043E\u0447\u0432\u0430 \u0441 "${i.prefix}"`;if(i.format==="ends_with")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0437\u0430\u0432\u044A\u0440\u0448\u0432\u0430 \u0441 "${i.suffix}"`;if(i.format==="includes")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0432\u043A\u043B\u044E\u0447\u0432\u0430 "${i.includes}"`;if(i.format==="regex")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0441\u044A\u0432\u043F\u0430\u0434\u0430 \u0441 ${i.pattern}`;let a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D";return i.format==="emoji"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E"),i.format==="datetime"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E"),i.format==="date"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430"),i.format==="time"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E"),i.format==="duration"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430"),`${a} ${n[i.format]??r.format}`}case"not_multiple_of":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E \u0447\u0438\u0441\u043B\u043E: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0431\u044A\u0434\u0435 \u043A\u0440\u0430\u0442\u043D\u043E \u043D\u0430 ${r.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0437\u043F\u043E\u0437\u043D\u0430\u0442${r.keys.length>1?"\u0438":""} \u043A\u043B\u044E\u0447${r.keys.length>1?"\u043E\u0432\u0435":""}: ${b(r.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043A\u043B\u044E\u0447 \u0432 ${r.origin}`;case"invalid_union":return"\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434";case"invalid_element":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430 \u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442 \u0432 ${r.origin}`;default:return"\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434"}}};function gb(){return{localeError:ZT()}}var KT=()=>{let e={string:{unit:"car\xE0cters",verb:"contenir"},file:{unit:"bytes",verb:"contenir"},array:{unit:"elements",verb:"contenir"},set:{unit:"elements",verb:"contenir"}};function t(r){return e[r]??null}let n={regex:"entrada",email:"adre\xE7a electr\xF2nica",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i hora ISO",date:"data ISO",time:"hora ISO",duration:"durada ISO",ipv4:"adre\xE7a IPv4",ipv6:"adre\xE7a IPv6",cidrv4:"rang IPv4",cidrv6:"rang IPv6",base64:"cadena codificada en base64",base64url:"cadena codificada en base64url",json_string:"cadena JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"},o={nan:"NaN"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Tipus inv\xE0lid: s'esperava instanceof ${r.expected}, s'ha rebut ${s}`:`Tipus inv\xE0lid: s'esperava ${i}, s'ha rebut ${s}`}case"invalid_value":return r.values.length===1?`Valor inv\xE0lid: s'esperava ${E(r.values[0])}`:`Opci\xF3 inv\xE0lida: s'esperava una de ${b(r.values," o ")}`;case"too_big":{let i=r.inclusive?"com a m\xE0xim":"menys de",a=t(r.origin);return a?`Massa gran: s'esperava que ${r.origin??"el valor"} contingu\xE9s ${i} ${r.maximum.toString()} ${a.unit??"elements"}`:`Massa gran: s'esperava que ${r.origin??"el valor"} fos ${i} ${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?"com a m\xEDnim":"m\xE9s de",a=t(r.origin);return a?`Massa petit: s'esperava que ${r.origin} contingu\xE9s ${i} ${r.minimum.toString()} ${a.unit}`:`Massa petit: s'esperava que ${r.origin} fos ${i} ${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Format inv\xE0lid: ha de comen\xE7ar amb "${i.prefix}"`:i.format==="ends_with"?`Format inv\xE0lid: ha d'acabar amb "${i.suffix}"`:i.format==="includes"?`Format inv\xE0lid: ha d'incloure "${i.includes}"`:i.format==="regex"?`Format inv\xE0lid: ha de coincidir amb el patr\xF3 ${i.pattern}`:`Format inv\xE0lid per a ${n[i.format]??r.format}`}case"not_multiple_of":return`N\xFAmero inv\xE0lid: ha de ser m\xFAltiple de ${r.divisor}`;case"unrecognized_keys":return`Clau${r.keys.length>1?"s":""} no reconeguda${r.keys.length>1?"s":""}: ${b(r.keys,", ")}`;case"invalid_key":return`Clau inv\xE0lida a ${r.origin}`;case"invalid_union":return"Entrada inv\xE0lida";case"invalid_element":return`Element inv\xE0lid a ${r.origin}`;default:return"Entrada inv\xE0lida"}}};function yb(){return{localeError:KT()}}var WT=()=>{let e={string:{unit:"znak\u016F",verb:"m\xEDt"},file:{unit:"bajt\u016F",verb:"m\xEDt"},array:{unit:"prvk\u016F",verb:"m\xEDt"},set:{unit:"prvk\u016F",verb:"m\xEDt"}};function t(r){return e[r]??null}let n={regex:"regul\xE1rn\xED v\xFDraz",email:"e-mailov\xE1 adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"datum a \u010Das ve form\xE1tu ISO",date:"datum ve form\xE1tu ISO",time:"\u010Das ve form\xE1tu ISO",duration:"doba trv\xE1n\xED ISO",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"rozsah IPv4",cidrv6:"rozsah IPv6",base64:"\u0159et\u011Bzec zak\xF3dovan\xFD ve form\xE1tu base64",base64url:"\u0159et\u011Bzec zak\xF3dovan\xFD ve form\xE1tu base64url",json_string:"\u0159et\u011Bzec ve form\xE1tu JSON",e164:"\u010D\xEDslo E.164",jwt:"JWT",template_literal:"vstup"},o={nan:"NaN",number:"\u010D\xEDslo",string:"\u0159et\u011Bzec",function:"funkce",array:"pole"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no instanceof ${r.expected}, obdr\u017Eeno ${s}`:`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no ${i}, obdr\u017Eeno ${s}`}case"invalid_value":return r.values.length===1?`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no ${E(r.values[0])}`:`Neplatn\xE1 mo\u017Enost: o\u010Dek\xE1v\xE1na jedna z hodnot ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`Hodnota je p\u0159\xEDli\u0161 velk\xE1: ${r.origin??"hodnota"} mus\xED m\xEDt ${i}${r.maximum.toString()} ${a.unit??"prvk\u016F"}`:`Hodnota je p\u0159\xEDli\u0161 velk\xE1: ${r.origin??"hodnota"} mus\xED b\xFDt ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`Hodnota je p\u0159\xEDli\u0161 mal\xE1: ${r.origin??"hodnota"} mus\xED m\xEDt ${i}${r.minimum.toString()} ${a.unit??"prvk\u016F"}`:`Hodnota je p\u0159\xEDli\u0161 mal\xE1: ${r.origin??"hodnota"} mus\xED b\xFDt ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED za\u010D\xEDnat na "${i.prefix}"`:i.format==="ends_with"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED kon\u010Dit na "${i.suffix}"`:i.format==="includes"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED obsahovat "${i.includes}"`:i.format==="regex"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED odpov\xEDdat vzoru ${i.pattern}`:`Neplatn\xFD form\xE1t ${n[i.format]??r.format}`}case"not_multiple_of":return`Neplatn\xE9 \u010D\xEDslo: mus\xED b\xFDt n\xE1sobkem ${r.divisor}`;case"unrecognized_keys":return`Nezn\xE1m\xE9 kl\xED\u010De: ${b(r.keys,", ")}`;case"invalid_key":return`Neplatn\xFD kl\xED\u010D v ${r.origin}`;case"invalid_union":return"Neplatn\xFD vstup";case"invalid_element":return`Neplatn\xE1 hodnota v ${r.origin}`;default:return"Neplatn\xFD vstup"}}};function hb(){return{localeError:WT()}}var JT=()=>{let e={string:{unit:"tegn",verb:"havde"},file:{unit:"bytes",verb:"havde"},array:{unit:"elementer",verb:"indeholdt"},set:{unit:"elementer",verb:"indeholdt"}};function t(r){return e[r]??null}let n={regex:"input",email:"e-mailadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkesl\xE6t",date:"ISO-dato",time:"ISO-klokkesl\xE6t",duration:"ISO-varighed",ipv4:"IPv4-omr\xE5de",ipv6:"IPv6-omr\xE5de",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodet streng",base64url:"base64url-kodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},o={nan:"NaN",string:"streng",number:"tal",boolean:"boolean",array:"liste",object:"objekt",set:"s\xE6t",file:"fil"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Ugyldigt input: forventede instanceof ${r.expected}, fik ${s}`:`Ugyldigt input: forventede ${i}, fik ${s}`}case"invalid_value":return r.values.length===1?`Ugyldig v\xE6rdi: forventede ${E(r.values[0])}`:`Ugyldigt valg: forventede en af f\xF8lgende ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin),s=o[r.origin]??r.origin;return a?`For stor: forventede ${s??"value"} ${a.verb} ${i} ${r.maximum.toString()} ${a.unit??"elementer"}`:`For stor: forventede ${s??"value"} havde ${i} ${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin),s=o[r.origin]??r.origin;return a?`For lille: forventede ${s} ${a.verb} ${i} ${r.minimum.toString()} ${a.unit}`:`For lille: forventede ${s} havde ${i} ${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Ugyldig streng: skal starte med "${i.prefix}"`:i.format==="ends_with"?`Ugyldig streng: skal ende med "${i.suffix}"`:i.format==="includes"?`Ugyldig streng: skal indeholde "${i.includes}"`:i.format==="regex"?`Ugyldig streng: skal matche m\xF8nsteret ${i.pattern}`:`Ugyldig ${n[i.format]??r.format}`}case"not_multiple_of":return`Ugyldigt tal: skal v\xE6re deleligt med ${r.divisor}`;case"unrecognized_keys":return`${r.keys.length>1?"Ukendte n\xF8gler":"Ukendt n\xF8gle"}: ${b(r.keys,", ")}`;case"invalid_key":return`Ugyldig n\xF8gle i ${r.origin}`;case"invalid_union":return"Ugyldigt input: matcher ingen af de tilladte typer";case"invalid_element":return`Ugyldig v\xE6rdi i ${r.origin}`;default:return"Ugyldigt input"}}};function vb(){return{localeError:JT()}}var GT=()=>{let e={string:{unit:"Zeichen",verb:"zu haben"},file:{unit:"Bytes",verb:"zu haben"},array:{unit:"Elemente",verb:"zu haben"},set:{unit:"Elemente",verb:"zu haben"}};function t(r){return e[r]??null}let n={regex:"Eingabe",email:"E-Mail-Adresse",url:"URL",emoji:"Emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-Datum und -Uhrzeit",date:"ISO-Datum",time:"ISO-Uhrzeit",duration:"ISO-Dauer",ipv4:"IPv4-Adresse",ipv6:"IPv6-Adresse",cidrv4:"IPv4-Bereich",cidrv6:"IPv6-Bereich",base64:"Base64-codierter String",base64url:"Base64-URL-codierter String",json_string:"JSON-String",e164:"E.164-Nummer",jwt:"JWT",template_literal:"Eingabe"},o={nan:"NaN",number:"Zahl",array:"Array"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Ung\xFCltige Eingabe: erwartet instanceof ${r.expected}, erhalten ${s}`:`Ung\xFCltige Eingabe: erwartet ${i}, erhalten ${s}`}case"invalid_value":return r.values.length===1?`Ung\xFCltige Eingabe: erwartet ${E(r.values[0])}`:`Ung\xFCltige Option: erwartet eine von ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`Zu gro\xDF: erwartet, dass ${r.origin??"Wert"} ${i}${r.maximum.toString()} ${a.unit??"Elemente"} hat`:`Zu gro\xDF: erwartet, dass ${r.origin??"Wert"} ${i}${r.maximum.toString()} ist`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`Zu klein: erwartet, dass ${r.origin} ${i}${r.minimum.toString()} ${a.unit} hat`:`Zu klein: erwartet, dass ${r.origin} ${i}${r.minimum.toString()} ist`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Ung\xFCltiger String: muss mit "${i.prefix}" beginnen`:i.format==="ends_with"?`Ung\xFCltiger String: muss mit "${i.suffix}" enden`:i.format==="includes"?`Ung\xFCltiger String: muss "${i.includes}" enthalten`:i.format==="regex"?`Ung\xFCltiger String: muss dem Muster ${i.pattern} entsprechen`:`Ung\xFCltig: ${n[i.format]??r.format}`}case"not_multiple_of":return`Ung\xFCltige Zahl: muss ein Vielfaches von ${r.divisor} sein`;case"unrecognized_keys":return`${r.keys.length>1?"Unbekannte Schl\xFCssel":"Unbekannter Schl\xFCssel"}: ${b(r.keys,", ")}`;case"invalid_key":return`Ung\xFCltiger Schl\xFCssel in ${r.origin}`;case"invalid_union":return"Ung\xFCltige Eingabe";case"invalid_element":return`Ung\xFCltiger Wert in ${r.origin}`;default:return"Ung\xFCltige Eingabe"}}};function Ib(){return{localeError:GT()}}var XT=()=>{let e={string:{unit:"\u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B5\u03C2",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"},file:{unit:"bytes",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"},array:{unit:"\u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"},set:{unit:"\u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"},map:{unit:"\u03BA\u03B1\u03C4\u03B1\u03C7\u03C9\u03C1\u03AE\u03C3\u03B5\u03B9\u03C2",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"}};function t(r){return e[r]??null}let n={regex:"\u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2",email:"\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03BA\u03B1\u03B9 \u03CE\u03C1\u03B1",date:"ISO \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",time:"ISO \u03CE\u03C1\u03B1",duration:"ISO \u03B4\u03B9\u03AC\u03C1\u03BA\u03B5\u03B9\u03B1",ipv4:"\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 IPv4",ipv6:"\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 IPv6",mac:"\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 MAC",cidrv4:"\u03B5\u03CD\u03C1\u03BF\u03C2 IPv4",cidrv6:"\u03B5\u03CD\u03C1\u03BF\u03C2 IPv6",base64:"\u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC \u03BA\u03C9\u03B4\u03B9\u03BA\u03BF\u03C0\u03BF\u03B9\u03B7\u03BC\u03AD\u03BD\u03B7 \u03C3\u03B5 base64",base64url:"\u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC \u03BA\u03C9\u03B4\u03B9\u03BA\u03BF\u03C0\u03BF\u03B9\u03B7\u03BC\u03AD\u03BD\u03B7 \u03C3\u03B5 base64url",json_string:"\u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC JSON",e164:"\u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 E.164",jwt:"JWT",template_literal:"\u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2"},o={nan:"NaN"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return typeof r.expected=="string"&&/^[A-Z]/.test(r.expected)?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD instanceof ${r.expected}, \u03BB\u03AE\u03C6\u03B8\u03B7\u03BA\u03B5 ${s}`:`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${i}, \u03BB\u03AE\u03C6\u03B8\u03B7\u03BA\u03B5 ${s}`}case"invalid_value":return r.values.length===1?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${E(r.values[0])}`:`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD \u03AD\u03BD\u03B1 \u03B1\u03C0\u03CC ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B5\u03B3\u03AC\u03BB\u03BF: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${r.origin??"\u03C4\u03B9\u03BC\u03AE"} \u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9 ${i}${r.maximum.toString()} ${a.unit??"\u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1"}`:`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B5\u03B3\u03AC\u03BB\u03BF: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${r.origin??"\u03C4\u03B9\u03BC\u03AE"} \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B9\u03BA\u03C1\u03CC: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${r.origin} \u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9 ${i}${r.minimum.toString()} ${a.unit}`:`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B9\u03BA\u03C1\u03CC: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${r.origin} \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03BE\u03B5\u03BA\u03B9\u03BD\u03AC \u03BC\u03B5 "${i.prefix}"`:i.format==="ends_with"?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C4\u03B5\u03BB\u03B5\u03B9\u03CE\u03BD\u03B5\u03B9 \u03BC\u03B5 "${i.suffix}"`:i.format==="includes"?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 "${i.includes}"`:i.format==="regex"?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C4\u03B1\u03B9\u03C1\u03B9\u03AC\u03B6\u03B5\u03B9 \u03BC\u03B5 \u03C4\u03BF \u03BC\u03BF\u03C4\u03AF\u03B2\u03BF ${i.pattern}`:`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF: ${n[i.format]??r.format}`}case"not_multiple_of":return`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF\u03C2 \u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03C0\u03BF\u03BB\u03BB\u03B1\u03C0\u03BB\u03AC\u03C3\u03B9\u03BF \u03C4\u03BF\u03C5 ${r.divisor}`;case"unrecognized_keys":return`\u0386\u03B3\u03BD\u03C9\u03C3\u03C4${r.keys.length>1?"\u03B1":"\u03BF"} \u03BA\u03BB\u03B5\u03B9\u03B4${r.keys.length>1?"\u03B9\u03AC":"\u03AF"}: ${b(r.keys,", ")}`;case"invalid_key":return`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF \u03BA\u03BB\u03B5\u03B9\u03B4\u03AF \u03C3\u03C4\u03BF ${r.origin}`;case"invalid_union":return"\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2";case"invalid_element":return`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C4\u03B9\u03BC\u03AE \u03C3\u03C4\u03BF ${r.origin}`;default:return"\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2"}}};function bb(){return{localeError:XT()}}var YT=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function t(r){return e[r]??null}let n={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},o={nan:"NaN"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return`Invalid input: expected ${i}, received ${s}`}case"invalid_value":return r.values.length===1?`Invalid input: expected ${E(r.values[0])}`:`Invalid option: expected one of ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`Too big: expected ${r.origin??"value"} to have ${i}${r.maximum.toString()} ${a.unit??"elements"}`:`Too big: expected ${r.origin??"value"} to be ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`Too small: expected ${r.origin} to have ${i}${r.minimum.toString()} ${a.unit}`:`Too small: expected ${r.origin} to be ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Invalid string: must start with "${i.prefix}"`:i.format==="ends_with"?`Invalid string: must end with "${i.suffix}"`:i.format==="includes"?`Invalid string: must include "${i.includes}"`:i.format==="regex"?`Invalid string: must match pattern ${i.pattern}`:`Invalid ${n[i.format]??r.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${r.divisor}`;case"unrecognized_keys":return`Unrecognized key${r.keys.length>1?"s":""}: ${b(r.keys,", ")}`;case"invalid_key":return`Invalid key in ${r.origin}`;case"invalid_union":return r.options&&Array.isArray(r.options)&&r.options.length>0?`Invalid discriminator value. Expected ${r.options.map(a=>`'${a}'`).join(" | ")}`:"Invalid input";case"invalid_element":return`Invalid value in ${r.origin}`;default:return"Invalid input"}}};function hs(){return{localeError:YT()}}var QT=()=>{let e={string:{unit:"karaktrojn",verb:"havi"},file:{unit:"bajtojn",verb:"havi"},array:{unit:"elementojn",verb:"havi"},set:{unit:"elementojn",verb:"havi"}};function t(r){return e[r]??null}let n={regex:"enigo",email:"retadreso",url:"URL",emoji:"emo\u011Dio",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datotempo",date:"ISO-dato",time:"ISO-tempo",duration:"ISO-da\u016Dro",ipv4:"IPv4-adreso",ipv6:"IPv6-adreso",cidrv4:"IPv4-rango",cidrv6:"IPv6-rango",base64:"64-ume kodita karaktraro",base64url:"URL-64-ume kodita karaktraro",json_string:"JSON-karaktraro",e164:"E.164-nombro",jwt:"JWT",template_literal:"enigo"},o={nan:"NaN",number:"nombro",array:"tabelo",null:"senvalora"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Nevalida enigo: atendi\u011Dis instanceof ${r.expected}, ricevi\u011Dis ${s}`:`Nevalida enigo: atendi\u011Dis ${i}, ricevi\u011Dis ${s}`}case"invalid_value":return r.values.length===1?`Nevalida enigo: atendi\u011Dis ${E(r.values[0])}`:`Nevalida opcio: atendi\u011Dis unu el ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`Tro granda: atendi\u011Dis ke ${r.origin??"valoro"} havu ${i}${r.maximum.toString()} ${a.unit??"elementojn"}`:`Tro granda: atendi\u011Dis ke ${r.origin??"valoro"} havu ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`Tro malgranda: atendi\u011Dis ke ${r.origin} havu ${i}${r.minimum.toString()} ${a.unit}`:`Tro malgranda: atendi\u011Dis ke ${r.origin} estu ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Nevalida karaktraro: devas komenci\u011Di per "${i.prefix}"`:i.format==="ends_with"?`Nevalida karaktraro: devas fini\u011Di per "${i.suffix}"`:i.format==="includes"?`Nevalida karaktraro: devas inkluzivi "${i.includes}"`:i.format==="regex"?`Nevalida karaktraro: devas kongrui kun la modelo ${i.pattern}`:`Nevalida ${n[i.format]??r.format}`}case"not_multiple_of":return`Nevalida nombro: devas esti oblo de ${r.divisor}`;case"unrecognized_keys":return`Nekonata${r.keys.length>1?"j":""} \u015Dlosilo${r.keys.length>1?"j":""}: ${b(r.keys,", ")}`;case"invalid_key":return`Nevalida \u015Dlosilo en ${r.origin}`;case"invalid_union":return"Nevalida enigo";case"invalid_element":return`Nevalida valoro en ${r.origin}`;default:return"Nevalida enigo"}}};function wb(){return{localeError:QT()}}var e$=()=>{let e={string:{unit:"caracteres",verb:"tener"},file:{unit:"bytes",verb:"tener"},array:{unit:"elementos",verb:"tener"},set:{unit:"elementos",verb:"tener"}};function t(r){return e[r]??null}let n={regex:"entrada",email:"direcci\xF3n de correo electr\xF3nico",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"fecha y hora ISO",date:"fecha ISO",time:"hora ISO",duration:"duraci\xF3n ISO",ipv4:"direcci\xF3n IPv4",ipv6:"direcci\xF3n IPv6",cidrv4:"rango IPv4",cidrv6:"rango IPv6",base64:"cadena codificada en base64",base64url:"URL codificada en base64",json_string:"cadena JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"},o={nan:"NaN",string:"texto",number:"n\xFAmero",boolean:"booleano",array:"arreglo",object:"objeto",set:"conjunto",file:"archivo",date:"fecha",bigint:"n\xFAmero grande",symbol:"s\xEDmbolo",undefined:"indefinido",null:"nulo",function:"funci\xF3n",map:"mapa",record:"registro",tuple:"tupla",enum:"enumeraci\xF3n",union:"uni\xF3n",literal:"literal",promise:"promesa",void:"vac\xEDo",never:"nunca",unknown:"desconocido",any:"cualquiera"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Entrada inv\xE1lida: se esperaba instanceof ${r.expected}, recibido ${s}`:`Entrada inv\xE1lida: se esperaba ${i}, recibido ${s}`}case"invalid_value":return r.values.length===1?`Entrada inv\xE1lida: se esperaba ${E(r.values[0])}`:`Opci\xF3n inv\xE1lida: se esperaba una de ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin),s=o[r.origin]??r.origin;return a?`Demasiado grande: se esperaba que ${s??"valor"} tuviera ${i}${r.maximum.toString()} ${a.unit??"elementos"}`:`Demasiado grande: se esperaba que ${s??"valor"} fuera ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin),s=o[r.origin]??r.origin;return a?`Demasiado peque\xF1o: se esperaba que ${s} tuviera ${i}${r.minimum.toString()} ${a.unit}`:`Demasiado peque\xF1o: se esperaba que ${s} fuera ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Cadena inv\xE1lida: debe comenzar con "${i.prefix}"`:i.format==="ends_with"?`Cadena inv\xE1lida: debe terminar en "${i.suffix}"`:i.format==="includes"?`Cadena inv\xE1lida: debe incluir "${i.includes}"`:i.format==="regex"?`Cadena inv\xE1lida: debe coincidir con el patr\xF3n ${i.pattern}`:`Inv\xE1lido ${n[i.format]??r.format}`}case"not_multiple_of":return`N\xFAmero inv\xE1lido: debe ser m\xFAltiplo de ${r.divisor}`;case"unrecognized_keys":return`Llave${r.keys.length>1?"s":""} desconocida${r.keys.length>1?"s":""}: ${b(r.keys,", ")}`;case"invalid_key":return`Llave inv\xE1lida en ${o[r.origin]??r.origin}`;case"invalid_union":return"Entrada inv\xE1lida";case"invalid_element":return`Valor inv\xE1lido en ${o[r.origin]??r.origin}`;default:return"Entrada inv\xE1lida"}}};function Rb(){return{localeError:e$()}}var t$=()=>{let e={string:{unit:"\u06A9\u0627\u0631\u0627\u06A9\u062A\u0631",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},file:{unit:"\u0628\u0627\u06CC\u062A",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},array:{unit:"\u0622\u06CC\u062A\u0645",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},set:{unit:"\u0622\u06CC\u062A\u0645",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"}};function t(r){return e[r]??null}let n={regex:"\u0648\u0631\u0648\u062F\u06CC",email:"\u0622\u062F\u0631\u0633 \u0627\u06CC\u0645\u06CC\u0644",url:"URL",emoji:"\u0627\u06CC\u0645\u0648\u062C\u06CC",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u062A\u0627\u0631\u06CC\u062E \u0648 \u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",date:"\u062A\u0627\u0631\u06CC\u062E \u0627\u06CC\u0632\u0648",time:"\u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",duration:"\u0645\u062F\u062A \u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",ipv4:"IPv4 \u0622\u062F\u0631\u0633",ipv6:"IPv6 \u0622\u062F\u0631\u0633",cidrv4:"IPv4 \u062F\u0627\u0645\u0646\u0647",cidrv6:"IPv6 \u062F\u0627\u0645\u0646\u0647",base64:"base64-encoded \u0631\u0634\u062A\u0647",base64url:"base64url-encoded \u0631\u0634\u062A\u0647",json_string:"JSON \u0631\u0634\u062A\u0647",e164:"E.164 \u0639\u062F\u062F",jwt:"JWT",template_literal:"\u0648\u0631\u0648\u062F\u06CC"},o={nan:"NaN",number:"\u0639\u062F\u062F",array:"\u0622\u0631\u0627\u06CC\u0647"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A instanceof ${r.expected} \u0645\u06CC\u200C\u0628\u0648\u062F\u060C ${s} \u062F\u0631\u06CC\u0627\u0641\u062A \u0634\u062F`:`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A ${i} \u0645\u06CC\u200C\u0628\u0648\u062F\u060C ${s} \u062F\u0631\u06CC\u0627\u0641\u062A \u0634\u062F`}case"invalid_value":return r.values.length===1?`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A ${E(r.values[0])} \u0645\u06CC\u200C\u0628\u0648\u062F`:`\u06AF\u0632\u06CC\u0646\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A \u06CC\u06A9\u06CC \u0627\u0632 ${b(r.values,"|")} \u0645\u06CC\u200C\u0628\u0648\u062F`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`\u062E\u06CC\u0644\u06CC \u0628\u0632\u0631\u06AF: ${r.origin??"\u0645\u0642\u062F\u0627\u0631"} \u0628\u0627\u06CC\u062F ${i}${r.maximum.toString()} ${a.unit??"\u0639\u0646\u0635\u0631"} \u0628\u0627\u0634\u062F`:`\u062E\u06CC\u0644\u06CC \u0628\u0632\u0631\u06AF: ${r.origin??"\u0645\u0642\u062F\u0627\u0631"} \u0628\u0627\u06CC\u062F ${i}${r.maximum.toString()} \u0628\u0627\u0634\u062F`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`\u062E\u06CC\u0644\u06CC \u06A9\u0648\u0686\u06A9: ${r.origin} \u0628\u0627\u06CC\u062F ${i}${r.minimum.toString()} ${a.unit} \u0628\u0627\u0634\u062F`:`\u062E\u06CC\u0644\u06CC \u06A9\u0648\u0686\u06A9: ${r.origin} \u0628\u0627\u06CC\u062F ${i}${r.minimum.toString()} \u0628\u0627\u0634\u062F`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 "${i.prefix}" \u0634\u0631\u0648\u0639 \u0634\u0648\u062F`:i.format==="ends_with"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 "${i.suffix}" \u062A\u0645\u0627\u0645 \u0634\u0648\u062F`:i.format==="includes"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0634\u0627\u0645\u0644 "${i.includes}" \u0628\u0627\u0634\u062F`:i.format==="regex"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 \u0627\u0644\u06AF\u0648\u06CC ${i.pattern} \u0645\u0637\u0627\u0628\u0642\u062A \u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F`:`${n[i.format]??r.format} \u0646\u0627\u0645\u0639\u062A\u0628\u0631`}case"not_multiple_of":return`\u0639\u062F\u062F \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0645\u0636\u0631\u0628 ${r.divisor} \u0628\u0627\u0634\u062F`;case"unrecognized_keys":return`\u06A9\u0644\u06CC\u062F${r.keys.length>1?"\u0647\u0627\u06CC":""} \u0646\u0627\u0634\u0646\u0627\u0633: ${b(r.keys,", ")}`;case"invalid_key":return`\u06A9\u0644\u06CC\u062F \u0646\u0627\u0634\u0646\u0627\u0633 \u062F\u0631 ${r.origin}`;case"invalid_union":return"\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631";case"invalid_element":return`\u0645\u0642\u062F\u0627\u0631 \u0646\u0627\u0645\u0639\u062A\u0628\u0631 \u062F\u0631 ${r.origin}`;default:return"\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631"}}};function Sb(){return{localeError:t$()}}var n$=()=>{let e={string:{unit:"merkki\xE4",subject:"merkkijonon"},file:{unit:"tavua",subject:"tiedoston"},array:{unit:"alkiota",subject:"listan"},set:{unit:"alkiota",subject:"joukon"},number:{unit:"",subject:"luvun"},bigint:{unit:"",subject:"suuren kokonaisluvun"},int:{unit:"",subject:"kokonaisluvun"},date:{unit:"",subject:"p\xE4iv\xE4m\xE4\xE4r\xE4n"}};function t(r){return e[r]??null}let n={regex:"s\xE4\xE4nn\xF6llinen lauseke",email:"s\xE4hk\xF6postiosoite",url:"URL-osoite",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-aikaleima",date:"ISO-p\xE4iv\xE4m\xE4\xE4r\xE4",time:"ISO-aika",duration:"ISO-kesto",ipv4:"IPv4-osoite",ipv6:"IPv6-osoite",cidrv4:"IPv4-alue",cidrv6:"IPv6-alue",base64:"base64-koodattu merkkijono",base64url:"base64url-koodattu merkkijono",json_string:"JSON-merkkijono",e164:"E.164-luku",jwt:"JWT",template_literal:"templaattimerkkijono"},o={nan:"NaN"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Virheellinen tyyppi: odotettiin instanceof ${r.expected}, oli ${s}`:`Virheellinen tyyppi: odotettiin ${i}, oli ${s}`}case"invalid_value":return r.values.length===1?`Virheellinen sy\xF6te: t\xE4ytyy olla ${E(r.values[0])}`:`Virheellinen valinta: t\xE4ytyy olla yksi seuraavista: ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`Liian suuri: ${a.subject} t\xE4ytyy olla ${i}${r.maximum.toString()} ${a.unit}`.trim():`Liian suuri: arvon t\xE4ytyy olla ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`Liian pieni: ${a.subject} t\xE4ytyy olla ${i}${r.minimum.toString()} ${a.unit}`.trim():`Liian pieni: arvon t\xE4ytyy olla ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Virheellinen sy\xF6te: t\xE4ytyy alkaa "${i.prefix}"`:i.format==="ends_with"?`Virheellinen sy\xF6te: t\xE4ytyy loppua "${i.suffix}"`:i.format==="includes"?`Virheellinen sy\xF6te: t\xE4ytyy sis\xE4lt\xE4\xE4 "${i.includes}"`:i.format==="regex"?`Virheellinen sy\xF6te: t\xE4ytyy vastata s\xE4\xE4nn\xF6llist\xE4 lauseketta ${i.pattern}`:`Virheellinen ${n[i.format]??r.format}`}case"not_multiple_of":return`Virheellinen luku: t\xE4ytyy olla luvun ${r.divisor} monikerta`;case"unrecognized_keys":return`${r.keys.length>1?"Tuntemattomat avaimet":"Tuntematon avain"}: ${b(r.keys,", ")}`;case"invalid_key":return"Virheellinen avain tietueessa";case"invalid_union":return"Virheellinen unioni";case"invalid_element":return"Virheellinen arvo joukossa";default:return"Virheellinen sy\xF6te"}}};function Eb(){return{localeError:n$()}}var r$=()=>{let e={string:{unit:"caract\xE8res",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"\xE9l\xE9ments",verb:"avoir"},set:{unit:"\xE9l\xE9ments",verb:"avoir"}};function t(r){return e[r]??null}let n={regex:"entr\xE9e",email:"adresse e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date et heure ISO",date:"date ISO",time:"heure ISO",duration:"dur\xE9e ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"cha\xEEne encod\xE9e en base64",base64url:"cha\xEEne encod\xE9e en base64url",json_string:"cha\xEEne JSON",e164:"num\xE9ro E.164",jwt:"JWT",template_literal:"entr\xE9e"},o={string:"cha\xEEne",number:"nombre",int:"entier",boolean:"bool\xE9en",bigint:"grand entier",symbol:"symbole",undefined:"ind\xE9fini",null:"null",never:"jamais",void:"vide",date:"date",array:"tableau",object:"objet",tuple:"tuple",record:"enregistrement",map:"carte",set:"ensemble",file:"fichier",nonoptional:"non-optionnel",nan:"NaN",function:"fonction"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Entr\xE9e invalide : instanceof ${r.expected} attendu, ${s} re\xE7u`:`Entr\xE9e invalide : ${i} attendu, ${s} re\xE7u`}case"invalid_value":return r.values.length===1?`Entr\xE9e invalide : ${E(r.values[0])} attendu`:`Option invalide : une valeur parmi ${b(r.values,"|")} attendue`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`Trop grand : ${o[r.origin]??"valeur"} doit ${a.verb} ${i}${r.maximum.toString()} ${a.unit??"\xE9l\xE9ment(s)"}`:`Trop grand : ${o[r.origin]??"valeur"} doit \xEAtre ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`Trop petit : ${o[r.origin]??"valeur"} doit ${a.verb} ${i}${r.minimum.toString()} ${a.unit}`:`Trop petit : ${o[r.origin]??"valeur"} doit \xEAtre ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Cha\xEEne invalide : doit commencer par "${i.prefix}"`:i.format==="ends_with"?`Cha\xEEne invalide : doit se terminer par "${i.suffix}"`:i.format==="includes"?`Cha\xEEne invalide : doit inclure "${i.includes}"`:i.format==="regex"?`Cha\xEEne invalide : doit correspondre au mod\xE8le ${i.pattern}`:`${n[i.format]??r.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit \xEAtre un multiple de ${r.divisor}`;case"unrecognized_keys":return`Cl\xE9${r.keys.length>1?"s":""} non reconnue${r.keys.length>1?"s":""} : ${b(r.keys,", ")}`;case"invalid_key":return`Cl\xE9 invalide dans ${r.origin}`;case"invalid_union":return"Entr\xE9e invalide";case"invalid_element":return`Valeur invalide dans ${r.origin}`;default:return"Entr\xE9e invalide"}}};function _b(){return{localeError:r$()}}var o$=()=>{let e={string:{unit:"caract\xE8res",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"\xE9l\xE9ments",verb:"avoir"},set:{unit:"\xE9l\xE9ments",verb:"avoir"}};function t(r){return e[r]??null}let n={regex:"entr\xE9e",email:"adresse courriel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date-heure ISO",date:"date ISO",time:"heure ISO",duration:"dur\xE9e ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"cha\xEEne encod\xE9e en base64",base64url:"cha\xEEne encod\xE9e en base64url",json_string:"cha\xEEne JSON",e164:"num\xE9ro E.164",jwt:"JWT",template_literal:"entr\xE9e"},o={nan:"NaN"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Entr\xE9e invalide : attendu instanceof ${r.expected}, re\xE7u ${s}`:`Entr\xE9e invalide : attendu ${i}, re\xE7u ${s}`}case"invalid_value":return r.values.length===1?`Entr\xE9e invalide : attendu ${E(r.values[0])}`:`Option invalide : attendu l'une des valeurs suivantes ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"\u2264":"<",a=t(r.origin);return a?`Trop grand : attendu que ${r.origin??"la valeur"} ait ${i}${r.maximum.toString()} ${a.unit}`:`Trop grand : attendu que ${r.origin??"la valeur"} soit ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?"\u2265":">",a=t(r.origin);return a?`Trop petit : attendu que ${r.origin} ait ${i}${r.minimum.toString()} ${a.unit}`:`Trop petit : attendu que ${r.origin} soit ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Cha\xEEne invalide : doit commencer par "${i.prefix}"`:i.format==="ends_with"?`Cha\xEEne invalide : doit se terminer par "${i.suffix}"`:i.format==="includes"?`Cha\xEEne invalide : doit inclure "${i.includes}"`:i.format==="regex"?`Cha\xEEne invalide : doit correspondre au motif ${i.pattern}`:`${n[i.format]??r.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit \xEAtre un multiple de ${r.divisor}`;case"unrecognized_keys":return`Cl\xE9${r.keys.length>1?"s":""} non reconnue${r.keys.length>1?"s":""} : ${b(r.keys,", ")}`;case"invalid_key":return`Cl\xE9 invalide dans ${r.origin}`;case"invalid_union":return"Entr\xE9e invalide";case"invalid_element":return`Valeur invalide dans ${r.origin}`;default:return"Entr\xE9e invalide"}}};function xb(){return{localeError:o$()}}var i$=()=>{let e={string:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA",gender:"f"},number:{label:"\u05DE\u05E1\u05E4\u05E8",gender:"m"},boolean:{label:"\u05E2\u05E8\u05DA \u05D1\u05D5\u05DC\u05D9\u05D0\u05E0\u05D9",gender:"m"},bigint:{label:"BigInt",gender:"m"},date:{label:"\u05EA\u05D0\u05E8\u05D9\u05DA",gender:"m"},array:{label:"\u05DE\u05E2\u05E8\u05DA",gender:"m"},object:{label:"\u05D0\u05D5\u05D1\u05D9\u05D9\u05E7\u05D8",gender:"m"},null:{label:"\u05E2\u05E8\u05DA \u05E8\u05D9\u05E7 (null)",gender:"m"},undefined:{label:"\u05E2\u05E8\u05DA \u05DC\u05D0 \u05DE\u05D5\u05D2\u05D3\u05E8 (undefined)",gender:"m"},symbol:{label:"\u05E1\u05D9\u05DE\u05D1\u05D5\u05DC (Symbol)",gender:"m"},function:{label:"\u05E4\u05D5\u05E0\u05E7\u05E6\u05D9\u05D4",gender:"f"},map:{label:"\u05DE\u05E4\u05D4 (Map)",gender:"f"},set:{label:"\u05E7\u05D1\u05D5\u05E6\u05D4 (Set)",gender:"f"},file:{label:"\u05E7\u05D5\u05D1\u05E5",gender:"m"},promise:{label:"Promise",gender:"m"},NaN:{label:"NaN",gender:"m"},unknown:{label:"\u05E2\u05E8\u05DA \u05DC\u05D0 \u05D9\u05D3\u05D5\u05E2",gender:"m"},value:{label:"\u05E2\u05E8\u05DA",gender:"m"}},t={string:{unit:"\u05EA\u05D5\u05D5\u05D9\u05DD",shortLabel:"\u05E7\u05E6\u05E8",longLabel:"\u05D0\u05E8\u05D5\u05DA"},file:{unit:"\u05D1\u05D9\u05D9\u05D8\u05D9\u05DD",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"},array:{unit:"\u05E4\u05E8\u05D9\u05D8\u05D9\u05DD",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"},set:{unit:"\u05E4\u05E8\u05D9\u05D8\u05D9\u05DD",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"},number:{unit:"",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"}},n=c=>c?e[c]:void 0,o=c=>{let u=n(c);return u?u.label:c??e.unknown.label},r=c=>`\u05D4${o(c)}`,i=c=>(n(c)?.gender??"m")==="f"?"\u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05D9\u05D5\u05EA":"\u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA",a=c=>c?t[c]??null:null,s={regex:{label:"\u05E7\u05DC\u05D8",gender:"m"},email:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA \u05D0\u05D9\u05DE\u05D9\u05D9\u05DC",gender:"f"},url:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA \u05E8\u05E9\u05EA",gender:"f"},emoji:{label:"\u05D0\u05D9\u05DE\u05D5\u05D2'\u05D9",gender:"m"},uuid:{label:"UUID",gender:"m"},nanoid:{label:"nanoid",gender:"m"},guid:{label:"GUID",gender:"m"},cuid:{label:"cuid",gender:"m"},cuid2:{label:"cuid2",gender:"m"},ulid:{label:"ULID",gender:"m"},xid:{label:"XID",gender:"m"},ksuid:{label:"KSUID",gender:"m"},datetime:{label:"\u05EA\u05D0\u05E8\u05D9\u05DA \u05D5\u05D6\u05DE\u05DF ISO",gender:"m"},date:{label:"\u05EA\u05D0\u05E8\u05D9\u05DA ISO",gender:"m"},time:{label:"\u05D6\u05DE\u05DF ISO",gender:"m"},duration:{label:"\u05DE\u05E9\u05DA \u05D6\u05DE\u05DF ISO",gender:"m"},ipv4:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA IPv4",gender:"f"},ipv6:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA IPv6",gender:"f"},cidrv4:{label:"\u05D8\u05D5\u05D5\u05D7 IPv4",gender:"m"},cidrv6:{label:"\u05D8\u05D5\u05D5\u05D7 IPv6",gender:"m"},base64:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D1\u05D1\u05E1\u05D9\u05E1 64",gender:"f"},base64url:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D1\u05D1\u05E1\u05D9\u05E1 64 \u05DC\u05DB\u05EA\u05D5\u05D1\u05D5\u05EA \u05E8\u05E9\u05EA",gender:"f"},json_string:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA JSON",gender:"f"},e164:{label:"\u05DE\u05E1\u05E4\u05E8 E.164",gender:"m"},jwt:{label:"JWT",gender:"m"},ends_with:{label:"\u05E7\u05DC\u05D8",gender:"m"},includes:{label:"\u05E7\u05DC\u05D8",gender:"m"},lowercase:{label:"\u05E7\u05DC\u05D8",gender:"m"},starts_with:{label:"\u05E7\u05DC\u05D8",gender:"m"},uppercase:{label:"\u05E7\u05DC\u05D8",gender:"m"}},d={nan:"NaN"};return c=>{switch(c.code){case"invalid_type":{let u=c.expected,l=d[u??""]??o(u),f=_(c.input),g=d[f]??e[f]?.label??f;return/^[A-Z]/.test(c.expected)?`\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA instanceof ${c.expected}, \u05D4\u05EA\u05E7\u05D1\u05DC ${g}`:`\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${l}, \u05D4\u05EA\u05E7\u05D1\u05DC ${g}`}case"invalid_value":{if(c.values.length===1)return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D4\u05E2\u05E8\u05DA \u05D7\u05D9\u05D9\u05D1 \u05DC\u05D4\u05D9\u05D5\u05EA ${E(c.values[0])}`;let u=c.values.map(g=>E(g));if(c.values.length===2)return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D4\u05D0\u05E4\u05E9\u05E8\u05D5\u05D9\u05D5\u05EA \u05D4\u05DE\u05EA\u05D0\u05D9\u05DE\u05D5\u05EA \u05D4\u05DF ${u[0]} \u05D0\u05D5 ${u[1]}`;let l=u[u.length-1];return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D4\u05D0\u05E4\u05E9\u05E8\u05D5\u05D9\u05D5\u05EA \u05D4\u05DE\u05EA\u05D0\u05D9\u05DE\u05D5\u05EA \u05D4\u05DF ${u.slice(0,-1).join(", ")} \u05D0\u05D5 ${l}`}case"too_big":{let u=a(c.origin),l=r(c.origin??"value");if(c.origin==="string")return`${u?.longLabel??"\u05D0\u05E8\u05D5\u05DA"} \u05DE\u05D3\u05D9: ${l} \u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05DB\u05D9\u05DC ${c.maximum.toString()} ${u?.unit??""} ${c.inclusive?"\u05D0\u05D5 \u05E4\u05D7\u05D5\u05EA":"\u05DC\u05DB\u05DC \u05D4\u05D9\u05D5\u05EA\u05E8"}`.trim();if(c.origin==="number"){let p=c.inclusive?`\u05E7\u05D8\u05DF \u05D0\u05D5 \u05E9\u05D5\u05D5\u05D4 \u05DC-${c.maximum}`:`\u05E7\u05D8\u05DF \u05DE-${c.maximum}`;return`\u05D2\u05D3\u05D5\u05DC \u05DE\u05D3\u05D9: ${l} \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${p}`}if(c.origin==="array"||c.origin==="set"){let p=c.origin==="set"?"\u05E6\u05E8\u05D9\u05DB\u05D4":"\u05E6\u05E8\u05D9\u05DA",v=c.inclusive?`${c.maximum} ${u?.unit??""} \u05D0\u05D5 \u05E4\u05D7\u05D5\u05EA`:`\u05E4\u05D7\u05D5\u05EA \u05DE-${c.maximum} ${u?.unit??""}`;return`\u05D2\u05D3\u05D5\u05DC \u05DE\u05D3\u05D9: ${l} ${p} \u05DC\u05D4\u05DB\u05D9\u05DC ${v}`.trim()}let f=c.inclusive?"<=":"<",g=i(c.origin??"value");return u?.unit?`${u.longLabel} \u05DE\u05D3\u05D9: ${l} ${g} ${f}${c.maximum.toString()} ${u.unit}`:`${u?.longLabel??"\u05D2\u05D3\u05D5\u05DC"} \u05DE\u05D3\u05D9: ${l} ${g} ${f}${c.maximum.toString()}`}case"too_small":{let u=a(c.origin),l=r(c.origin??"value");if(c.origin==="string")return`${u?.shortLabel??"\u05E7\u05E6\u05E8"} \u05DE\u05D3\u05D9: ${l} \u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05DB\u05D9\u05DC ${c.minimum.toString()} ${u?.unit??""} ${c.inclusive?"\u05D0\u05D5 \u05D9\u05D5\u05EA\u05E8":"\u05DC\u05E4\u05D7\u05D5\u05EA"}`.trim();if(c.origin==="number"){let p=c.inclusive?`\u05D2\u05D3\u05D5\u05DC \u05D0\u05D5 \u05E9\u05D5\u05D5\u05D4 \u05DC-${c.minimum}`:`\u05D2\u05D3\u05D5\u05DC \u05DE-${c.minimum}`;return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${l} \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${p}`}if(c.origin==="array"||c.origin==="set"){let p=c.origin==="set"?"\u05E6\u05E8\u05D9\u05DB\u05D4":"\u05E6\u05E8\u05D9\u05DA";if(c.minimum===1&&c.inclusive){let w=(c.origin==="set","\u05DC\u05E4\u05D7\u05D5\u05EA \u05E4\u05E8\u05D9\u05D8 \u05D0\u05D7\u05D3");return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${l} ${p} \u05DC\u05D4\u05DB\u05D9\u05DC ${w}`}let v=c.inclusive?`${c.minimum} ${u?.unit??""} \u05D0\u05D5 \u05D9\u05D5\u05EA\u05E8`:`\u05D9\u05D5\u05EA\u05E8 \u05DE-${c.minimum} ${u?.unit??""}`;return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${l} ${p} \u05DC\u05D4\u05DB\u05D9\u05DC ${v}`.trim()}let f=c.inclusive?">=":">",g=i(c.origin??"value");return u?.unit?`${u.shortLabel} \u05DE\u05D3\u05D9: ${l} ${g} ${f}${c.minimum.toString()} ${u.unit}`:`${u?.shortLabel??"\u05E7\u05D8\u05DF"} \u05DE\u05D3\u05D9: ${l} ${g} ${f}${c.minimum.toString()}`}case"invalid_format":{let u=c;if(u.format==="starts_with")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05EA\u05D7\u05D9\u05DC \u05D1 "${u.prefix}"`;if(u.format==="ends_with")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05E1\u05EA\u05D9\u05D9\u05DD \u05D1 "${u.suffix}"`;if(u.format==="includes")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05DB\u05DC\u05D5\u05DC "${u.includes}"`;if(u.format==="regex")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05EA\u05D0\u05D9\u05DD \u05DC\u05EA\u05D1\u05E0\u05D9\u05EA ${u.pattern}`;let l=s[u.format],f=l?.label??u.format,p=(l?.gender??"m")==="f"?"\u05EA\u05E7\u05D9\u05E0\u05D4":"\u05EA\u05E7\u05D9\u05DF";return`${f} \u05DC\u05D0 ${p}`}case"not_multiple_of":return`\u05DE\u05E1\u05E4\u05E8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D7\u05D9\u05D9\u05D1 \u05DC\u05D4\u05D9\u05D5\u05EA \u05DE\u05DB\u05E4\u05DC\u05D4 \u05E9\u05DC ${c.divisor}`;case"unrecognized_keys":return`\u05DE\u05E4\u05EA\u05D7${c.keys.length>1?"\u05D5\u05EA":""} \u05DC\u05D0 \u05DE\u05D6\u05D5\u05D4${c.keys.length>1?"\u05D9\u05DD":"\u05D4"}: ${b(c.keys,", ")}`;case"invalid_key":return"\u05E9\u05D3\u05D4 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF \u05D1\u05D0\u05D5\u05D1\u05D9\u05D9\u05E7\u05D8";case"invalid_union":return"\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF";case"invalid_element":return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF \u05D1${r(c.origin??"array")}`;default:return"\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF"}}};function kb(){return{localeError:i$()}}var a$=()=>{let e={string:{unit:"znakova",verb:"imati"},file:{unit:"bajtova",verb:"imati"},array:{unit:"stavki",verb:"imati"},set:{unit:"stavki",verb:"imati"}};function t(r){return e[r]??null}let n={regex:"unos",email:"email adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum i vrijeme",date:"ISO datum",time:"ISO vrijeme",duration:"ISO trajanje",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"IPv4 raspon",cidrv6:"IPv6 raspon",base64:"base64 kodirani tekst",base64url:"base64url kodirani tekst",json_string:"JSON tekst",e164:"E.164 broj",jwt:"JWT",template_literal:"unos"},o={nan:"NaN",string:"tekst",number:"broj",boolean:"boolean",array:"niz",object:"objekt",set:"skup",file:"datoteka",date:"datum",bigint:"bigint",symbol:"simbol",undefined:"undefined",null:"null",function:"funkcija",map:"mapa"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Neispravan unos: o\u010Dekuje se instanceof ${r.expected}, a primljeno je ${s}`:`Neispravan unos: o\u010Dekuje se ${i}, a primljeno je ${s}`}case"invalid_value":return r.values.length===1?`Neispravna vrijednost: o\u010Dekivano ${E(r.values[0])}`:`Neispravna opcija: o\u010Dekivano jedno od ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin),s=o[r.origin]??r.origin;return a?`Preveliko: o\u010Dekivano da ${s??"vrijednost"} ima ${i}${r.maximum.toString()} ${a.unit??"elemenata"}`:`Preveliko: o\u010Dekivano da ${s??"vrijednost"} bude ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin),s=o[r.origin]??r.origin;return a?`Premalo: o\u010Dekivano da ${s} ima ${i}${r.minimum.toString()} ${a.unit}`:`Premalo: o\u010Dekivano da ${s} bude ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Neispravan tekst: mora zapo\u010Dinjati s "${i.prefix}"`:i.format==="ends_with"?`Neispravan tekst: mora zavr\u0161avati s "${i.suffix}"`:i.format==="includes"?`Neispravan tekst: mora sadr\u017Eavati "${i.includes}"`:i.format==="regex"?`Neispravan tekst: mora odgovarati uzorku ${i.pattern}`:`Neispravna ${n[i.format]??r.format}`}case"not_multiple_of":return`Neispravan broj: mora biti vi\u0161ekratnik od ${r.divisor}`;case"unrecognized_keys":return`Neprepoznat${r.keys.length>1?"i klju\u010Devi":" klju\u010D"}: ${b(r.keys,", ")}`;case"invalid_key":return`Neispravan klju\u010D u ${o[r.origin]??r.origin}`;case"invalid_union":return"Neispravan unos";case"invalid_element":return`Neispravna vrijednost u ${o[r.origin]??r.origin}`;default:return"Neispravan unos"}}};function Ab(){return{localeError:a$()}}var s$=()=>{let e={string:{unit:"karakter",verb:"legyen"},file:{unit:"byte",verb:"legyen"},array:{unit:"elem",verb:"legyen"},set:{unit:"elem",verb:"legyen"}};function t(r){return e[r]??null}let n={regex:"bemenet",email:"email c\xEDm",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO id\u0151b\xE9lyeg",date:"ISO d\xE1tum",time:"ISO id\u0151",duration:"ISO id\u0151intervallum",ipv4:"IPv4 c\xEDm",ipv6:"IPv6 c\xEDm",cidrv4:"IPv4 tartom\xE1ny",cidrv6:"IPv6 tartom\xE1ny",base64:"base64-k\xF3dolt string",base64url:"base64url-k\xF3dolt string",json_string:"JSON string",e164:"E.164 sz\xE1m",jwt:"JWT",template_literal:"bemenet"},o={nan:"NaN",number:"sz\xE1m",array:"t\xF6mb"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k instanceof ${r.expected}, a kapott \xE9rt\xE9k ${s}`:`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k ${i}, a kapott \xE9rt\xE9k ${s}`}case"invalid_value":return r.values.length===1?`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k ${E(r.values[0])}`:`\xC9rv\xE9nytelen opci\xF3: valamelyik \xE9rt\xE9k v\xE1rt ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`T\xFAl nagy: ${r.origin??"\xE9rt\xE9k"} m\xE9rete t\xFAl nagy ${i}${r.maximum.toString()} ${a.unit??"elem"}`:`T\xFAl nagy: a bemeneti \xE9rt\xE9k ${r.origin??"\xE9rt\xE9k"} t\xFAl nagy: ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`T\xFAl kicsi: a bemeneti \xE9rt\xE9k ${r.origin} m\xE9rete t\xFAl kicsi ${i}${r.minimum.toString()} ${a.unit}`:`T\xFAl kicsi: a bemeneti \xE9rt\xE9k ${r.origin} t\xFAl kicsi ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\xC9rv\xE9nytelen string: "${i.prefix}" \xE9rt\xE9kkel kell kezd\u0151dnie`:i.format==="ends_with"?`\xC9rv\xE9nytelen string: "${i.suffix}" \xE9rt\xE9kkel kell v\xE9gz\u0151dnie`:i.format==="includes"?`\xC9rv\xE9nytelen string: "${i.includes}" \xE9rt\xE9ket kell tartalmaznia`:i.format==="regex"?`\xC9rv\xE9nytelen string: ${i.pattern} mint\xE1nak kell megfelelnie`:`\xC9rv\xE9nytelen ${n[i.format]??r.format}`}case"not_multiple_of":return`\xC9rv\xE9nytelen sz\xE1m: ${r.divisor} t\xF6bbsz\xF6r\xF6s\xE9nek kell lennie`;case"unrecognized_keys":return`Ismeretlen kulcs${r.keys.length>1?"s":""}: ${b(r.keys,", ")}`;case"invalid_key":return`\xC9rv\xE9nytelen kulcs ${r.origin}`;case"invalid_union":return"\xC9rv\xE9nytelen bemenet";case"invalid_element":return`\xC9rv\xE9nytelen \xE9rt\xE9k: ${r.origin}`;default:return"\xC9rv\xE9nytelen bemenet"}}};function Tb(){return{localeError:s$()}}function $b(e,t,n){return Math.abs(e)===1?t:n}function jr(e){if(!e)return"";let t=["\u0561","\u0565","\u0568","\u056B","\u0578","\u0578\u0582","\u0585"],n=e[e.length-1];return e+(t.includes(n)?"\u0576":"\u0568")}var d$=()=>{let e={string:{unit:{one:"\u0576\u0577\u0561\u0576",many:"\u0576\u0577\u0561\u0576\u0576\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"},file:{unit:{one:"\u0562\u0561\u0575\u0569",many:"\u0562\u0561\u0575\u0569\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"},array:{unit:{one:"\u057F\u0561\u0580\u0580",many:"\u057F\u0561\u0580\u0580\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"},set:{unit:{one:"\u057F\u0561\u0580\u0580",many:"\u057F\u0561\u0580\u0580\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"}};function t(r){return e[r]??null}let n={regex:"\u0574\u0578\u0582\u057F\u0584",email:"\u0567\u056C. \u0570\u0561\u057D\u0581\u0565",url:"URL",emoji:"\u0567\u0574\u0578\u057B\u056B",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0561\u0574\u057D\u0561\u0569\u056B\u057E \u0587 \u056A\u0561\u0574",date:"ISO \u0561\u0574\u057D\u0561\u0569\u056B\u057E",time:"ISO \u056A\u0561\u0574",duration:"ISO \u057F\u0587\u0578\u0572\u0578\u0582\u0569\u0575\u0578\u0582\u0576",ipv4:"IPv4 \u0570\u0561\u057D\u0581\u0565",ipv6:"IPv6 \u0570\u0561\u057D\u0581\u0565",cidrv4:"IPv4 \u0574\u056B\u057B\u0561\u056F\u0561\u0575\u0584",cidrv6:"IPv6 \u0574\u056B\u057B\u0561\u056F\u0561\u0575\u0584",base64:"base64 \u0571\u0587\u0561\u0579\u0561\u0583\u0578\u057E \u057F\u0578\u0572",base64url:"base64url \u0571\u0587\u0561\u0579\u0561\u0583\u0578\u057E \u057F\u0578\u0572",json_string:"JSON \u057F\u0578\u0572",e164:"E.164 \u0570\u0561\u0574\u0561\u0580",jwt:"JWT",template_literal:"\u0574\u0578\u0582\u057F\u0584"},o={nan:"NaN",number:"\u0569\u056B\u057E",array:"\u0566\u0561\u0576\u0563\u057E\u0561\u056E"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 instanceof ${r.expected}, \u057D\u057F\u0561\u0581\u057E\u0565\u056C \u0567 ${s}`:`\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 ${i}, \u057D\u057F\u0561\u0581\u057E\u0565\u056C \u0567 ${s}`}case"invalid_value":return r.values.length===1?`\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 ${E(r.values[1])}`:`\u054D\u056D\u0561\u056C \u057F\u0561\u0580\u0562\u0565\u0580\u0561\u056F\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 \u0570\u0565\u057F\u0587\u0575\u0561\u056C\u0576\u0565\u0580\u056B\u0581 \u0574\u0565\u056F\u0568\u055D ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);if(a){let s=Number(r.maximum),d=$b(s,a.unit.one,a.unit.many);return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0574\u0565\u056E \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${jr(r.origin??"\u0561\u0580\u056A\u0565\u0584")} \u056F\u0578\u0582\u0576\u0565\u0576\u0561 ${i}${r.maximum.toString()} ${d}`}return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0574\u0565\u056E \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${jr(r.origin??"\u0561\u0580\u056A\u0565\u0584")} \u056C\u056B\u0576\u056B ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);if(a){let s=Number(r.minimum),d=$b(s,a.unit.one,a.unit.many);return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0583\u0578\u0584\u0580 \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${jr(r.origin)} \u056F\u0578\u0582\u0576\u0565\u0576\u0561 ${i}${r.minimum.toString()} ${d}`}return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0583\u0578\u0584\u0580 \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${jr(r.origin)} \u056C\u056B\u0576\u056B ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u057D\u056F\u057D\u057E\u056B "${i.prefix}"-\u0578\u057E`:i.format==="ends_with"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u0561\u057E\u0561\u0580\u057F\u057E\u056B "${i.suffix}"-\u0578\u057E`:i.format==="includes"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u057A\u0561\u0580\u0578\u0582\u0576\u0561\u056F\u056B "${i.includes}"`:i.format==="regex"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u0570\u0561\u0574\u0561\u057A\u0561\u057F\u0561\u057D\u056D\u0561\u0576\u056B ${i.pattern} \u0571\u0587\u0561\u0579\u0561\u0583\u056B\u0576`:`\u054D\u056D\u0561\u056C ${n[i.format]??r.format}`}case"not_multiple_of":return`\u054D\u056D\u0561\u056C \u0569\u056B\u057E\u2024 \u057A\u0565\u057F\u0584 \u0567 \u0562\u0561\u0566\u0574\u0561\u057A\u0561\u057F\u056B\u056F \u056C\u056B\u0576\u056B ${r.divisor}-\u056B`;case"unrecognized_keys":return`\u0549\u0573\u0561\u0576\u0561\u0579\u057E\u0561\u056E \u0562\u0561\u0576\u0561\u056C\u056B${r.keys.length>1?"\u0576\u0565\u0580":""}. ${b(r.keys,", ")}`;case"invalid_key":return`\u054D\u056D\u0561\u056C \u0562\u0561\u0576\u0561\u056C\u056B ${jr(r.origin)}-\u0578\u0582\u0574`;case"invalid_union":return"\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574";case"invalid_element":return`\u054D\u056D\u0561\u056C \u0561\u0580\u056A\u0565\u0584 ${jr(r.origin)}-\u0578\u0582\u0574`;default:return"\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574"}}};function Cb(){return{localeError:d$()}}var c$=()=>{let e={string:{unit:"karakter",verb:"memiliki"},file:{unit:"byte",verb:"memiliki"},array:{unit:"item",verb:"memiliki"},set:{unit:"item",verb:"memiliki"}};function t(r){return e[r]??null}let n={regex:"input",email:"alamat email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tanggal dan waktu format ISO",date:"tanggal format ISO",time:"jam format ISO",duration:"durasi format ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"rentang alamat IPv4",cidrv6:"rentang alamat IPv6",base64:"string dengan enkode base64",base64url:"string dengan enkode base64url",json_string:"string JSON",e164:"angka E.164",jwt:"JWT",template_literal:"input"},o={nan:"NaN"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Input tidak valid: diharapkan instanceof ${r.expected}, diterima ${s}`:`Input tidak valid: diharapkan ${i}, diterima ${s}`}case"invalid_value":return r.values.length===1?`Input tidak valid: diharapkan ${E(r.values[0])}`:`Pilihan tidak valid: diharapkan salah satu dari ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`Terlalu besar: diharapkan ${r.origin??"value"} memiliki ${i}${r.maximum.toString()} ${a.unit??"elemen"}`:`Terlalu besar: diharapkan ${r.origin??"value"} menjadi ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`Terlalu kecil: diharapkan ${r.origin} memiliki ${i}${r.minimum.toString()} ${a.unit}`:`Terlalu kecil: diharapkan ${r.origin} menjadi ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`String tidak valid: harus dimulai dengan "${i.prefix}"`:i.format==="ends_with"?`String tidak valid: harus berakhir dengan "${i.suffix}"`:i.format==="includes"?`String tidak valid: harus menyertakan "${i.includes}"`:i.format==="regex"?`String tidak valid: harus sesuai pola ${i.pattern}`:`${n[i.format]??r.format} tidak valid`}case"not_multiple_of":return`Angka tidak valid: harus kelipatan dari ${r.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali ${r.keys.length>1?"s":""}: ${b(r.keys,", ")}`;case"invalid_key":return`Kunci tidak valid di ${r.origin}`;case"invalid_union":return"Input tidak valid";case"invalid_element":return`Nilai tidak valid di ${r.origin}`;default:return"Input tidak valid"}}};function Ob(){return{localeError:c$()}}var u$=()=>{let e={string:{unit:"stafi",verb:"a\xF0 hafa"},file:{unit:"b\xE6ti",verb:"a\xF0 hafa"},array:{unit:"hluti",verb:"a\xF0 hafa"},set:{unit:"hluti",verb:"a\xF0 hafa"}};function t(r){return e[r]??null}let n={regex:"gildi",email:"netfang",url:"vefsl\xF3\xF0",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dagsetning og t\xEDmi",date:"ISO dagsetning",time:"ISO t\xEDmi",duration:"ISO t\xEDmalengd",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded strengur",base64url:"base64url-encoded strengur",json_string:"JSON strengur",e164:"E.164 t\xF6lugildi",jwt:"JWT",template_literal:"gildi"},o={nan:"NaN",number:"n\xFAmer",array:"fylki"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Rangt gildi: \xDE\xFA sl\xF3st inn ${s} \xFEar sem \xE1 a\xF0 vera instanceof ${r.expected}`:`Rangt gildi: \xDE\xFA sl\xF3st inn ${s} \xFEar sem \xE1 a\xF0 vera ${i}`}case"invalid_value":return r.values.length===1?`Rangt gildi: gert r\xE1\xF0 fyrir ${E(r.values[0])}`:`\xD3gilt val: m\xE1 vera eitt af eftirfarandi ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`Of st\xF3rt: gert er r\xE1\xF0 fyrir a\xF0 ${r.origin??"gildi"} hafi ${i}${r.maximum.toString()} ${a.unit??"hluti"}`:`Of st\xF3rt: gert er r\xE1\xF0 fyrir a\xF0 ${r.origin??"gildi"} s\xE9 ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`Of l\xEDti\xF0: gert er r\xE1\xF0 fyrir a\xF0 ${r.origin} hafi ${i}${r.minimum.toString()} ${a.unit}`:`Of l\xEDti\xF0: gert er r\xE1\xF0 fyrir a\xF0 ${r.origin} s\xE9 ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\xD3gildur strengur: ver\xF0ur a\xF0 byrja \xE1 "${i.prefix}"`:i.format==="ends_with"?`\xD3gildur strengur: ver\xF0ur a\xF0 enda \xE1 "${i.suffix}"`:i.format==="includes"?`\xD3gildur strengur: ver\xF0ur a\xF0 innihalda "${i.includes}"`:i.format==="regex"?`\xD3gildur strengur: ver\xF0ur a\xF0 fylgja mynstri ${i.pattern}`:`Rangt ${n[i.format]??r.format}`}case"not_multiple_of":return`R\xF6ng tala: ver\xF0ur a\xF0 vera margfeldi af ${r.divisor}`;case"unrecognized_keys":return`\xD3\xFEekkt ${r.keys.length>1?"ir lyklar":"ur lykill"}: ${b(r.keys,", ")}`;case"invalid_key":return`Rangur lykill \xED ${r.origin}`;case"invalid_union":return"Rangt gildi";case"invalid_element":return`Rangt gildi \xED ${r.origin}`;default:return"Rangt gildi"}}};function Pb(){return{localeError:u$()}}var l$=()=>{let e={string:{unit:"caratteri",verb:"avere"},file:{unit:"byte",verb:"avere"},array:{unit:"elementi",verb:"avere"},set:{unit:"elementi",verb:"avere"}};function t(r){return e[r]??null}let n={regex:"input",email:"indirizzo email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e ora ISO",date:"data ISO",time:"ora ISO",duration:"durata ISO",ipv4:"indirizzo IPv4",ipv6:"indirizzo IPv6",cidrv4:"intervallo IPv4",cidrv6:"intervallo IPv6",base64:"stringa codificata in base64",base64url:"URL codificata in base64",json_string:"stringa JSON",e164:"numero E.164",jwt:"JWT",template_literal:"input"},o={nan:"NaN",number:"numero",array:"vettore"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Input non valido: atteso instanceof ${r.expected}, ricevuto ${s}`:`Input non valido: atteso ${i}, ricevuto ${s}`}case"invalid_value":return r.values.length===1?`Input non valido: atteso ${E(r.values[0])}`:`Opzione non valida: atteso uno tra ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`Troppo grande: ${r.origin??"valore"} deve avere ${i}${r.maximum.toString()} ${a.unit??"elementi"}`:`Troppo grande: ${r.origin??"valore"} deve essere ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`Troppo piccolo: ${r.origin} deve avere ${i}${r.minimum.toString()} ${a.unit}`:`Troppo piccolo: ${r.origin} deve essere ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Stringa non valida: deve iniziare con "${i.prefix}"`:i.format==="ends_with"?`Stringa non valida: deve terminare con "${i.suffix}"`:i.format==="includes"?`Stringa non valida: deve includere "${i.includes}"`:i.format==="regex"?`Stringa non valida: deve corrispondere al pattern ${i.pattern}`:`Input non valido: ${n[i.format]??r.format}`}case"not_multiple_of":return`Numero non valido: deve essere un multiplo di ${r.divisor}`;case"unrecognized_keys":return`Chiav${r.keys.length>1?"i":"e"} non riconosciut${r.keys.length>1?"e":"a"}: ${b(r.keys,", ")}`;case"invalid_key":return`Chiave non valida in ${r.origin}`;case"invalid_union":return"Input non valido";case"invalid_element":return`Valore non valido in ${r.origin}`;default:return"Input non valido"}}};function Nb(){return{localeError:l$()}}var p$=()=>{let e={string:{unit:"\u6587\u5B57",verb:"\u3067\u3042\u308B"},file:{unit:"\u30D0\u30A4\u30C8",verb:"\u3067\u3042\u308B"},array:{unit:"\u8981\u7D20",verb:"\u3067\u3042\u308B"},set:{unit:"\u8981\u7D20",verb:"\u3067\u3042\u308B"}};function t(r){return e[r]??null}let n={regex:"\u5165\u529B\u5024",email:"\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9",url:"URL",emoji:"\u7D75\u6587\u5B57",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO\u65E5\u6642",date:"ISO\u65E5\u4ED8",time:"ISO\u6642\u523B",duration:"ISO\u671F\u9593",ipv4:"IPv4\u30A2\u30C9\u30EC\u30B9",ipv6:"IPv6\u30A2\u30C9\u30EC\u30B9",cidrv4:"IPv4\u7BC4\u56F2",cidrv6:"IPv6\u7BC4\u56F2",base64:"base64\u30A8\u30F3\u30B3\u30FC\u30C9\u6587\u5B57\u5217",base64url:"base64url\u30A8\u30F3\u30B3\u30FC\u30C9\u6587\u5B57\u5217",json_string:"JSON\u6587\u5B57\u5217",e164:"E.164\u756A\u53F7",jwt:"JWT",template_literal:"\u5165\u529B\u5024"},o={nan:"NaN",number:"\u6570\u5024",array:"\u914D\u5217"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\u7121\u52B9\u306A\u5165\u529B: instanceof ${r.expected}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F\u304C\u3001${s}\u304C\u5165\u529B\u3055\u308C\u307E\u3057\u305F`:`\u7121\u52B9\u306A\u5165\u529B: ${i}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F\u304C\u3001${s}\u304C\u5165\u529B\u3055\u308C\u307E\u3057\u305F`}case"invalid_value":return r.values.length===1?`\u7121\u52B9\u306A\u5165\u529B: ${E(r.values[0])}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F`:`\u7121\u52B9\u306A\u9078\u629E: ${b(r.values,"\u3001")}\u306E\u3044\u305A\u308C\u304B\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;case"too_big":{let i=r.inclusive?"\u4EE5\u4E0B\u3067\u3042\u308B":"\u3088\u308A\u5C0F\u3055\u3044",a=t(r.origin);return a?`\u5927\u304D\u3059\u304E\u308B\u5024: ${r.origin??"\u5024"}\u306F${r.maximum.toString()}${a.unit??"\u8981\u7D20"}${i}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u5927\u304D\u3059\u304E\u308B\u5024: ${r.origin??"\u5024"}\u306F${r.maximum.toString()}${i}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`}case"too_small":{let i=r.inclusive?"\u4EE5\u4E0A\u3067\u3042\u308B":"\u3088\u308A\u5927\u304D\u3044",a=t(r.origin);return a?`\u5C0F\u3055\u3059\u304E\u308B\u5024: ${r.origin}\u306F${r.minimum.toString()}${a.unit}${i}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u5C0F\u3055\u3059\u304E\u308B\u5024: ${r.origin}\u306F${r.minimum.toString()}${i}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${i.prefix}"\u3067\u59CB\u307E\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:i.format==="ends_with"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${i.suffix}"\u3067\u7D42\u308F\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:i.format==="includes"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${i.includes}"\u3092\u542B\u3080\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:i.format==="regex"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: \u30D1\u30BF\u30FC\u30F3${i.pattern}\u306B\u4E00\u81F4\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u7121\u52B9\u306A${n[i.format]??r.format}`}case"not_multiple_of":return`\u7121\u52B9\u306A\u6570\u5024: ${r.divisor}\u306E\u500D\u6570\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;case"unrecognized_keys":return`\u8A8D\u8B58\u3055\u308C\u3066\u3044\u306A\u3044\u30AD\u30FC${r.keys.length>1?"\u7FA4":""}: ${b(r.keys,"\u3001")}`;case"invalid_key":return`${r.origin}\u5185\u306E\u7121\u52B9\u306A\u30AD\u30FC`;case"invalid_union":return"\u7121\u52B9\u306A\u5165\u529B";case"invalid_element":return`${r.origin}\u5185\u306E\u7121\u52B9\u306A\u5024`;default:return"\u7121\u52B9\u306A\u5165\u529B"}}};function Db(){return{localeError:p$()}}var f$=()=>{let e={string:{unit:"\u10E1\u10D8\u10DB\u10D1\u10DD\u10DA\u10DD",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"},file:{unit:"\u10D1\u10D0\u10D8\u10E2\u10D8",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"},array:{unit:"\u10D4\u10DA\u10D4\u10DB\u10D4\u10DC\u10E2\u10D8",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"},set:{unit:"\u10D4\u10DA\u10D4\u10DB\u10D4\u10DC\u10E2\u10D8",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"}};function t(r){return e[r]??null}let n={regex:"\u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0",email:"\u10D4\u10DA-\u10E4\u10DD\u10E1\u10E2\u10D8\u10E1 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",url:"URL",emoji:"\u10D4\u10DB\u10DD\u10EF\u10D8",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u10D7\u10D0\u10E0\u10D8\u10E6\u10D8-\u10D3\u10E0\u10DD",date:"\u10D7\u10D0\u10E0\u10D8\u10E6\u10D8",time:"\u10D3\u10E0\u10DD",duration:"\u10EE\u10D0\u10DC\u10D2\u10E0\u10EB\u10DA\u10D8\u10D5\u10DD\u10D1\u10D0",ipv4:"IPv4 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",ipv6:"IPv6 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",cidrv4:"IPv4 \u10D3\u10D8\u10D0\u10DE\u10D0\u10D6\u10DD\u10DC\u10D8",cidrv6:"IPv6 \u10D3\u10D8\u10D0\u10DE\u10D0\u10D6\u10DD\u10DC\u10D8",base64:"base64-\u10D9\u10DD\u10D3\u10D8\u10E0\u10D4\u10D1\u10E3\u10DA\u10D8 \u10D5\u10D4\u10DA\u10D8",base64url:"base64url-\u10D9\u10DD\u10D3\u10D8\u10E0\u10D4\u10D1\u10E3\u10DA\u10D8 \u10D5\u10D4\u10DA\u10D8",json_string:"JSON \u10D5\u10D4\u10DA\u10D8",e164:"E.164 \u10DC\u10DD\u10DB\u10D4\u10E0\u10D8",jwt:"JWT",template_literal:"\u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0"},o={nan:"NaN",number:"\u10E0\u10D8\u10EA\u10EE\u10D5\u10D8",string:"\u10D5\u10D4\u10DA\u10D8",boolean:"\u10D1\u10E3\u10DA\u10D4\u10D0\u10DC\u10D8",function:"\u10E4\u10E3\u10DC\u10E5\u10EA\u10D8\u10D0",array:"\u10DB\u10D0\u10E1\u10D8\u10D5\u10D8"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 instanceof ${r.expected}, \u10DB\u10D8\u10E6\u10D4\u10D1\u10E3\u10DA\u10D8 ${s}`:`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${i}, \u10DB\u10D8\u10E6\u10D4\u10D1\u10E3\u10DA\u10D8 ${s}`}case"invalid_value":return r.values.length===1?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${E(r.values[0])}`:`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D0\u10E0\u10D8\u10D0\u10DC\u10E2\u10D8: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8\u10D0 \u10D4\u10E0\u10D7-\u10D4\u10E0\u10D7\u10D8 ${b(r.values,"|")}-\u10D3\u10D0\u10DC`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10D3\u10D8\u10D3\u10D8: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${r.origin??"\u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0"} ${a.verb} ${i}${r.maximum.toString()} ${a.unit}`:`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10D3\u10D8\u10D3\u10D8: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${r.origin??"\u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0"} \u10D8\u10E7\u10DD\u10E1 ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10DE\u10D0\u10E2\u10D0\u10E0\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${r.origin} ${a.verb} ${i}${r.minimum.toString()} ${a.unit}`:`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10DE\u10D0\u10E2\u10D0\u10E0\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${r.origin} \u10D8\u10E7\u10DD\u10E1 ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10D8\u10EC\u10E7\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 "${i.prefix}"-\u10D8\u10D7`:i.format==="ends_with"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10DB\u10D7\u10D0\u10D5\u10E0\u10D3\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 "${i.suffix}"-\u10D8\u10D7`:i.format==="includes"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1 "${i.includes}"-\u10E1`:i.format==="regex"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D4\u10E1\u10D0\u10D1\u10D0\u10DB\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 \u10E8\u10D0\u10D1\u10DA\u10DD\u10DC\u10E1 ${i.pattern}`:`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 ${n[i.format]??r.format}`}case"not_multiple_of":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E0\u10D8\u10EA\u10EE\u10D5\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10D8\u10E7\u10DD\u10E1 ${r.divisor}-\u10D8\u10E1 \u10EF\u10D4\u10E0\u10D0\u10D3\u10D8`;case"unrecognized_keys":return`\u10E3\u10EA\u10DC\u10DD\u10D1\u10D8 \u10D2\u10D0\u10E1\u10D0\u10E6\u10D4\u10D1${r.keys.length>1?"\u10D4\u10D1\u10D8":"\u10D8"}: ${b(r.keys,", ")}`;case"invalid_key":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D2\u10D0\u10E1\u10D0\u10E6\u10D4\u10D1\u10D8 ${r.origin}-\u10E8\u10D8`;case"invalid_union":return"\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0";case"invalid_element":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0 ${r.origin}-\u10E8\u10D8`;default:return"\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0"}}};function jb(){return{localeError:f$()}}var m$=()=>{let e={string:{unit:"\u178F\u17BD\u17A2\u1780\u17D2\u179F\u179A",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},file:{unit:"\u1794\u17C3",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},array:{unit:"\u1792\u17B6\u178F\u17BB",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},set:{unit:"\u1792\u17B6\u178F\u17BB",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"}};function t(r){return e[r]??null}let n={regex:"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B",email:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793\u17A2\u17CA\u17B8\u1798\u17C2\u179B",url:"URL",emoji:"\u179F\u1789\u17D2\u1789\u17B6\u17A2\u17B6\u179A\u1798\u17D2\u1798\u178E\u17CD",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u1780\u17B6\u179B\u1794\u179A\u17B7\u1785\u17D2\u1786\u17C1\u1791 \u1793\u17B7\u1784\u1798\u17C9\u17C4\u1784 ISO",date:"\u1780\u17B6\u179B\u1794\u179A\u17B7\u1785\u17D2\u1786\u17C1\u1791 ISO",time:"\u1798\u17C9\u17C4\u1784 ISO",duration:"\u179A\u1799\u17C8\u1796\u17C1\u179B ISO",ipv4:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv4",ipv6:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv6",cidrv4:"\u178A\u17C2\u1793\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv4",cidrv6:"\u178A\u17C2\u1793\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv6",base64:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u17A2\u17CA\u17B7\u1780\u17BC\u178A base64",base64url:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u17A2\u17CA\u17B7\u1780\u17BC\u178A base64url",json_string:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A JSON",e164:"\u179B\u17C1\u1781 E.164",jwt:"JWT",template_literal:"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B"},o={nan:"NaN",number:"\u179B\u17C1\u1781",array:"\u17A2\u17B6\u179A\u17C1 (Array)",null:"\u1782\u17D2\u1798\u17B6\u1793\u178F\u1798\u17D2\u179B\u17C3 (null)"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A instanceof ${r.expected} \u1794\u17C9\u17BB\u1793\u17D2\u178F\u17C2\u1791\u1791\u17BD\u179B\u1794\u17B6\u1793 ${s}`:`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${i} \u1794\u17C9\u17BB\u1793\u17D2\u178F\u17C2\u1791\u1791\u17BD\u179B\u1794\u17B6\u1793 ${s}`}case"invalid_value":return r.values.length===1?`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${E(r.values[0])}`:`\u1787\u1798\u17D2\u179A\u17BE\u179F\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1787\u17B6\u1798\u17BD\u1799\u1780\u17D2\u1793\u17BB\u1784\u1785\u17C6\u178E\u17C4\u1798 ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`\u1792\u17C6\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${r.origin??"\u178F\u1798\u17D2\u179B\u17C3"} ${i} ${r.maximum.toString()} ${a.unit??"\u1792\u17B6\u178F\u17BB"}`:`\u1792\u17C6\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${r.origin??"\u178F\u1798\u17D2\u179B\u17C3"} ${i} ${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`\u178F\u17BC\u1785\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${r.origin} ${i} ${r.minimum.toString()} ${a.unit}`:`\u178F\u17BC\u1785\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${r.origin} ${i} ${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1785\u17B6\u1794\u17CB\u1795\u17D2\u178F\u17BE\u1798\u178A\u17C4\u1799 "${i.prefix}"`:i.format==="ends_with"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1794\u1789\u17D2\u1785\u1794\u17CB\u178A\u17C4\u1799 "${i.suffix}"`:i.format==="includes"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1798\u17B6\u1793 "${i.includes}"`:i.format==="regex"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u178F\u17C2\u1795\u17D2\u1782\u17BC\u1795\u17D2\u1782\u1784\u1793\u17B9\u1784\u1791\u1798\u17D2\u179A\u1784\u17CB\u178A\u17C2\u179B\u1794\u17B6\u1793\u1780\u17C6\u178E\u178F\u17CB ${i.pattern}`:`\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 ${n[i.format]??r.format}`}case"not_multiple_of":return`\u179B\u17C1\u1781\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u178F\u17C2\u1787\u17B6\u1796\u17A0\u17BB\u1782\u17BB\u178E\u1793\u17C3 ${r.divisor}`;case"unrecognized_keys":return`\u179A\u1780\u1783\u17BE\u1789\u179F\u17C4\u1798\u17B7\u1793\u179F\u17D2\u1782\u17B6\u179B\u17CB\u17D6 ${b(r.keys,", ")}`;case"invalid_key":return`\u179F\u17C4\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u1793\u17C5\u1780\u17D2\u1793\u17BB\u1784 ${r.origin}`;case"invalid_union":return"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C";case"invalid_element":return`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u1793\u17C5\u1780\u17D2\u1793\u17BB\u1784 ${r.origin}`;default:return"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C"}}};function vs(){return{localeError:m$()}}function Ub(){return vs()}var g$=()=>{let e={string:{unit:"\uBB38\uC790",verb:"to have"},file:{unit:"\uBC14\uC774\uD2B8",verb:"to have"},array:{unit:"\uAC1C",verb:"to have"},set:{unit:"\uAC1C",verb:"to have"}};function t(r){return e[r]??null}let n={regex:"\uC785\uB825",email:"\uC774\uBA54\uC77C \uC8FC\uC18C",url:"URL",emoji:"\uC774\uBAA8\uC9C0",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \uB0A0\uC9DC\uC2DC\uAC04",date:"ISO \uB0A0\uC9DC",time:"ISO \uC2DC\uAC04",duration:"ISO \uAE30\uAC04",ipv4:"IPv4 \uC8FC\uC18C",ipv6:"IPv6 \uC8FC\uC18C",cidrv4:"IPv4 \uBC94\uC704",cidrv6:"IPv6 \uBC94\uC704",base64:"base64 \uC778\uCF54\uB529 \uBB38\uC790\uC5F4",base64url:"base64url \uC778\uCF54\uB529 \uBB38\uC790\uC5F4",json_string:"JSON \uBB38\uC790\uC5F4",e164:"E.164 \uBC88\uD638",jwt:"JWT",template_literal:"\uC785\uB825"},o={nan:"NaN"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\uC798\uBABB\uB41C \uC785\uB825: \uC608\uC0C1 \uD0C0\uC785\uC740 instanceof ${r.expected}, \uBC1B\uC740 \uD0C0\uC785\uC740 ${s}\uC785\uB2C8\uB2E4`:`\uC798\uBABB\uB41C \uC785\uB825: \uC608\uC0C1 \uD0C0\uC785\uC740 ${i}, \uBC1B\uC740 \uD0C0\uC785\uC740 ${s}\uC785\uB2C8\uB2E4`}case"invalid_value":return r.values.length===1?`\uC798\uBABB\uB41C \uC785\uB825: \uAC12\uC740 ${E(r.values[0])} \uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4`:`\uC798\uBABB\uB41C \uC635\uC158: ${b(r.values,"\uB610\uB294 ")} \uC911 \uD558\uB098\uC5EC\uC57C \uD569\uB2C8\uB2E4`;case"too_big":{let i=r.inclusive?"\uC774\uD558":"\uBBF8\uB9CC",a=i==="\uBBF8\uB9CC"?"\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4":"\uC5EC\uC57C \uD569\uB2C8\uB2E4",s=t(r.origin),d=s?.unit??"\uC694\uC18C";return s?`${r.origin??"\uAC12"}\uC774 \uB108\uBB34 \uD07D\uB2C8\uB2E4: ${r.maximum.toString()}${d} ${i}${a}`:`${r.origin??"\uAC12"}\uC774 \uB108\uBB34 \uD07D\uB2C8\uB2E4: ${r.maximum.toString()} ${i}${a}`}case"too_small":{let i=r.inclusive?"\uC774\uC0C1":"\uCD08\uACFC",a=i==="\uC774\uC0C1"?"\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4":"\uC5EC\uC57C \uD569\uB2C8\uB2E4",s=t(r.origin),d=s?.unit??"\uC694\uC18C";return s?`${r.origin??"\uAC12"}\uC774 \uB108\uBB34 \uC791\uC2B5\uB2C8\uB2E4: ${r.minimum.toString()}${d} ${i}${a}`:`${r.origin??"\uAC12"}\uC774 \uB108\uBB34 \uC791\uC2B5\uB2C8\uB2E4: ${r.minimum.toString()} ${i}${a}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${i.prefix}"(\uC73C)\uB85C \uC2DC\uC791\uD574\uC57C \uD569\uB2C8\uB2E4`:i.format==="ends_with"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${i.suffix}"(\uC73C)\uB85C \uB05D\uB098\uC57C \uD569\uB2C8\uB2E4`:i.format==="includes"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${i.includes}"\uC744(\uB97C) \uD3EC\uD568\uD574\uC57C \uD569\uB2C8\uB2E4`:i.format==="regex"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: \uC815\uADDC\uC2DD ${i.pattern} \uD328\uD134\uACFC \uC77C\uCE58\uD574\uC57C \uD569\uB2C8\uB2E4`:`\uC798\uBABB\uB41C ${n[i.format]??r.format}`}case"not_multiple_of":return`\uC798\uBABB\uB41C \uC22B\uC790: ${r.divisor}\uC758 \uBC30\uC218\uC5EC\uC57C \uD569\uB2C8\uB2E4`;case"unrecognized_keys":return`\uC778\uC2DD\uD560 \uC218 \uC5C6\uB294 \uD0A4: ${b(r.keys,", ")}`;case"invalid_key":return`\uC798\uBABB\uB41C \uD0A4: ${r.origin}`;case"invalid_union":return"\uC798\uBABB\uB41C \uC785\uB825";case"invalid_element":return`\uC798\uBABB\uB41C \uAC12: ${r.origin}`;default:return"\uC798\uBABB\uB41C \uC785\uB825"}}};function Lb(){return{localeError:g$()}}var ai=e=>e.charAt(0).toUpperCase()+e.slice(1);function Mb(e){let t=Math.abs(e),n=t%10,o=t%100;return o>=11&&o<=19||n===0?"many":n===1?"one":"few"}var y$=()=>{let e={string:{unit:{one:"simbolis",few:"simboliai",many:"simboli\u0173"},verb:{smaller:{inclusive:"turi b\u016Bti ne ilgesn\u0117 kaip",notInclusive:"turi b\u016Bti trumpesn\u0117 kaip"},bigger:{inclusive:"turi b\u016Bti ne trumpesn\u0117 kaip",notInclusive:"turi b\u016Bti ilgesn\u0117 kaip"}}},file:{unit:{one:"baitas",few:"baitai",many:"bait\u0173"},verb:{smaller:{inclusive:"turi b\u016Bti ne didesnis kaip",notInclusive:"turi b\u016Bti ma\u017Eesnis kaip"},bigger:{inclusive:"turi b\u016Bti ne ma\u017Eesnis kaip",notInclusive:"turi b\u016Bti didesnis kaip"}}},array:{unit:{one:"element\u0105",few:"elementus",many:"element\u0173"},verb:{smaller:{inclusive:"turi tur\u0117ti ne daugiau kaip",notInclusive:"turi tur\u0117ti ma\u017Eiau kaip"},bigger:{inclusive:"turi tur\u0117ti ne ma\u017Eiau kaip",notInclusive:"turi tur\u0117ti daugiau kaip"}}},set:{unit:{one:"element\u0105",few:"elementus",many:"element\u0173"},verb:{smaller:{inclusive:"turi tur\u0117ti ne daugiau kaip",notInclusive:"turi tur\u0117ti ma\u017Eiau kaip"},bigger:{inclusive:"turi tur\u0117ti ne ma\u017Eiau kaip",notInclusive:"turi tur\u0117ti daugiau kaip"}}}};function t(r,i,a,s){let d=e[r]??null;return d===null?d:{unit:d.unit[i],verb:d.verb[s][a?"inclusive":"notInclusive"]}}let n={regex:"\u012Fvestis",email:"el. pa\u0161to adresas",url:"URL",emoji:"jaustukas",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO data ir laikas",date:"ISO data",time:"ISO laikas",duration:"ISO trukm\u0117",ipv4:"IPv4 adresas",ipv6:"IPv6 adresas",cidrv4:"IPv4 tinklo prefiksas (CIDR)",cidrv6:"IPv6 tinklo prefiksas (CIDR)",base64:"base64 u\u017Ekoduota eilut\u0117",base64url:"base64url u\u017Ekoduota eilut\u0117",json_string:"JSON eilut\u0117",e164:"E.164 numeris",jwt:"JWT",template_literal:"\u012Fvestis"},o={nan:"NaN",number:"skai\u010Dius",bigint:"sveikasis skai\u010Dius",string:"eilut\u0117",boolean:"login\u0117 reik\u0161m\u0117",undefined:"neapibr\u0117\u017Eta reik\u0161m\u0117",function:"funkcija",symbol:"simbolis",array:"masyvas",object:"objektas",null:"nulin\u0117 reik\u0161m\u0117"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Gautas tipas ${s}, o tik\u0117tasi - instanceof ${r.expected}`:`Gautas tipas ${s}, o tik\u0117tasi - ${i}`}case"invalid_value":return r.values.length===1?`Privalo b\u016Bti ${E(r.values[0])}`:`Privalo b\u016Bti vienas i\u0161 ${b(r.values,"|")} pasirinkim\u0173`;case"too_big":{let i=o[r.origin]??r.origin,a=t(r.origin,Mb(Number(r.maximum)),r.inclusive??!1,"smaller");if(a?.verb)return`${ai(i??r.origin??"reik\u0161m\u0117")} ${a.verb} ${r.maximum.toString()} ${a.unit??"element\u0173"}`;let s=r.inclusive?"ne didesnis kaip":"ma\u017Eesnis kaip";return`${ai(i??r.origin??"reik\u0161m\u0117")} turi b\u016Bti ${s} ${r.maximum.toString()} ${a?.unit}`}case"too_small":{let i=o[r.origin]??r.origin,a=t(r.origin,Mb(Number(r.minimum)),r.inclusive??!1,"bigger");if(a?.verb)return`${ai(i??r.origin??"reik\u0161m\u0117")} ${a.verb} ${r.minimum.toString()} ${a.unit??"element\u0173"}`;let s=r.inclusive?"ne ma\u017Eesnis kaip":"didesnis kaip";return`${ai(i??r.origin??"reik\u0161m\u0117")} turi b\u016Bti ${s} ${r.minimum.toString()} ${a?.unit}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Eilut\u0117 privalo prasid\u0117ti "${i.prefix}"`:i.format==="ends_with"?`Eilut\u0117 privalo pasibaigti "${i.suffix}"`:i.format==="includes"?`Eilut\u0117 privalo \u012Ftraukti "${i.includes}"`:i.format==="regex"?`Eilut\u0117 privalo atitikti ${i.pattern}`:`Neteisingas ${n[i.format]??r.format}`}case"not_multiple_of":return`Skai\u010Dius privalo b\u016Bti ${r.divisor} kartotinis.`;case"unrecognized_keys":return`Neatpa\u017Eint${r.keys.length>1?"i":"as"} rakt${r.keys.length>1?"ai":"as"}: ${b(r.keys,", ")}`;case"invalid_key":return"Rastas klaidingas raktas";case"invalid_union":return"Klaidinga \u012Fvestis";case"invalid_element":{let i=o[r.origin]??r.origin;return`${ai(i??r.origin??"reik\u0161m\u0117")} turi klaiding\u0105 \u012Fvest\u012F`}default:return"Klaidinga \u012Fvestis"}}};function zb(){return{localeError:y$()}}var h$=()=>{let e={string:{unit:"\u0437\u043D\u0430\u0446\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},file:{unit:"\u0431\u0430\u0458\u0442\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},array:{unit:"\u0441\u0442\u0430\u0432\u043A\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},set:{unit:"\u0441\u0442\u0430\u0432\u043A\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"}};function t(r){return e[r]??null}let n={regex:"\u0432\u043D\u0435\u0441",email:"\u0430\u0434\u0440\u0435\u0441\u0430 \u043D\u0430 \u0435-\u043F\u043E\u0448\u0442\u0430",url:"URL",emoji:"\u0435\u043C\u043E\u045F\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0443\u043C \u0438 \u0432\u0440\u0435\u043C\u0435",date:"ISO \u0434\u0430\u0442\u0443\u043C",time:"ISO \u0432\u0440\u0435\u043C\u0435",duration:"ISO \u0432\u0440\u0435\u043C\u0435\u0442\u0440\u0430\u0435\u045A\u0435",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441\u0430",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441\u0430",cidrv4:"IPv4 \u043E\u043F\u0441\u0435\u0433",cidrv6:"IPv6 \u043E\u043F\u0441\u0435\u0433",base64:"base64-\u0435\u043D\u043A\u043E\u0434\u0438\u0440\u0430\u043D\u0430 \u043D\u0438\u0437\u0430",base64url:"base64url-\u0435\u043D\u043A\u043E\u0434\u0438\u0440\u0430\u043D\u0430 \u043D\u0438\u0437\u0430",json_string:"JSON \u043D\u0438\u0437\u0430",e164:"E.164 \u0431\u0440\u043E\u0458",jwt:"JWT",template_literal:"\u0432\u043D\u0435\u0441"},o={nan:"NaN",number:"\u0431\u0440\u043E\u0458",array:"\u043D\u0438\u0437\u0430"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 instanceof ${r.expected}, \u043F\u0440\u0438\u043C\u0435\u043D\u043E ${s}`:`\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${i}, \u043F\u0440\u0438\u043C\u0435\u043D\u043E ${s}`}case"invalid_value":return r.values.length===1?`Invalid input: expected ${E(r.values[0])}`:`\u0413\u0440\u0435\u0448\u0430\u043D\u0430 \u043E\u043F\u0446\u0438\u0458\u0430: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 \u0435\u0434\u043D\u0430 ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u0433\u043E\u043B\u0435\u043C: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${r.origin??"\u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442\u0430"} \u0434\u0430 \u0438\u043C\u0430 ${i}${r.maximum.toString()} ${a.unit??"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0438"}`:`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u0433\u043E\u043B\u0435\u043C: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${r.origin??"\u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442\u0430"} \u0434\u0430 \u0431\u0438\u0434\u0435 ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u043C\u0430\u043B: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${r.origin} \u0434\u0430 \u0438\u043C\u0430 ${i}${r.minimum.toString()} ${a.unit}`:`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u043C\u0430\u043B: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${r.origin} \u0434\u0430 \u0431\u0438\u0434\u0435 ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0437\u0430\u043F\u043E\u0447\u043D\u0443\u0432\u0430 \u0441\u043E "${i.prefix}"`:i.format==="ends_with"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0437\u0430\u0432\u0440\u0448\u0443\u0432\u0430 \u0441\u043E "${i.suffix}"`:i.format==="includes"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0432\u043A\u043B\u0443\u0447\u0443\u0432\u0430 "${i.includes}"`:i.format==="regex"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u043E\u0434\u0433\u043E\u0430\u0440\u0430 \u043D\u0430 \u043F\u0430\u0442\u0435\u0440\u043D\u043E\u0442 ${i.pattern}`:`Invalid ${n[i.format]??r.format}`}case"not_multiple_of":return`\u0413\u0440\u0435\u0448\u0435\u043D \u0431\u0440\u043E\u0458: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0431\u0438\u0434\u0435 \u0434\u0435\u043B\u0438\u0432 \u0441\u043E ${r.divisor}`;case"unrecognized_keys":return`${r.keys.length>1?"\u041D\u0435\u043F\u0440\u0435\u043F\u043E\u0437\u043D\u0430\u0435\u043D\u0438 \u043A\u043B\u0443\u0447\u0435\u0432\u0438":"\u041D\u0435\u043F\u0440\u0435\u043F\u043E\u0437\u043D\u0430\u0435\u043D \u043A\u043B\u0443\u0447"}: ${b(r.keys,", ")}`;case"invalid_key":return`\u0413\u0440\u0435\u0448\u0435\u043D \u043A\u043B\u0443\u0447 \u0432\u043E ${r.origin}`;case"invalid_union":return"\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441";case"invalid_element":return`\u0413\u0440\u0435\u0448\u043D\u0430 \u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442 \u0432\u043E ${r.origin}`;default:return"\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441"}}};function Bb(){return{localeError:h$()}}var v$=()=>{let e={string:{unit:"aksara",verb:"mempunyai"},file:{unit:"bait",verb:"mempunyai"},array:{unit:"elemen",verb:"mempunyai"},set:{unit:"elemen",verb:"mempunyai"}};function t(r){return e[r]??null}let n={regex:"input",email:"alamat e-mel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tarikh masa ISO",date:"tarikh ISO",time:"masa ISO",duration:"tempoh ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"julat IPv4",cidrv6:"julat IPv6",base64:"string dikodkan base64",base64url:"string dikodkan base64url",json_string:"string JSON",e164:"nombor E.164",jwt:"JWT",template_literal:"input"},o={nan:"NaN",number:"nombor"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Input tidak sah: dijangka instanceof ${r.expected}, diterima ${s}`:`Input tidak sah: dijangka ${i}, diterima ${s}`}case"invalid_value":return r.values.length===1?`Input tidak sah: dijangka ${E(r.values[0])}`:`Pilihan tidak sah: dijangka salah satu daripada ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`Terlalu besar: dijangka ${r.origin??"nilai"} ${a.verb} ${i}${r.maximum.toString()} ${a.unit??"elemen"}`:`Terlalu besar: dijangka ${r.origin??"nilai"} adalah ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`Terlalu kecil: dijangka ${r.origin} ${a.verb} ${i}${r.minimum.toString()} ${a.unit}`:`Terlalu kecil: dijangka ${r.origin} adalah ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`String tidak sah: mesti bermula dengan "${i.prefix}"`:i.format==="ends_with"?`String tidak sah: mesti berakhir dengan "${i.suffix}"`:i.format==="includes"?`String tidak sah: mesti mengandungi "${i.includes}"`:i.format==="regex"?`String tidak sah: mesti sepadan dengan corak ${i.pattern}`:`${n[i.format]??r.format} tidak sah`}case"not_multiple_of":return`Nombor tidak sah: perlu gandaan ${r.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali: ${b(r.keys,", ")}`;case"invalid_key":return`Kunci tidak sah dalam ${r.origin}`;case"invalid_union":return"Input tidak sah";case"invalid_element":return`Nilai tidak sah dalam ${r.origin}`;default:return"Input tidak sah"}}};function qb(){return{localeError:v$()}}var I$=()=>{let e={string:{unit:"tekens",verb:"heeft"},file:{unit:"bytes",verb:"heeft"},array:{unit:"elementen",verb:"heeft"},set:{unit:"elementen",verb:"heeft"}};function t(r){return e[r]??null}let n={regex:"invoer",email:"emailadres",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum en tijd",date:"ISO datum",time:"ISO tijd",duration:"ISO duur",ipv4:"IPv4-adres",ipv6:"IPv6-adres",cidrv4:"IPv4-bereik",cidrv6:"IPv6-bereik",base64:"base64-gecodeerde tekst",base64url:"base64 URL-gecodeerde tekst",json_string:"JSON string",e164:"E.164-nummer",jwt:"JWT",template_literal:"invoer"},o={nan:"NaN",number:"getal"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Ongeldige invoer: verwacht instanceof ${r.expected}, ontving ${s}`:`Ongeldige invoer: verwacht ${i}, ontving ${s}`}case"invalid_value":return r.values.length===1?`Ongeldige invoer: verwacht ${E(r.values[0])}`:`Ongeldige optie: verwacht \xE9\xE9n van ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin),s=r.origin==="date"?"laat":r.origin==="string"?"lang":"groot";return a?`Te ${s}: verwacht dat ${r.origin??"waarde"} ${i}${r.maximum.toString()} ${a.unit??"elementen"} ${a.verb}`:`Te ${s}: verwacht dat ${r.origin??"waarde"} ${i}${r.maximum.toString()} is`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin),s=r.origin==="date"?"vroeg":r.origin==="string"?"kort":"klein";return a?`Te ${s}: verwacht dat ${r.origin} ${i}${r.minimum.toString()} ${a.unit} ${a.verb}`:`Te ${s}: verwacht dat ${r.origin} ${i}${r.minimum.toString()} is`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Ongeldige tekst: moet met "${i.prefix}" beginnen`:i.format==="ends_with"?`Ongeldige tekst: moet op "${i.suffix}" eindigen`:i.format==="includes"?`Ongeldige tekst: moet "${i.includes}" bevatten`:i.format==="regex"?`Ongeldige tekst: moet overeenkomen met patroon ${i.pattern}`:`Ongeldig: ${n[i.format]??r.format}`}case"not_multiple_of":return`Ongeldig getal: moet een veelvoud van ${r.divisor} zijn`;case"unrecognized_keys":return`Onbekende key${r.keys.length>1?"s":""}: ${b(r.keys,", ")}`;case"invalid_key":return`Ongeldige key in ${r.origin}`;case"invalid_union":return"Ongeldige invoer";case"invalid_element":return`Ongeldige waarde in ${r.origin}`;default:return"Ongeldige invoer"}}};function Fb(){return{localeError:I$()}}var b$=()=>{let e={string:{unit:"tegn",verb:"\xE5 ha"},file:{unit:"bytes",verb:"\xE5 ha"},array:{unit:"elementer",verb:"\xE5 inneholde"},set:{unit:"elementer",verb:"\xE5 inneholde"}};function t(r){return e[r]??null}let n={regex:"input",email:"e-postadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslett",date:"ISO-dato",time:"ISO-klokkeslett",duration:"ISO-varighet",ipv4:"IPv4-omr\xE5de",ipv6:"IPv6-omr\xE5de",cidrv4:"IPv4-spekter",cidrv6:"IPv6-spekter",base64:"base64-enkodet streng",base64url:"base64url-enkodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},o={nan:"NaN",number:"tall",array:"liste"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Ugyldig input: forventet instanceof ${r.expected}, fikk ${s}`:`Ugyldig input: forventet ${i}, fikk ${s}`}case"invalid_value":return r.values.length===1?`Ugyldig verdi: forventet ${E(r.values[0])}`:`Ugyldig valg: forventet en av ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`For stor(t): forventet ${r.origin??"value"} til \xE5 ha ${i}${r.maximum.toString()} ${a.unit??"elementer"}`:`For stor(t): forventet ${r.origin??"value"} til \xE5 ha ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`For lite(n): forventet ${r.origin} til \xE5 ha ${i}${r.minimum.toString()} ${a.unit}`:`For lite(n): forventet ${r.origin} til \xE5 ha ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Ugyldig streng: m\xE5 starte med "${i.prefix}"`:i.format==="ends_with"?`Ugyldig streng: m\xE5 ende med "${i.suffix}"`:i.format==="includes"?`Ugyldig streng: m\xE5 inneholde "${i.includes}"`:i.format==="regex"?`Ugyldig streng: m\xE5 matche m\xF8nsteret ${i.pattern}`:`Ugyldig ${n[i.format]??r.format}`}case"not_multiple_of":return`Ugyldig tall: m\xE5 v\xE6re et multiplum av ${r.divisor}`;case"unrecognized_keys":return`${r.keys.length>1?"Ukjente n\xF8kler":"Ukjent n\xF8kkel"}: ${b(r.keys,", ")}`;case"invalid_key":return`Ugyldig n\xF8kkel i ${r.origin}`;case"invalid_union":return"Ugyldig input";case"invalid_element":return`Ugyldig verdi i ${r.origin}`;default:return"Ugyldig input"}}};function Vb(){return{localeError:b$()}}var w$=()=>{let e={string:{unit:"harf",verb:"olmal\u0131d\u0131r"},file:{unit:"bayt",verb:"olmal\u0131d\u0131r"},array:{unit:"unsur",verb:"olmal\u0131d\u0131r"},set:{unit:"unsur",verb:"olmal\u0131d\u0131r"}};function t(r){return e[r]??null}let n={regex:"giren",email:"epostag\xE2h",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO heng\xE2m\u0131",date:"ISO tarihi",time:"ISO zaman\u0131",duration:"ISO m\xFCddeti",ipv4:"IPv4 ni\u015F\xE2n\u0131",ipv6:"IPv6 ni\u015F\xE2n\u0131",cidrv4:"IPv4 menzili",cidrv6:"IPv6 menzili",base64:"base64-\u015Fifreli metin",base64url:"base64url-\u015Fifreli metin",json_string:"JSON metin",e164:"E.164 say\u0131s\u0131",jwt:"JWT",template_literal:"giren"},o={nan:"NaN",number:"numara",array:"saf",null:"gayb"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`F\xE2sit giren: umulan instanceof ${r.expected}, al\u0131nan ${s}`:`F\xE2sit giren: umulan ${i}, al\u0131nan ${s}`}case"invalid_value":return r.values.length===1?`F\xE2sit giren: umulan ${E(r.values[0])}`:`F\xE2sit tercih: m\xFBteberler ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`Fazla b\xFCy\xFCk: ${r.origin??"value"}, ${i}${r.maximum.toString()} ${a.unit??"elements"} sahip olmal\u0131yd\u0131.`:`Fazla b\xFCy\xFCk: ${r.origin??"value"}, ${i}${r.maximum.toString()} olmal\u0131yd\u0131.`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`Fazla k\xFC\xE7\xFCk: ${r.origin}, ${i}${r.minimum.toString()} ${a.unit} sahip olmal\u0131yd\u0131.`:`Fazla k\xFC\xE7\xFCk: ${r.origin}, ${i}${r.minimum.toString()} olmal\u0131yd\u0131.`}case"invalid_format":{let i=r;return i.format==="starts_with"?`F\xE2sit metin: "${i.prefix}" ile ba\u015Flamal\u0131.`:i.format==="ends_with"?`F\xE2sit metin: "${i.suffix}" ile bitmeli.`:i.format==="includes"?`F\xE2sit metin: "${i.includes}" ihtiv\xE2 etmeli.`:i.format==="regex"?`F\xE2sit metin: ${i.pattern} nak\u015F\u0131na uymal\u0131.`:`F\xE2sit ${n[i.format]??r.format}`}case"not_multiple_of":return`F\xE2sit say\u0131: ${r.divisor} kat\u0131 olmal\u0131yd\u0131.`;case"unrecognized_keys":return`Tan\u0131nmayan anahtar ${r.keys.length>1?"s":""}: ${b(r.keys,", ")}`;case"invalid_key":return`${r.origin} i\xE7in tan\u0131nmayan anahtar var.`;case"invalid_union":return"Giren tan\u0131namad\u0131.";case"invalid_element":return`${r.origin} i\xE7in tan\u0131nmayan k\u0131ymet var.`;default:return"K\u0131ymet tan\u0131namad\u0131."}}};function Hb(){return{localeError:w$()}}var R$=()=>{let e={string:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"},file:{unit:"\u0628\u0627\u06CC\u067C\u0633",verb:"\u0648\u0644\u0631\u064A"},array:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"},set:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"}};function t(r){return e[r]??null}let n={regex:"\u0648\u0631\u0648\u062F\u064A",email:"\u0628\u0631\u06CC\u069A\u0646\u0627\u0644\u06CC\u06A9",url:"\u06CC\u0648 \u0622\u0631 \u0627\u0644",emoji:"\u0627\u06CC\u0645\u0648\u062C\u064A",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0646\u06CC\u067C\u0647 \u0627\u0648 \u0648\u062E\u062A",date:"\u0646\u06D0\u067C\u0647",time:"\u0648\u062E\u062A",duration:"\u0645\u0648\u062F\u0647",ipv4:"\u062F IPv4 \u067E\u062A\u0647",ipv6:"\u062F IPv6 \u067E\u062A\u0647",cidrv4:"\u062F IPv4 \u0633\u0627\u062D\u0647",cidrv6:"\u062F IPv6 \u0633\u0627\u062D\u0647",base64:"base64-encoded \u0645\u062A\u0646",base64url:"base64url-encoded \u0645\u062A\u0646",json_string:"JSON \u0645\u062A\u0646",e164:"\u062F E.164 \u0634\u0645\u06D0\u0631\u0647",jwt:"JWT",template_literal:"\u0648\u0631\u0648\u062F\u064A"},o={nan:"NaN",number:"\u0639\u062F\u062F",array:"\u0627\u0631\u06D0"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F instanceof ${r.expected} \u0648\u0627\u06CC, \u0645\u06AB\u0631 ${s} \u062A\u0631\u0644\u0627\u0633\u0647 \u0634\u0648`:`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F ${i} \u0648\u0627\u06CC, \u0645\u06AB\u0631 ${s} \u062A\u0631\u0644\u0627\u0633\u0647 \u0634\u0648`}case"invalid_value":return r.values.length===1?`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F ${E(r.values[0])} \u0648\u0627\u06CC`:`\u0646\u0627\u0633\u0645 \u0627\u0646\u062A\u062E\u0627\u0628: \u0628\u0627\u06CC\u062F \u06CC\u0648 \u0644\u0647 ${b(r.values,"|")} \u0685\u062E\u0647 \u0648\u0627\u06CC`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`\u0689\u06CC\u0631 \u0644\u0648\u06CC: ${r.origin??"\u0627\u0631\u0632\u069A\u062A"} \u0628\u0627\u06CC\u062F ${i}${r.maximum.toString()} ${a.unit??"\u0639\u0646\u0635\u0631\u0648\u0646\u0647"} \u0648\u0644\u0631\u064A`:`\u0689\u06CC\u0631 \u0644\u0648\u06CC: ${r.origin??"\u0627\u0631\u0632\u069A\u062A"} \u0628\u0627\u06CC\u062F ${i}${r.maximum.toString()} \u0648\u064A`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`\u0689\u06CC\u0631 \u06A9\u0648\u0686\u0646\u06CC: ${r.origin} \u0628\u0627\u06CC\u062F ${i}${r.minimum.toString()} ${a.unit} \u0648\u0644\u0631\u064A`:`\u0689\u06CC\u0631 \u06A9\u0648\u0686\u0646\u06CC: ${r.origin} \u0628\u0627\u06CC\u062F ${i}${r.minimum.toString()} \u0648\u064A`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F "${i.prefix}" \u0633\u0631\u0647 \u067E\u06CC\u0644 \u0634\u064A`:i.format==="ends_with"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F "${i.suffix}" \u0633\u0631\u0647 \u067E\u0627\u06CC \u062A\u0647 \u0648\u0631\u0633\u064A\u0696\u064A`:i.format==="includes"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F "${i.includes}" \u0648\u0644\u0631\u064A`:i.format==="regex"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F ${i.pattern} \u0633\u0631\u0647 \u0645\u0637\u0627\u0628\u0642\u062A \u0648\u0644\u0631\u064A`:`${n[i.format]??r.format} \u0646\u0627\u0633\u0645 \u062F\u06CC`}case"not_multiple_of":return`\u0646\u0627\u0633\u0645 \u0639\u062F\u062F: \u0628\u0627\u06CC\u062F \u062F ${r.divisor} \u0645\u0636\u0631\u0628 \u0648\u064A`;case"unrecognized_keys":return`\u0646\u0627\u0633\u0645 ${r.keys.length>1?"\u06A9\u0644\u06CC\u0689\u0648\u0646\u0647":"\u06A9\u0644\u06CC\u0689"}: ${b(r.keys,", ")}`;case"invalid_key":return`\u0646\u0627\u0633\u0645 \u06A9\u0644\u06CC\u0689 \u067E\u0647 ${r.origin} \u06A9\u06D0`;case"invalid_union":return"\u0646\u0627\u0633\u0645\u0647 \u0648\u0631\u0648\u062F\u064A";case"invalid_element":return`\u0646\u0627\u0633\u0645 \u0639\u0646\u0635\u0631 \u067E\u0647 ${r.origin} \u06A9\u06D0`;default:return"\u0646\u0627\u0633\u0645\u0647 \u0648\u0631\u0648\u062F\u064A"}}};function Zb(){return{localeError:R$()}}var S$=()=>{let e={string:{unit:"znak\xF3w",verb:"mie\u0107"},file:{unit:"bajt\xF3w",verb:"mie\u0107"},array:{unit:"element\xF3w",verb:"mie\u0107"},set:{unit:"element\xF3w",verb:"mie\u0107"}};function t(r){return e[r]??null}let n={regex:"wyra\u017Cenie",email:"adres email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i godzina w formacie ISO",date:"data w formacie ISO",time:"godzina w formacie ISO",duration:"czas trwania ISO",ipv4:"adres IPv4",ipv6:"adres IPv6",cidrv4:"zakres IPv4",cidrv6:"zakres IPv6",base64:"ci\u0105g znak\xF3w zakodowany w formacie base64",base64url:"ci\u0105g znak\xF3w zakodowany w formacie base64url",json_string:"ci\u0105g znak\xF3w w formacie JSON",e164:"liczba E.164",jwt:"JWT",template_literal:"wej\u015Bcie"},o={nan:"NaN",number:"liczba",array:"tablica"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano instanceof ${r.expected}, otrzymano ${s}`:`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano ${i}, otrzymano ${s}`}case"invalid_value":return r.values.length===1?`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano ${E(r.values[0])}`:`Nieprawid\u0142owa opcja: oczekiwano jednej z warto\u015Bci ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`Za du\u017Ca warto\u015B\u0107: oczekiwano, \u017Ce ${r.origin??"warto\u015B\u0107"} b\u0119dzie mie\u0107 ${i}${r.maximum.toString()} ${a.unit??"element\xF3w"}`:`Zbyt du\u017C(y/a/e): oczekiwano, \u017Ce ${r.origin??"warto\u015B\u0107"} b\u0119dzie wynosi\u0107 ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`Za ma\u0142a warto\u015B\u0107: oczekiwano, \u017Ce ${r.origin??"warto\u015B\u0107"} b\u0119dzie mie\u0107 ${i}${r.minimum.toString()} ${a.unit??"element\xF3w"}`:`Zbyt ma\u0142(y/a/e): oczekiwano, \u017Ce ${r.origin??"warto\u015B\u0107"} b\u0119dzie wynosi\u0107 ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi zaczyna\u0107 si\u0119 od "${i.prefix}"`:i.format==="ends_with"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi ko\u0144czy\u0107 si\u0119 na "${i.suffix}"`:i.format==="includes"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi zawiera\u0107 "${i.includes}"`:i.format==="regex"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi odpowiada\u0107 wzorcowi ${i.pattern}`:`Nieprawid\u0142ow(y/a/e) ${n[i.format]??r.format}`}case"not_multiple_of":return`Nieprawid\u0142owa liczba: musi by\u0107 wielokrotno\u015Bci\u0105 ${r.divisor}`;case"unrecognized_keys":return`Nierozpoznane klucze${r.keys.length>1?"s":""}: ${b(r.keys,", ")}`;case"invalid_key":return`Nieprawid\u0142owy klucz w ${r.origin}`;case"invalid_union":return"Nieprawid\u0142owe dane wej\u015Bciowe";case"invalid_element":return`Nieprawid\u0142owa warto\u015B\u0107 w ${r.origin}`;default:return"Nieprawid\u0142owe dane wej\u015Bciowe"}}};function Kb(){return{localeError:S$()}}var E$=()=>{let e={string:{unit:"caracteres",verb:"ter"},file:{unit:"bytes",verb:"ter"},array:{unit:"itens",verb:"ter"},set:{unit:"itens",verb:"ter"}};function t(r){return e[r]??null}let n={regex:"padr\xE3o",email:"endere\xE7o de e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e hora ISO",date:"data ISO",time:"hora ISO",duration:"dura\xE7\xE3o ISO",ipv4:"endere\xE7o IPv4",ipv6:"endere\xE7o IPv6",cidrv4:"faixa de IPv4",cidrv6:"faixa de IPv6",base64:"texto codificado em base64",base64url:"URL codificada em base64",json_string:"texto JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"},o={nan:"NaN",number:"n\xFAmero",null:"nulo"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Tipo inv\xE1lido: esperado instanceof ${r.expected}, recebido ${s}`:`Tipo inv\xE1lido: esperado ${i}, recebido ${s}`}case"invalid_value":return r.values.length===1?`Entrada inv\xE1lida: esperado ${E(r.values[0])}`:`Op\xE7\xE3o inv\xE1lida: esperada uma das ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`Muito grande: esperado que ${r.origin??"valor"} tivesse ${i}${r.maximum.toString()} ${a.unit??"elementos"}`:`Muito grande: esperado que ${r.origin??"valor"} fosse ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`Muito pequeno: esperado que ${r.origin} tivesse ${i}${r.minimum.toString()} ${a.unit}`:`Muito pequeno: esperado que ${r.origin} fosse ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Texto inv\xE1lido: deve come\xE7ar com "${i.prefix}"`:i.format==="ends_with"?`Texto inv\xE1lido: deve terminar com "${i.suffix}"`:i.format==="includes"?`Texto inv\xE1lido: deve incluir "${i.includes}"`:i.format==="regex"?`Texto inv\xE1lido: deve corresponder ao padr\xE3o ${i.pattern}`:`${n[i.format]??r.format} inv\xE1lido`}case"not_multiple_of":return`N\xFAmero inv\xE1lido: deve ser m\xFAltiplo de ${r.divisor}`;case"unrecognized_keys":return`Chave${r.keys.length>1?"s":""} desconhecida${r.keys.length>1?"s":""}: ${b(r.keys,", ")}`;case"invalid_key":return`Chave inv\xE1lida em ${r.origin}`;case"invalid_union":return"Entrada inv\xE1lida";case"invalid_element":return`Valor inv\xE1lido em ${r.origin}`;default:return"Campo inv\xE1lido"}}};function Wb(){return{localeError:E$()}}var _$=()=>{let e={string:{unit:"caractere",verb:"s\u0103 aib\u0103"},file:{unit:"octe\u021Bi",verb:"s\u0103 aib\u0103"},array:{unit:"elemente",verb:"s\u0103 aib\u0103"},set:{unit:"elemente",verb:"s\u0103 aib\u0103"},map:{unit:"intr\u0103ri",verb:"s\u0103 aib\u0103"}};function t(r){return e[r]??null}let n={regex:"intrare",email:"adres\u0103 de email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"dat\u0103 \u0219i or\u0103 ISO",date:"dat\u0103 ISO",time:"or\u0103 ISO",duration:"durat\u0103 ISO",ipv4:"adres\u0103 IPv4",ipv6:"adres\u0103 IPv6",mac:"adres\u0103 MAC",cidrv4:"interval IPv4",cidrv6:"interval IPv6",base64:"\u0219ir codat base64",base64url:"\u0219ir codat base64url",json_string:"\u0219ir JSON",e164:"num\u0103r E.164",jwt:"JWT",template_literal:"intrare"},o={nan:"NaN",string:"\u0219ir",number:"num\u0103r",boolean:"boolean",function:"func\u021Bie",array:"matrice",object:"obiect",undefined:"nedefinit",symbol:"simbol",bigint:"num\u0103r mare",void:"void",never:"never",map:"hart\u0103",set:"set"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return`Intrare invalid\u0103: a\u0219teptat ${i}, primit ${s}`}case"invalid_value":return r.values.length===1?`Intrare invalid\u0103: a\u0219teptat ${E(r.values[0])}`:`Op\u021Biune invalid\u0103: a\u0219teptat una dintre ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`Prea mare: a\u0219teptat ca ${r.origin??"valoarea"} ${a.verb} ${i}${r.maximum.toString()} ${a.unit??"elemente"}`:`Prea mare: a\u0219teptat ca ${r.origin??"valoarea"} s\u0103 fie ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`Prea mic: a\u0219teptat ca ${r.origin} ${a.verb} ${i}${r.minimum.toString()} ${a.unit}`:`Prea mic: a\u0219teptat ca ${r.origin} s\u0103 fie ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u0218ir invalid: trebuie s\u0103 \xEEnceap\u0103 cu "${i.prefix}"`:i.format==="ends_with"?`\u0218ir invalid: trebuie s\u0103 se termine cu "${i.suffix}"`:i.format==="includes"?`\u0218ir invalid: trebuie s\u0103 includ\u0103 "${i.includes}"`:i.format==="regex"?`\u0218ir invalid: trebuie s\u0103 se potriveasc\u0103 cu modelul ${i.pattern}`:`Format invalid: ${n[i.format]??r.format}`}case"not_multiple_of":return`Num\u0103r invalid: trebuie s\u0103 fie multiplu de ${r.divisor}`;case"unrecognized_keys":return`Chei nerecunoscute: ${b(r.keys,", ")}`;case"invalid_key":return`Cheie invalid\u0103 \xEEn ${r.origin}`;case"invalid_union":return"Intrare invalid\u0103";case"invalid_element":return`Valoare invalid\u0103 \xEEn ${r.origin}`;default:return"Intrare invalid\u0103"}}};function Jb(){return{localeError:_$()}}function Gb(e,t,n,o){let r=Math.abs(e),i=r%10,a=r%100;return a>=11&&a<=19?o:i===1?t:i>=2&&i<=4?n:o}var x$=()=>{let e={string:{unit:{one:"\u0441\u0438\u043C\u0432\u043E\u043B",few:"\u0441\u0438\u043C\u0432\u043E\u043B\u0430",many:"\u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"},file:{unit:{one:"\u0431\u0430\u0439\u0442",few:"\u0431\u0430\u0439\u0442\u0430",many:"\u0431\u0430\u0439\u0442"},verb:"\u0438\u043C\u0435\u0442\u044C"},array:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"},set:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"}};function t(r){return e[r]??null}let n={regex:"\u0432\u0432\u043E\u0434",email:"email \u0430\u0434\u0440\u0435\u0441",url:"URL",emoji:"\u044D\u043C\u043E\u0434\u0437\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0430 \u0438 \u0432\u0440\u0435\u043C\u044F",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0432\u0440\u0435\u043C\u044F",duration:"ISO \u0434\u043B\u0438\u0442\u0435\u043B\u044C\u043D\u043E\u0441\u0442\u044C",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441",cidrv4:"IPv4 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",base64:"\u0441\u0442\u0440\u043E\u043A\u0430 \u0432 \u0444\u043E\u0440\u043C\u0430\u0442\u0435 base64",base64url:"\u0441\u0442\u0440\u043E\u043A\u0430 \u0432 \u0444\u043E\u0440\u043C\u0430\u0442\u0435 base64url",json_string:"JSON \u0441\u0442\u0440\u043E\u043A\u0430",e164:"\u043D\u043E\u043C\u0435\u0440 E.164",jwt:"JWT",template_literal:"\u0432\u0432\u043E\u0434"},o={nan:"NaN",number:"\u0447\u0438\u0441\u043B\u043E",array:"\u043C\u0430\u0441\u0441\u0438\u0432"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C instanceof ${r.expected}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u043E ${s}`:`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C ${i}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u043E ${s}`}case"invalid_value":return r.values.length===1?`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C ${E(r.values[0])}`:`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0430\u0440\u0438\u0430\u043D\u0442: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C \u043E\u0434\u043D\u043E \u0438\u0437 ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);if(a){let s=Number(r.maximum),d=Gb(s,a.unit.one,a.unit.few,a.unit.many);return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u0431\u043E\u043B\u044C\u0448\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${r.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435"} \u0431\u0443\u0434\u0435\u0442 \u0438\u043C\u0435\u0442\u044C ${i}${r.maximum.toString()} ${d}`}return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u0431\u043E\u043B\u044C\u0448\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${r.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435"} \u0431\u0443\u0434\u0435\u0442 ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);if(a){let s=Number(r.minimum),d=Gb(s,a.unit.one,a.unit.few,a.unit.many);return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u043C\u0430\u043B\u0435\u043D\u044C\u043A\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${r.origin} \u0431\u0443\u0434\u0435\u0442 \u0438\u043C\u0435\u0442\u044C ${i}${r.minimum.toString()} ${d}`}return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u043C\u0430\u043B\u0435\u043D\u044C\u043A\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${r.origin} \u0431\u0443\u0434\u0435\u0442 ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u043D\u0430\u0447\u0438\u043D\u0430\u0442\u044C\u0441\u044F \u0441 "${i.prefix}"`:i.format==="ends_with"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0437\u0430\u043A\u0430\u043D\u0447\u0438\u0432\u0430\u0442\u044C\u0441\u044F \u043D\u0430 "${i.suffix}"`:i.format==="includes"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0441\u043E\u0434\u0435\u0440\u0436\u0430\u0442\u044C "${i.includes}"`:i.format==="regex"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043E\u0432\u0430\u0442\u044C \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${i.pattern}`:`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 ${n[i.format]??r.format}`}case"not_multiple_of":return`\u041D\u0435\u0432\u0435\u0440\u043D\u043E\u0435 \u0447\u0438\u0441\u043B\u043E: \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u043A\u0440\u0430\u0442\u043D\u044B\u043C ${r.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0441\u043F\u043E\u0437\u043D\u0430\u043D\u043D${r.keys.length>1?"\u044B\u0435":"\u044B\u0439"} \u043A\u043B\u044E\u0447${r.keys.length>1?"\u0438":""}: ${b(r.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u043A\u043B\u044E\u0447 \u0432 ${r.origin}`;case"invalid_union":return"\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0435 \u0432\u0445\u043E\u0434\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435";case"invalid_element":return`\u041D\u0435\u0432\u0435\u0440\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0432 ${r.origin}`;default:return"\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0435 \u0432\u0445\u043E\u0434\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435"}}};function Xb(){return{localeError:x$()}}var k$=()=>{let e={string:{unit:"znakov",verb:"imeti"},file:{unit:"bajtov",verb:"imeti"},array:{unit:"elementov",verb:"imeti"},set:{unit:"elementov",verb:"imeti"}};function t(r){return e[r]??null}let n={regex:"vnos",email:"e-po\u0161tni naslov",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum in \u010Das",date:"ISO datum",time:"ISO \u010Das",duration:"ISO trajanje",ipv4:"IPv4 naslov",ipv6:"IPv6 naslov",cidrv4:"obseg IPv4",cidrv6:"obseg IPv6",base64:"base64 kodiran niz",base64url:"base64url kodiran niz",json_string:"JSON niz",e164:"E.164 \u0161tevilka",jwt:"JWT",template_literal:"vnos"},o={nan:"NaN",number:"\u0161tevilo",array:"tabela"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Neveljaven vnos: pri\u010Dakovano instanceof ${r.expected}, prejeto ${s}`:`Neveljaven vnos: pri\u010Dakovano ${i}, prejeto ${s}`}case"invalid_value":return r.values.length===1?`Neveljaven vnos: pri\u010Dakovano ${E(r.values[0])}`:`Neveljavna mo\u017Enost: pri\u010Dakovano eno izmed ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`Preveliko: pri\u010Dakovano, da bo ${r.origin??"vrednost"} imelo ${i}${r.maximum.toString()} ${a.unit??"elementov"}`:`Preveliko: pri\u010Dakovano, da bo ${r.origin??"vrednost"} ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`Premajhno: pri\u010Dakovano, da bo ${r.origin} imelo ${i}${r.minimum.toString()} ${a.unit}`:`Premajhno: pri\u010Dakovano, da bo ${r.origin} ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Neveljaven niz: mora se za\u010Deti z "${i.prefix}"`:i.format==="ends_with"?`Neveljaven niz: mora se kon\u010Dati z "${i.suffix}"`:i.format==="includes"?`Neveljaven niz: mora vsebovati "${i.includes}"`:i.format==="regex"?`Neveljaven niz: mora ustrezati vzorcu ${i.pattern}`:`Neveljaven ${n[i.format]??r.format}`}case"not_multiple_of":return`Neveljavno \u0161tevilo: mora biti ve\u010Dkratnik ${r.divisor}`;case"unrecognized_keys":return`Neprepoznan${r.keys.length>1?"i klju\u010Di":" klju\u010D"}: ${b(r.keys,", ")}`;case"invalid_key":return`Neveljaven klju\u010D v ${r.origin}`;case"invalid_union":return"Neveljaven vnos";case"invalid_element":return`Neveljavna vrednost v ${r.origin}`;default:return"Neveljaven vnos"}}};function Yb(){return{localeError:k$()}}var A$=()=>{let e={string:{unit:"tecken",verb:"att ha"},file:{unit:"bytes",verb:"att ha"},array:{unit:"objekt",verb:"att inneh\xE5lla"},set:{unit:"objekt",verb:"att inneh\xE5lla"}};function t(r){return e[r]??null}let n={regex:"regulj\xE4rt uttryck",email:"e-postadress",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datum och tid",date:"ISO-datum",time:"ISO-tid",duration:"ISO-varaktighet",ipv4:"IPv4-intervall",ipv6:"IPv6-intervall",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodad str\xE4ng",base64url:"base64url-kodad str\xE4ng",json_string:"JSON-str\xE4ng",e164:"E.164-nummer",jwt:"JWT",template_literal:"mall-literal"},o={nan:"NaN",number:"antal",array:"lista"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Ogiltig inmatning: f\xF6rv\xE4ntat instanceof ${r.expected}, fick ${s}`:`Ogiltig inmatning: f\xF6rv\xE4ntat ${i}, fick ${s}`}case"invalid_value":return r.values.length===1?`Ogiltig inmatning: f\xF6rv\xE4ntat ${E(r.values[0])}`:`Ogiltigt val: f\xF6rv\xE4ntade en av ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`F\xF6r stor(t): f\xF6rv\xE4ntade ${r.origin??"v\xE4rdet"} att ha ${i}${r.maximum.toString()} ${a.unit??"element"}`:`F\xF6r stor(t): f\xF6rv\xE4ntat ${r.origin??"v\xE4rdet"} att ha ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`F\xF6r lite(t): f\xF6rv\xE4ntade ${r.origin??"v\xE4rdet"} att ha ${i}${r.minimum.toString()} ${a.unit}`:`F\xF6r lite(t): f\xF6rv\xE4ntade ${r.origin??"v\xE4rdet"} att ha ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Ogiltig str\xE4ng: m\xE5ste b\xF6rja med "${i.prefix}"`:i.format==="ends_with"?`Ogiltig str\xE4ng: m\xE5ste sluta med "${i.suffix}"`:i.format==="includes"?`Ogiltig str\xE4ng: m\xE5ste inneh\xE5lla "${i.includes}"`:i.format==="regex"?`Ogiltig str\xE4ng: m\xE5ste matcha m\xF6nstret "${i.pattern}"`:`Ogiltig(t) ${n[i.format]??r.format}`}case"not_multiple_of":return`Ogiltigt tal: m\xE5ste vara en multipel av ${r.divisor}`;case"unrecognized_keys":return`${r.keys.length>1?"Ok\xE4nda nycklar":"Ok\xE4nd nyckel"}: ${b(r.keys,", ")}`;case"invalid_key":return`Ogiltig nyckel i ${r.origin??"v\xE4rdet"}`;case"invalid_union":return"Ogiltig input";case"invalid_element":return`Ogiltigt v\xE4rde i ${r.origin??"v\xE4rdet"}`;default:return"Ogiltig input"}}};function Qb(){return{localeError:A$()}}var T$=()=>{let e={string:{unit:"\u0B8E\u0BB4\u0BC1\u0BA4\u0BCD\u0BA4\u0BC1\u0B95\u0BCD\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},file:{unit:"\u0BAA\u0BC8\u0B9F\u0BCD\u0B9F\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},array:{unit:"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},set:{unit:"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"}};function t(r){return e[r]??null}let n={regex:"\u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1",email:"\u0BAE\u0BBF\u0BA9\u0BCD\u0BA9\u0B9E\u0BCD\u0B9A\u0BB2\u0BCD \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0BA4\u0BC7\u0BA4\u0BBF \u0BA8\u0BC7\u0BB0\u0BAE\u0BCD",date:"ISO \u0BA4\u0BC7\u0BA4\u0BBF",time:"ISO \u0BA8\u0BC7\u0BB0\u0BAE\u0BCD",duration:"ISO \u0B95\u0BBE\u0BB2 \u0B85\u0BB3\u0BB5\u0BC1",ipv4:"IPv4 \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",ipv6:"IPv6 \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",cidrv4:"IPv4 \u0BB5\u0BB0\u0BAE\u0BCD\u0BAA\u0BC1",cidrv6:"IPv6 \u0BB5\u0BB0\u0BAE\u0BCD\u0BAA\u0BC1",base64:"base64-encoded \u0B9A\u0BB0\u0BAE\u0BCD",base64url:"base64url-encoded \u0B9A\u0BB0\u0BAE\u0BCD",json_string:"JSON \u0B9A\u0BB0\u0BAE\u0BCD",e164:"E.164 \u0B8E\u0BA3\u0BCD",jwt:"JWT",template_literal:"input"},o={nan:"NaN",number:"\u0B8E\u0BA3\u0BCD",array:"\u0B85\u0BA3\u0BBF",null:"\u0BB5\u0BC6\u0BB1\u0BC1\u0BAE\u0BC8"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 instanceof ${r.expected}, \u0BAA\u0BC6\u0BB1\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${s}`:`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${i}, \u0BAA\u0BC6\u0BB1\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${s}`}case"invalid_value":return r.values.length===1?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${E(r.values[0])}`:`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BB5\u0BBF\u0BB0\u0BC1\u0BAA\u0BCD\u0BAA\u0BAE\u0BCD: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${b(r.values,"|")} \u0B87\u0BB2\u0BCD \u0B92\u0BA9\u0BCD\u0BB1\u0BC1`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`\u0BAE\u0BBF\u0B95 \u0BAA\u0BC6\u0BB0\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${r.origin??"\u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1"} ${i}${r.maximum.toString()} ${a.unit??"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD"} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:`\u0BAE\u0BBF\u0B95 \u0BAA\u0BC6\u0BB0\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${r.origin??"\u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1"} ${i}${r.maximum.toString()} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`\u0BAE\u0BBF\u0B95\u0B9A\u0BCD \u0B9A\u0BBF\u0BB1\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${r.origin} ${i}${r.minimum.toString()} ${a.unit} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:`\u0BAE\u0BBF\u0B95\u0B9A\u0BCD \u0B9A\u0BBF\u0BB1\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${r.origin} ${i}${r.minimum.toString()} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${i.prefix}" \u0B87\u0BB2\u0BCD \u0BA4\u0BCA\u0B9F\u0B99\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:i.format==="ends_with"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${i.suffix}" \u0B87\u0BB2\u0BCD \u0BAE\u0BC1\u0B9F\u0BBF\u0BB5\u0B9F\u0BC8\u0BAF \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:i.format==="includes"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${i.includes}" \u0B90 \u0B89\u0BB3\u0BCD\u0BB3\u0B9F\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:i.format==="regex"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: ${i.pattern} \u0BAE\u0BC1\u0BB1\u0BC8\u0BAA\u0BBE\u0B9F\u0BCD\u0B9F\u0BC1\u0B9F\u0BA9\u0BCD \u0BAA\u0BCA\u0BB0\u0BC1\u0BA8\u0BCD\u0BA4 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 ${n[i.format]??r.format}`}case"not_multiple_of":return`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B8E\u0BA3\u0BCD: ${r.divisor} \u0B87\u0BA9\u0BCD \u0BAA\u0BB2\u0BAE\u0BBE\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`;case"unrecognized_keys":return`\u0B85\u0B9F\u0BC8\u0BAF\u0BBE\u0BB3\u0BAE\u0BCD \u0BA4\u0BC6\u0BB0\u0BBF\u0BAF\u0BBE\u0BA4 \u0BB5\u0BBF\u0B9A\u0BC8${r.keys.length>1?"\u0B95\u0BB3\u0BCD":""}: ${b(r.keys,", ")}`;case"invalid_key":return`${r.origin} \u0B87\u0BB2\u0BCD \u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BB5\u0BBF\u0B9A\u0BC8`;case"invalid_union":return"\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1";case"invalid_element":return`${r.origin} \u0B87\u0BB2\u0BCD \u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1`;default:return"\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1"}}};function ew(){return{localeError:T$()}}var $$=()=>{let e={string:{unit:"\u0E15\u0E31\u0E27\u0E2D\u0E31\u0E01\u0E29\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},file:{unit:"\u0E44\u0E1A\u0E15\u0E4C",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},array:{unit:"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},set:{unit:"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"}};function t(r){return e[r]??null}let n={regex:"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19",email:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48\u0E2D\u0E35\u0E40\u0E21\u0E25",url:"URL",emoji:"\u0E2D\u0E34\u0E42\u0E21\u0E08\u0E34",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",date:"\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48\u0E41\u0E1A\u0E1A ISO",time:"\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",duration:"\u0E0A\u0E48\u0E27\u0E07\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",ipv4:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 IPv4",ipv6:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 IPv6",cidrv4:"\u0E0A\u0E48\u0E27\u0E07 IP \u0E41\u0E1A\u0E1A IPv4",cidrv6:"\u0E0A\u0E48\u0E27\u0E07 IP \u0E41\u0E1A\u0E1A IPv6",base64:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A Base64",base64url:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A Base64 \u0E2A\u0E33\u0E2B\u0E23\u0E31\u0E1A URL",json_string:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A JSON",e164:"\u0E40\u0E1A\u0E2D\u0E23\u0E4C\u0E42\u0E17\u0E23\u0E28\u0E31\u0E1E\u0E17\u0E4C\u0E23\u0E30\u0E2B\u0E27\u0E48\u0E32\u0E07\u0E1B\u0E23\u0E30\u0E40\u0E17\u0E28 (E.164)",jwt:"\u0E42\u0E17\u0E40\u0E04\u0E19 JWT",template_literal:"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19"},o={nan:"NaN",number:"\u0E15\u0E31\u0E27\u0E40\u0E25\u0E02",array:"\u0E2D\u0E32\u0E23\u0E4C\u0E40\u0E23\u0E22\u0E4C (Array)",null:"\u0E44\u0E21\u0E48\u0E21\u0E35\u0E04\u0E48\u0E32 (null)"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 instanceof ${r.expected} \u0E41\u0E15\u0E48\u0E44\u0E14\u0E49\u0E23\u0E31\u0E1A ${s}`:`\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 ${i} \u0E41\u0E15\u0E48\u0E44\u0E14\u0E49\u0E23\u0E31\u0E1A ${s}`}case"invalid_value":return r.values.length===1?`\u0E04\u0E48\u0E32\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 ${E(r.values[0])}`:`\u0E15\u0E31\u0E27\u0E40\u0E25\u0E37\u0E2D\u0E01\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19\u0E2B\u0E19\u0E36\u0E48\u0E07\u0E43\u0E19 ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"\u0E44\u0E21\u0E48\u0E40\u0E01\u0E34\u0E19":"\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32",a=t(r.origin);return a?`\u0E40\u0E01\u0E34\u0E19\u0E01\u0E33\u0E2B\u0E19\u0E14: ${r.origin??"\u0E04\u0E48\u0E32"} \u0E04\u0E27\u0E23\u0E21\u0E35${i} ${r.maximum.toString()} ${a.unit??"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23"}`:`\u0E40\u0E01\u0E34\u0E19\u0E01\u0E33\u0E2B\u0E19\u0E14: ${r.origin??"\u0E04\u0E48\u0E32"} \u0E04\u0E27\u0E23\u0E21\u0E35${i} ${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?"\u0E2D\u0E22\u0E48\u0E32\u0E07\u0E19\u0E49\u0E2D\u0E22":"\u0E21\u0E32\u0E01\u0E01\u0E27\u0E48\u0E32",a=t(r.origin);return a?`\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32\u0E01\u0E33\u0E2B\u0E19\u0E14: ${r.origin} \u0E04\u0E27\u0E23\u0E21\u0E35${i} ${r.minimum.toString()} ${a.unit}`:`\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32\u0E01\u0E33\u0E2B\u0E19\u0E14: ${r.origin} \u0E04\u0E27\u0E23\u0E21\u0E35${i} ${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E02\u0E36\u0E49\u0E19\u0E15\u0E49\u0E19\u0E14\u0E49\u0E27\u0E22 "${i.prefix}"`:i.format==="ends_with"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E25\u0E07\u0E17\u0E49\u0E32\u0E22\u0E14\u0E49\u0E27\u0E22 "${i.suffix}"`:i.format==="includes"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E21\u0E35 "${i.includes}" \u0E2D\u0E22\u0E39\u0E48\u0E43\u0E19\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21`:i.format==="regex"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E15\u0E49\u0E2D\u0E07\u0E15\u0E23\u0E07\u0E01\u0E31\u0E1A\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E17\u0E35\u0E48\u0E01\u0E33\u0E2B\u0E19\u0E14 ${i.pattern}`:`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: ${n[i.format]??r.format}`}case"not_multiple_of":return`\u0E15\u0E31\u0E27\u0E40\u0E25\u0E02\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E15\u0E49\u0E2D\u0E07\u0E40\u0E1B\u0E47\u0E19\u0E08\u0E33\u0E19\u0E27\u0E19\u0E17\u0E35\u0E48\u0E2B\u0E32\u0E23\u0E14\u0E49\u0E27\u0E22 ${r.divisor} \u0E44\u0E14\u0E49\u0E25\u0E07\u0E15\u0E31\u0E27`;case"unrecognized_keys":return`\u0E1E\u0E1A\u0E04\u0E35\u0E22\u0E4C\u0E17\u0E35\u0E48\u0E44\u0E21\u0E48\u0E23\u0E39\u0E49\u0E08\u0E31\u0E01: ${b(r.keys,", ")}`;case"invalid_key":return`\u0E04\u0E35\u0E22\u0E4C\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07\u0E43\u0E19 ${r.origin}`;case"invalid_union":return"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E44\u0E21\u0E48\u0E15\u0E23\u0E07\u0E01\u0E31\u0E1A\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E22\u0E39\u0E40\u0E19\u0E35\u0E22\u0E19\u0E17\u0E35\u0E48\u0E01\u0E33\u0E2B\u0E19\u0E14\u0E44\u0E27\u0E49";case"invalid_element":return`\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07\u0E43\u0E19 ${r.origin}`;default:return"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07"}}};function tw(){return{localeError:$$()}}var C$=()=>{let e={string:{unit:"karakter",verb:"olmal\u0131"},file:{unit:"bayt",verb:"olmal\u0131"},array:{unit:"\xF6\u011Fe",verb:"olmal\u0131"},set:{unit:"\xF6\u011Fe",verb:"olmal\u0131"}};function t(r){return e[r]??null}let n={regex:"girdi",email:"e-posta adresi",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO tarih ve saat",date:"ISO tarih",time:"ISO saat",duration:"ISO s\xFCre",ipv4:"IPv4 adresi",ipv6:"IPv6 adresi",cidrv4:"IPv4 aral\u0131\u011F\u0131",cidrv6:"IPv6 aral\u0131\u011F\u0131",base64:"base64 ile \u015Fifrelenmi\u015F metin",base64url:"base64url ile \u015Fifrelenmi\u015F metin",json_string:"JSON dizesi",e164:"E.164 say\u0131s\u0131",jwt:"JWT",template_literal:"\u015Eablon dizesi"},o={nan:"NaN"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Ge\xE7ersiz de\u011Fer: beklenen instanceof ${r.expected}, al\u0131nan ${s}`:`Ge\xE7ersiz de\u011Fer: beklenen ${i}, al\u0131nan ${s}`}case"invalid_value":return r.values.length===1?`Ge\xE7ersiz de\u011Fer: beklenen ${E(r.values[0])}`:`Ge\xE7ersiz se\xE7enek: a\u015Fa\u011F\u0131dakilerden biri olmal\u0131: ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`\xC7ok b\xFCy\xFCk: beklenen ${r.origin??"de\u011Fer"} ${i}${r.maximum.toString()} ${a.unit??"\xF6\u011Fe"}`:`\xC7ok b\xFCy\xFCk: beklenen ${r.origin??"de\u011Fer"} ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`\xC7ok k\xFC\xE7\xFCk: beklenen ${r.origin} ${i}${r.minimum.toString()} ${a.unit}`:`\xC7ok k\xFC\xE7\xFCk: beklenen ${r.origin} ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Ge\xE7ersiz metin: "${i.prefix}" ile ba\u015Flamal\u0131`:i.format==="ends_with"?`Ge\xE7ersiz metin: "${i.suffix}" ile bitmeli`:i.format==="includes"?`Ge\xE7ersiz metin: "${i.includes}" i\xE7ermeli`:i.format==="regex"?`Ge\xE7ersiz metin: ${i.pattern} desenine uymal\u0131`:`Ge\xE7ersiz ${n[i.format]??r.format}`}case"not_multiple_of":return`Ge\xE7ersiz say\u0131: ${r.divisor} ile tam b\xF6l\xFCnebilmeli`;case"unrecognized_keys":return`Tan\u0131nmayan anahtar${r.keys.length>1?"lar":""}: ${b(r.keys,", ")}`;case"invalid_key":return`${r.origin} i\xE7inde ge\xE7ersiz anahtar`;case"invalid_union":return"Ge\xE7ersiz de\u011Fer";case"invalid_element":return`${r.origin} i\xE7inde ge\xE7ersiz de\u011Fer`;default:return"Ge\xE7ersiz de\u011Fer"}}};function nw(){return{localeError:C$()}}var O$=()=>{let e={string:{unit:"\u0441\u0438\u043C\u0432\u043E\u043B\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},file:{unit:"\u0431\u0430\u0439\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},array:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},set:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"}};function t(r){return e[r]??null}let n={regex:"\u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456",email:"\u0430\u0434\u0440\u0435\u0441\u0430 \u0435\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u043E\u0457 \u043F\u043E\u0448\u0442\u0438",url:"URL",emoji:"\u0435\u043C\u043E\u0434\u0437\u0456",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0434\u0430\u0442\u0430 \u0442\u0430 \u0447\u0430\u0441 ISO",date:"\u0434\u0430\u0442\u0430 ISO",time:"\u0447\u0430\u0441 ISO",duration:"\u0442\u0440\u0438\u0432\u0430\u043B\u0456\u0441\u0442\u044C ISO",ipv4:"\u0430\u0434\u0440\u0435\u0441\u0430 IPv4",ipv6:"\u0430\u0434\u0440\u0435\u0441\u0430 IPv6",cidrv4:"\u0434\u0456\u0430\u043F\u0430\u0437\u043E\u043D IPv4",cidrv6:"\u0434\u0456\u0430\u043F\u0430\u0437\u043E\u043D IPv6",base64:"\u0440\u044F\u0434\u043E\u043A \u0443 \u043A\u043E\u0434\u0443\u0432\u0430\u043D\u043D\u0456 base64",base64url:"\u0440\u044F\u0434\u043E\u043A \u0443 \u043A\u043E\u0434\u0443\u0432\u0430\u043D\u043D\u0456 base64url",json_string:"\u0440\u044F\u0434\u043E\u043A JSON",e164:"\u043D\u043E\u043C\u0435\u0440 E.164",jwt:"JWT",template_literal:"\u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456"},o={nan:"NaN",number:"\u0447\u0438\u0441\u043B\u043E",array:"\u043C\u0430\u0441\u0438\u0432"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F instanceof ${r.expected}, \u043E\u0442\u0440\u0438\u043C\u0430\u043D\u043E ${s}`:`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F ${i}, \u043E\u0442\u0440\u0438\u043C\u0430\u043D\u043E ${s}`}case"invalid_value":return r.values.length===1?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F ${E(r.values[0])}`:`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0430 \u043E\u043F\u0446\u0456\u044F: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F \u043E\u0434\u043D\u0435 \u0437 ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u0432\u0435\u043B\u0438\u043A\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${r.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F"} ${a.verb} ${i}${r.maximum.toString()} ${a.unit??"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432"}`:`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u0432\u0435\u043B\u0438\u043A\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${r.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F"} \u0431\u0443\u0434\u0435 ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u043C\u0430\u043B\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${r.origin} ${a.verb} ${i}${r.minimum.toString()} ${a.unit}`:`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u043C\u0430\u043B\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${r.origin} \u0431\u0443\u0434\u0435 ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u043F\u043E\u0447\u0438\u043D\u0430\u0442\u0438\u0441\u044F \u0437 "${i.prefix}"`:i.format==="ends_with"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u0437\u0430\u043A\u0456\u043D\u0447\u0443\u0432\u0430\u0442\u0438\u0441\u044F \u043D\u0430 "${i.suffix}"`:i.format==="includes"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u043C\u0456\u0441\u0442\u0438\u0442\u0438 "${i.includes}"`:i.format==="regex"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u0432\u0456\u0434\u043F\u043E\u0432\u0456\u0434\u0430\u0442\u0438 \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${i.pattern}`:`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 ${n[i.format]??r.format}`}case"not_multiple_of":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0435 \u0447\u0438\u0441\u043B\u043E: \u043F\u043E\u0432\u0438\u043D\u043D\u043E \u0431\u0443\u0442\u0438 \u043A\u0440\u0430\u0442\u043D\u0438\u043C ${r.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u043E\u0437\u043F\u0456\u0437\u043D\u0430\u043D\u0438\u0439 \u043A\u043B\u044E\u0447${r.keys.length>1?"\u0456":""}: ${b(r.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u043A\u043B\u044E\u0447 \u0443 ${r.origin}`;case"invalid_union":return"\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456";case"invalid_element":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F \u0443 ${r.origin}`;default:return"\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456"}}};function Is(){return{localeError:O$()}}function rw(){return Is()}var P$=()=>{let e={string:{unit:"\u062D\u0631\u0648\u0641",verb:"\u06C1\u0648\u0646\u0627"},file:{unit:"\u0628\u0627\u0626\u0679\u0633",verb:"\u06C1\u0648\u0646\u0627"},array:{unit:"\u0622\u0626\u0679\u0645\u0632",verb:"\u06C1\u0648\u0646\u0627"},set:{unit:"\u0622\u0626\u0679\u0645\u0632",verb:"\u06C1\u0648\u0646\u0627"}};function t(r){return e[r]??null}let n={regex:"\u0627\u0646 \u067E\u0679",email:"\u0627\u06CC \u0645\u06CC\u0644 \u0627\u06CC\u0688\u0631\u06CC\u0633",url:"\u06CC\u0648 \u0622\u0631 \u0627\u06CC\u0644",emoji:"\u0627\u06CC\u0645\u0648\u062C\u06CC",uuid:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",uuidv4:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC \u0648\u06CC 4",uuidv6:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC \u0648\u06CC 6",nanoid:"\u0646\u06CC\u0646\u0648 \u0622\u0626\u06CC \u0688\u06CC",guid:"\u062C\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",cuid:"\u0633\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",cuid2:"\u0633\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC 2",ulid:"\u06CC\u0648 \u0627\u06CC\u0644 \u0622\u0626\u06CC \u0688\u06CC",xid:"\u0627\u06CC\u06A9\u0633 \u0622\u0626\u06CC \u0688\u06CC",ksuid:"\u06A9\u06D2 \u0627\u06CC\u0633 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",datetime:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0688\u06CC\u0679 \u0679\u0627\u0626\u0645",date:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u062A\u0627\u0631\u06CC\u062E",time:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0648\u0642\u062A",duration:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0645\u062F\u062A",ipv4:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 4 \u0627\u06CC\u0688\u0631\u06CC\u0633",ipv6:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 6 \u0627\u06CC\u0688\u0631\u06CC\u0633",cidrv4:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 4 \u0631\u06CC\u0646\u062C",cidrv6:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 6 \u0631\u06CC\u0646\u062C",base64:"\u0628\u06CC\u0633 64 \u0627\u0646 \u06A9\u0648\u0688\u0688 \u0633\u0679\u0631\u0646\u06AF",base64url:"\u0628\u06CC\u0633 64 \u06CC\u0648 \u0622\u0631 \u0627\u06CC\u0644 \u0627\u0646 \u06A9\u0648\u0688\u0688 \u0633\u0679\u0631\u0646\u06AF",json_string:"\u062C\u06D2 \u0627\u06CC\u0633 \u0627\u0648 \u0627\u06CC\u0646 \u0633\u0679\u0631\u0646\u06AF",e164:"\u0627\u06CC 164 \u0646\u0645\u0628\u0631",jwt:"\u062C\u06D2 \u0688\u0628\u0644\u06CC\u0648 \u0679\u06CC",template_literal:"\u0627\u0646 \u067E\u0679"},o={nan:"NaN",number:"\u0646\u0645\u0628\u0631",array:"\u0622\u0631\u06D2",null:"\u0646\u0644"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: instanceof ${r.expected} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627\u060C ${s} \u0645\u0648\u0635\u0648\u0644 \u06C1\u0648\u0627`:`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: ${i} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627\u060C ${s} \u0645\u0648\u0635\u0648\u0644 \u06C1\u0648\u0627`}case"invalid_value":return r.values.length===1?`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: ${E(r.values[0])} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`:`\u063A\u0644\u0637 \u0622\u067E\u0634\u0646: ${b(r.values,"|")} \u0645\u06CC\u06BA \u0633\u06D2 \u0627\u06CC\u06A9 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`\u0628\u06C1\u062A \u0628\u0691\u0627: ${r.origin??"\u0648\u06CC\u0644\u06CC\u0648"} \u06A9\u06D2 ${i}${r.maximum.toString()} ${a.unit??"\u0639\u0646\u0627\u0635\u0631"} \u06C1\u0648\u0646\u06D2 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u06D2`:`\u0628\u06C1\u062A \u0628\u0691\u0627: ${r.origin??"\u0648\u06CC\u0644\u06CC\u0648"} \u06A9\u0627 ${i}${r.maximum.toString()} \u06C1\u0648\u0646\u0627 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`\u0628\u06C1\u062A \u0686\u06BE\u0648\u0679\u0627: ${r.origin} \u06A9\u06D2 ${i}${r.minimum.toString()} ${a.unit} \u06C1\u0648\u0646\u06D2 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u06D2`:`\u0628\u06C1\u062A \u0686\u06BE\u0648\u0679\u0627: ${r.origin} \u06A9\u0627 ${i}${r.minimum.toString()} \u06C1\u0648\u0646\u0627 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${i.prefix}" \u0633\u06D2 \u0634\u0631\u0648\u0639 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:i.format==="ends_with"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${i.suffix}" \u067E\u0631 \u062E\u062A\u0645 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:i.format==="includes"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${i.includes}" \u0634\u0627\u0645\u0644 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:i.format==="regex"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: \u067E\u06CC\u0679\u0631\u0646 ${i.pattern} \u0633\u06D2 \u0645\u06CC\u0686 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:`\u063A\u0644\u0637 ${n[i.format]??r.format}`}case"not_multiple_of":return`\u063A\u0644\u0637 \u0646\u0645\u0628\u0631: ${r.divisor} \u06A9\u0627 \u0645\u0636\u0627\u0639\u0641 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`;case"unrecognized_keys":return`\u063A\u06CC\u0631 \u062A\u0633\u0644\u06CC\u0645 \u0634\u062F\u06C1 \u06A9\u06CC${r.keys.length>1?"\u0632":""}: ${b(r.keys,"\u060C ")}`;case"invalid_key":return`${r.origin} \u0645\u06CC\u06BA \u063A\u0644\u0637 \u06A9\u06CC`;case"invalid_union":return"\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679";case"invalid_element":return`${r.origin} \u0645\u06CC\u06BA \u063A\u0644\u0637 \u0648\u06CC\u0644\u06CC\u0648`;default:return"\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679"}}};function ow(){return{localeError:P$()}}var N$=()=>{let e={string:{unit:"belgi",verb:"bo\u2018lishi kerak"},file:{unit:"bayt",verb:"bo\u2018lishi kerak"},array:{unit:"element",verb:"bo\u2018lishi kerak"},set:{unit:"element",verb:"bo\u2018lishi kerak"},map:{unit:"yozuv",verb:"bo\u2018lishi kerak"}};function t(r){return e[r]??null}let n={regex:"kirish",email:"elektron pochta manzili",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO sana va vaqti",date:"ISO sana",time:"ISO vaqt",duration:"ISO davomiylik",ipv4:"IPv4 manzil",ipv6:"IPv6 manzil",mac:"MAC manzil",cidrv4:"IPv4 diapazon",cidrv6:"IPv6 diapazon",base64:"base64 kodlangan satr",base64url:"base64url kodlangan satr",json_string:"JSON satr",e164:"E.164 raqam",jwt:"JWT",template_literal:"kirish"},o={nan:"NaN",number:"raqam",array:"massiv"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`Noto\u2018g\u2018ri kirish: kutilgan instanceof ${r.expected}, qabul qilingan ${s}`:`Noto\u2018g\u2018ri kirish: kutilgan ${i}, qabul qilingan ${s}`}case"invalid_value":return r.values.length===1?`Noto\u2018g\u2018ri kirish: kutilgan ${E(r.values[0])}`:`Noto\u2018g\u2018ri variant: quyidagilardan biri kutilgan ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`Juda katta: kutilgan ${r.origin??"qiymat"} ${i}${r.maximum.toString()} ${a.unit} ${a.verb}`:`Juda katta: kutilgan ${r.origin??"qiymat"} ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`Juda kichik: kutilgan ${r.origin} ${i}${r.minimum.toString()} ${a.unit} ${a.verb}`:`Juda kichik: kutilgan ${r.origin} ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Noto\u2018g\u2018ri satr: "${i.prefix}" bilan boshlanishi kerak`:i.format==="ends_with"?`Noto\u2018g\u2018ri satr: "${i.suffix}" bilan tugashi kerak`:i.format==="includes"?`Noto\u2018g\u2018ri satr: "${i.includes}" ni o\u2018z ichiga olishi kerak`:i.format==="regex"?`Noto\u2018g\u2018ri satr: ${i.pattern} shabloniga mos kelishi kerak`:`Noto\u2018g\u2018ri ${n[i.format]??r.format}`}case"not_multiple_of":return`Noto\u2018g\u2018ri raqam: ${r.divisor} ning karralisi bo\u2018lishi kerak`;case"unrecognized_keys":return`Noma\u2019lum kalit${r.keys.length>1?"lar":""}: ${b(r.keys,", ")}`;case"invalid_key":return`${r.origin} dagi kalit noto\u2018g\u2018ri`;case"invalid_union":return"Noto\u2018g\u2018ri kirish";case"invalid_element":return`${r.origin} da noto\u2018g\u2018ri qiymat`;default:return"Noto\u2018g\u2018ri kirish"}}};function iw(){return{localeError:N$()}}var D$=()=>{let e={string:{unit:"k\xFD t\u1EF1",verb:"c\xF3"},file:{unit:"byte",verb:"c\xF3"},array:{unit:"ph\u1EA7n t\u1EED",verb:"c\xF3"},set:{unit:"ph\u1EA7n t\u1EED",verb:"c\xF3"}};function t(r){return e[r]??null}let n={regex:"\u0111\u1EA7u v\xE0o",email:"\u0111\u1ECBa ch\u1EC9 email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ng\xE0y gi\u1EDD ISO",date:"ng\xE0y ISO",time:"gi\u1EDD ISO",duration:"kho\u1EA3ng th\u1EDDi gian ISO",ipv4:"\u0111\u1ECBa ch\u1EC9 IPv4",ipv6:"\u0111\u1ECBa ch\u1EC9 IPv6",cidrv4:"d\u1EA3i IPv4",cidrv6:"d\u1EA3i IPv6",base64:"chu\u1ED7i m\xE3 h\xF3a base64",base64url:"chu\u1ED7i m\xE3 h\xF3a base64url",json_string:"chu\u1ED7i JSON",e164:"s\u1ED1 E.164",jwt:"JWT",template_literal:"\u0111\u1EA7u v\xE0o"},o={nan:"NaN",number:"s\u1ED1",array:"m\u1EA3ng"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i instanceof ${r.expected}, nh\u1EADn \u0111\u01B0\u1EE3c ${s}`:`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i ${i}, nh\u1EADn \u0111\u01B0\u1EE3c ${s}`}case"invalid_value":return r.values.length===1?`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i ${E(r.values[0])}`:`T\xF9y ch\u1ECDn kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i m\u1ED9t trong c\xE1c gi\xE1 tr\u1ECB ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`Qu\xE1 l\u1EDBn: mong \u0111\u1EE3i ${r.origin??"gi\xE1 tr\u1ECB"} ${a.verb} ${i}${r.maximum.toString()} ${a.unit??"ph\u1EA7n t\u1EED"}`:`Qu\xE1 l\u1EDBn: mong \u0111\u1EE3i ${r.origin??"gi\xE1 tr\u1ECB"} ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`Qu\xE1 nh\u1ECF: mong \u0111\u1EE3i ${r.origin} ${a.verb} ${i}${r.minimum.toString()} ${a.unit}`:`Qu\xE1 nh\u1ECF: mong \u0111\u1EE3i ${r.origin} ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i b\u1EAFt \u0111\u1EA7u b\u1EB1ng "${i.prefix}"`:i.format==="ends_with"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i k\u1EBFt th\xFAc b\u1EB1ng "${i.suffix}"`:i.format==="includes"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i bao g\u1ED3m "${i.includes}"`:i.format==="regex"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i kh\u1EDBp v\u1EDBi m\u1EABu ${i.pattern}`:`${n[i.format]??r.format} kh\xF4ng h\u1EE3p l\u1EC7`}case"not_multiple_of":return`S\u1ED1 kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i l\xE0 b\u1ED9i s\u1ED1 c\u1EE7a ${r.divisor}`;case"unrecognized_keys":return`Kh\xF3a kh\xF4ng \u0111\u01B0\u1EE3c nh\u1EADn d\u1EA1ng: ${b(r.keys,", ")}`;case"invalid_key":return`Kh\xF3a kh\xF4ng h\u1EE3p l\u1EC7 trong ${r.origin}`;case"invalid_union":return"\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7";case"invalid_element":return`Gi\xE1 tr\u1ECB kh\xF4ng h\u1EE3p l\u1EC7 trong ${r.origin}`;default:return"\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7"}}};function aw(){return{localeError:D$()}}var j$=()=>{let e={string:{unit:"\u5B57\u7B26",verb:"\u5305\u542B"},file:{unit:"\u5B57\u8282",verb:"\u5305\u542B"},array:{unit:"\u9879",verb:"\u5305\u542B"},set:{unit:"\u9879",verb:"\u5305\u542B"}};function t(r){return e[r]??null}let n={regex:"\u8F93\u5165",email:"\u7535\u5B50\u90AE\u4EF6",url:"URL",emoji:"\u8868\u60C5\u7B26\u53F7",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO\u65E5\u671F\u65F6\u95F4",date:"ISO\u65E5\u671F",time:"ISO\u65F6\u95F4",duration:"ISO\u65F6\u957F",ipv4:"IPv4\u5730\u5740",ipv6:"IPv6\u5730\u5740",cidrv4:"IPv4\u7F51\u6BB5",cidrv6:"IPv6\u7F51\u6BB5",base64:"base64\u7F16\u7801\u5B57\u7B26\u4E32",base64url:"base64url\u7F16\u7801\u5B57\u7B26\u4E32",json_string:"JSON\u5B57\u7B26\u4E32",e164:"E.164\u53F7\u7801",jwt:"JWT",template_literal:"\u8F93\u5165"},o={nan:"NaN",number:"\u6570\u5B57",array:"\u6570\u7EC4",null:"\u7A7A\u503C(null)"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B instanceof ${r.expected}\uFF0C\u5B9E\u9645\u63A5\u6536 ${s}`:`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B ${i}\uFF0C\u5B9E\u9645\u63A5\u6536 ${s}`}case"invalid_value":return r.values.length===1?`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B ${E(r.values[0])}`:`\u65E0\u6548\u9009\u9879\uFF1A\u671F\u671B\u4EE5\u4E0B\u4E4B\u4E00 ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`\u6570\u503C\u8FC7\u5927\uFF1A\u671F\u671B ${r.origin??"\u503C"} ${i}${r.maximum.toString()} ${a.unit??"\u4E2A\u5143\u7D20"}`:`\u6570\u503C\u8FC7\u5927\uFF1A\u671F\u671B ${r.origin??"\u503C"} ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`\u6570\u503C\u8FC7\u5C0F\uFF1A\u671F\u671B ${r.origin} ${i}${r.minimum.toString()} ${a.unit}`:`\u6570\u503C\u8FC7\u5C0F\uFF1A\u671F\u671B ${r.origin} ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u4EE5 "${i.prefix}" \u5F00\u5934`:i.format==="ends_with"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u4EE5 "${i.suffix}" \u7ED3\u5C3E`:i.format==="includes"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u5305\u542B "${i.includes}"`:i.format==="regex"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u6EE1\u8DB3\u6B63\u5219\u8868\u8FBE\u5F0F ${i.pattern}`:`\u65E0\u6548${n[i.format]??r.format}`}case"not_multiple_of":return`\u65E0\u6548\u6570\u5B57\uFF1A\u5FC5\u987B\u662F ${r.divisor} \u7684\u500D\u6570`;case"unrecognized_keys":return`\u51FA\u73B0\u672A\u77E5\u7684\u952E(key): ${b(r.keys,", ")}`;case"invalid_key":return`${r.origin} \u4E2D\u7684\u952E(key)\u65E0\u6548`;case"invalid_union":return"\u65E0\u6548\u8F93\u5165";case"invalid_element":return`${r.origin} \u4E2D\u5305\u542B\u65E0\u6548\u503C(value)`;default:return"\u65E0\u6548\u8F93\u5165"}}};function sw(){return{localeError:j$()}}var U$=()=>{let e={string:{unit:"\u5B57\u5143",verb:"\u64C1\u6709"},file:{unit:"\u4F4D\u5143\u7D44",verb:"\u64C1\u6709"},array:{unit:"\u9805\u76EE",verb:"\u64C1\u6709"},set:{unit:"\u9805\u76EE",verb:"\u64C1\u6709"}};function t(r){return e[r]??null}let n={regex:"\u8F38\u5165",email:"\u90F5\u4EF6\u5730\u5740",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u65E5\u671F\u6642\u9593",date:"ISO \u65E5\u671F",time:"ISO \u6642\u9593",duration:"ISO \u671F\u9593",ipv4:"IPv4 \u4F4D\u5740",ipv6:"IPv6 \u4F4D\u5740",cidrv4:"IPv4 \u7BC4\u570D",cidrv6:"IPv6 \u7BC4\u570D",base64:"base64 \u7DE8\u78BC\u5B57\u4E32",base64url:"base64url \u7DE8\u78BC\u5B57\u4E32",json_string:"JSON \u5B57\u4E32",e164:"E.164 \u6578\u503C",jwt:"JWT",template_literal:"\u8F38\u5165"},o={nan:"NaN"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA instanceof ${r.expected}\uFF0C\u4F46\u6536\u5230 ${s}`:`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA ${i}\uFF0C\u4F46\u6536\u5230 ${s}`}case"invalid_value":return r.values.length===1?`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA ${E(r.values[0])}`:`\u7121\u6548\u7684\u9078\u9805\uFF1A\u9810\u671F\u70BA\u4EE5\u4E0B\u5176\u4E2D\u4E4B\u4E00 ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`\u6578\u503C\u904E\u5927\uFF1A\u9810\u671F ${r.origin??"\u503C"} \u61C9\u70BA ${i}${r.maximum.toString()} ${a.unit??"\u500B\u5143\u7D20"}`:`\u6578\u503C\u904E\u5927\uFF1A\u9810\u671F ${r.origin??"\u503C"} \u61C9\u70BA ${i}${r.maximum.toString()}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`\u6578\u503C\u904E\u5C0F\uFF1A\u9810\u671F ${r.origin} \u61C9\u70BA ${i}${r.minimum.toString()} ${a.unit}`:`\u6578\u503C\u904E\u5C0F\uFF1A\u9810\u671F ${r.origin} \u61C9\u70BA ${i}${r.minimum.toString()}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u4EE5 "${i.prefix}" \u958B\u982D`:i.format==="ends_with"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u4EE5 "${i.suffix}" \u7D50\u5C3E`:i.format==="includes"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u5305\u542B "${i.includes}"`:i.format==="regex"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u7B26\u5408\u683C\u5F0F ${i.pattern}`:`\u7121\u6548\u7684 ${n[i.format]??r.format}`}case"not_multiple_of":return`\u7121\u6548\u7684\u6578\u5B57\uFF1A\u5FC5\u9808\u70BA ${r.divisor} \u7684\u500D\u6578`;case"unrecognized_keys":return`\u7121\u6CD5\u8B58\u5225\u7684\u9375\u503C${r.keys.length>1?"\u5011":""}\uFF1A${b(r.keys,"\u3001")}`;case"invalid_key":return`${r.origin} \u4E2D\u6709\u7121\u6548\u7684\u9375\u503C`;case"invalid_union":return"\u7121\u6548\u7684\u8F38\u5165\u503C";case"invalid_element":return`${r.origin} \u4E2D\u6709\u7121\u6548\u7684\u503C`;default:return"\u7121\u6548\u7684\u8F38\u5165\u503C"}}};function dw(){return{localeError:U$()}}var L$=()=>{let e={string:{unit:"\xE0mi",verb:"n\xED"},file:{unit:"bytes",verb:"n\xED"},array:{unit:"nkan",verb:"n\xED"},set:{unit:"nkan",verb:"n\xED"}};function t(r){return e[r]??null}let n={regex:"\u1EB9\u0300r\u1ECD \xECb\xE1w\u1ECDl\xE9",email:"\xE0d\xEDr\u1EB9\u0301s\xEC \xECm\u1EB9\u0301l\xEC",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\xE0k\xF3k\xF2 ISO",date:"\u1ECDj\u1ECD\u0301 ISO",time:"\xE0k\xF3k\xF2 ISO",duration:"\xE0k\xF3k\xF2 t\xF3 p\xE9 ISO",ipv4:"\xE0d\xEDr\u1EB9\u0301s\xEC IPv4",ipv6:"\xE0d\xEDr\u1EB9\u0301s\xEC IPv6",cidrv4:"\xE0gb\xE8gb\xE8 IPv4",cidrv6:"\xE0gb\xE8gb\xE8 IPv6",base64:"\u1ECD\u0300r\u1ECD\u0300 t\xED a k\u1ECD\u0301 n\xED base64",base64url:"\u1ECD\u0300r\u1ECD\u0300 base64url",json_string:"\u1ECD\u0300r\u1ECD\u0300 JSON",e164:"n\u1ECD\u0301mb\xE0 E.164",jwt:"JWT",template_literal:"\u1EB9\u0300r\u1ECD \xECb\xE1w\u1ECDl\xE9"},o={nan:"NaN",number:"n\u1ECD\u0301mb\xE0",array:"akop\u1ECD"};return r=>{switch(r.code){case"invalid_type":{let i=o[r.expected]??r.expected,a=_(r.input),s=o[a]??a;return/^[A-Z]/.test(r.expected)?`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi instanceof ${r.expected}, \xE0m\u1ECD\u0300 a r\xED ${s}`:`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi ${i}, \xE0m\u1ECD\u0300 a r\xED ${s}`}case"invalid_value":return r.values.length===1?`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi ${E(r.values[0])}`:`\xC0\u1E63\xE0y\xE0n a\u1E63\xEC\u1E63e: yan \u1ECD\u0300kan l\xE1ra ${b(r.values,"|")}`;case"too_big":{let i=r.inclusive?"<=":"<",a=t(r.origin);return a?`T\xF3 p\u1ECD\u0300 j\xF9: a n\xED l\xE1ti j\u1EB9\u0301 p\xE9 ${r.origin??"iye"} ${a.verb} ${i}${r.maximum} ${a.unit}`:`T\xF3 p\u1ECD\u0300 j\xF9: a n\xED l\xE1ti j\u1EB9\u0301 ${i}${r.maximum}`}case"too_small":{let i=r.inclusive?">=":">",a=t(r.origin);return a?`K\xE9r\xE9 ju: a n\xED l\xE1ti j\u1EB9\u0301 p\xE9 ${r.origin} ${a.verb} ${i}${r.minimum} ${a.unit}`:`K\xE9r\xE9 ju: a n\xED l\xE1ti j\u1EB9\u0301 ${i}${r.minimum}`}case"invalid_format":{let i=r;return i.format==="starts_with"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 b\u1EB9\u0300r\u1EB9\u0300 p\u1EB9\u0300l\xFA "${i.prefix}"`:i.format==="ends_with"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 par\xED p\u1EB9\u0300l\xFA "${i.suffix}"`:i.format==="includes"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 n\xED "${i.includes}"`:i.format==="regex"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 b\xE1 \xE0p\u1EB9\u1EB9r\u1EB9 mu ${i.pattern}`:`A\u1E63\xEC\u1E63e: ${n[i.format]??r.format}`}case"not_multiple_of":return`N\u1ECD\u0301mb\xE0 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 j\u1EB9\u0301 \xE8y\xE0 p\xEDp\xEDn ti ${r.divisor}`;case"unrecognized_keys":return`B\u1ECDt\xECn\xEC \xE0\xECm\u1ECD\u0300: ${b(r.keys,", ")}`;case"invalid_key":return`B\u1ECDt\xECn\xEC a\u1E63\xEC\u1E63e n\xEDn\xFA ${r.origin}`;case"invalid_union":return"\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e";case"invalid_element":return`Iye a\u1E63\xEC\u1E63e n\xEDn\xFA ${r.origin}`;default:return"\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e"}}};function cw(){return{localeError:L$()}}var uw,pf=Symbol("ZodOutput"),ff=Symbol("ZodInput"),bs=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...n){let o=n[0];return this._map.set(t,o),o&&typeof o=="object"&&"id"in o&&this._idmap.set(o.id,t),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(t){let n=this._map.get(t);return n&&typeof n=="object"&&"id"in n&&this._idmap.delete(n.id),this._map.delete(t),this}get(t){let n=t._zod.parent;if(n){let o={...this.get(n)??{}};delete o.id;let r={...o,...this._map.get(t)};return Object.keys(r).length?r:void 0}return this._map.get(t)}has(t){return this._map.has(t)}};function ws(){return new bs}(uw=globalThis).__zod_globalRegistry??(uw.__zod_globalRegistry=ws());var Oe=globalThis.__zod_globalRegistry;function mf(e,t){return new e({type:"string",...T(t)})}function gf(e,t){return new e({type:"string",coerce:!0,...T(t)})}function Rs(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...T(t)})}function di(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...T(t)})}function Ss(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...T(t)})}function Es(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...T(t)})}function _s(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...T(t)})}function xs(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...T(t)})}function ci(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...T(t)})}function ks(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...T(t)})}function As(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...T(t)})}function Ts(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...T(t)})}function $s(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...T(t)})}function Cs(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...T(t)})}function Os(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...T(t)})}function Ps(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...T(t)})}function Ns(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...T(t)})}function Ds(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...T(t)})}function yf(e,t){return new e({type:"string",format:"mac",check:"string_format",abort:!1,...T(t)})}function js(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...T(t)})}function Us(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...T(t)})}function Ls(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...T(t)})}function Ms(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...T(t)})}function zs(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...T(t)})}function Bs(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...T(t)})}var hf={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};function vf(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...T(t)})}function If(e,t){return new e({type:"string",format:"date",check:"string_format",...T(t)})}function bf(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...T(t)})}function wf(e,t){return new e({type:"string",format:"duration",check:"string_format",...T(t)})}function Rf(e,t){return new e({type:"number",checks:[],...T(t)})}function Sf(e,t){return new e({type:"number",coerce:!0,checks:[],...T(t)})}function Ef(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...T(t)})}function _f(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"float32",...T(t)})}function xf(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"float64",...T(t)})}function kf(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"int32",...T(t)})}function Af(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"uint32",...T(t)})}function Tf(e,t){return new e({type:"boolean",...T(t)})}function $f(e,t){return new e({type:"boolean",coerce:!0,...T(t)})}function Cf(e,t){return new e({type:"bigint",...T(t)})}function Of(e,t){return new e({type:"bigint",coerce:!0,...T(t)})}function Pf(e,t){return new e({type:"bigint",check:"bigint_format",abort:!1,format:"int64",...T(t)})}function Nf(e,t){return new e({type:"bigint",check:"bigint_format",abort:!1,format:"uint64",...T(t)})}function Df(e,t){return new e({type:"symbol",...T(t)})}function jf(e,t){return new e({type:"undefined",...T(t)})}function Uf(e,t){return new e({type:"null",...T(t)})}function Lf(e){return new e({type:"any"})}function Mf(e){return new e({type:"unknown"})}function zf(e,t){return new e({type:"never",...T(t)})}function Bf(e,t){return new e({type:"void",...T(t)})}function qf(e,t){return new e({type:"date",...T(t)})}function Ff(e,t){return new e({type:"date",coerce:!0,...T(t)})}function Vf(e,t){return new e({type:"nan",...T(t)})}function xt(e,t){return new as({check:"less_than",...T(t),value:e,inclusive:!1})}function st(e,t){return new as({check:"less_than",...T(t),value:e,inclusive:!0})}function kt(e,t){return new ss({check:"greater_than",...T(t),value:e,inclusive:!1})}function Ze(e,t){return new ss({check:"greater_than",...T(t),value:e,inclusive:!0})}function qs(e){return kt(0,e)}function Fs(e){return xt(0,e)}function Vs(e){return st(0,e)}function Hs(e){return Ze(0,e)}function vn(e,t){return new jl({check:"multiple_of",...T(t),value:e})}function In(e,t){return new Ml({check:"max_size",...T(t),maximum:e})}function At(e,t){return new zl({check:"min_size",...T(t),minimum:e})}function Yn(e,t){return new Bl({check:"size_equals",...T(t),size:e})}function Qn(e,t){return new ql({check:"max_length",...T(t),maximum:e})}function Ft(e,t){return new Fl({check:"min_length",...T(t),minimum:e})}function er(e,t){return new Vl({check:"length_equals",...T(t),length:e})}function Ur(e,t){return new Hl({check:"string_format",format:"regex",...T(t),pattern:e})}function Lr(e){return new Zl({check:"string_format",format:"lowercase",...T(e)})}function Mr(e){return new Kl({check:"string_format",format:"uppercase",...T(e)})}function zr(e,t){return new Wl({check:"string_format",format:"includes",...T(t),includes:e})}function Br(e,t){return new Jl({check:"string_format",format:"starts_with",...T(t),prefix:e})}function qr(e,t){return new Gl({check:"string_format",format:"ends_with",...T(t),suffix:e})}function Zs(e,t,n){return new Xl({check:"property",property:e,schema:t,...T(n)})}function Fr(e,t){return new Yl({check:"mime_type",mime:e,...T(t)})}function vt(e){return new Ql({check:"overwrite",tx:e})}function Vr(e){return vt(t=>t.normalize(e))}function Hr(){return vt(e=>e.trim())}function Zr(){return vt(e=>e.toLowerCase())}function Kr(){return vt(e=>e.toUpperCase())}function Wr(){return vt(e=>Ju(e))}function Hf(e,t,n){return new e({type:"array",element:t,...T(n)})}function z$(e,t,n){return new e({type:"union",options:t,...T(n)})}function B$(e,t,n){return new e({type:"union",options:t,inclusive:!1,...T(n)})}function q$(e,t,n,o){return new e({type:"union",options:n,discriminator:t,...T(o)})}function F$(e,t,n){return new e({type:"intersection",left:t,right:n})}function V$(e,t,n,o){let r=n instanceof M,i=r?o:n,a=r?n:null;return new e({type:"tuple",items:t,rest:a,...T(i)})}function H$(e,t,n,o){return new e({type:"record",keyType:t,valueType:n,...T(o)})}function Z$(e,t,n,o){return new e({type:"map",keyType:t,valueType:n,...T(o)})}function K$(e,t,n){return new e({type:"set",valueType:t,...T(n)})}function W$(e,t,n){let o=Array.isArray(t)?Object.fromEntries(t.map(r=>[r,r])):t;return new e({type:"enum",entries:o,...T(n)})}function J$(e,t,n){return new e({type:"enum",entries:t,...T(n)})}function G$(e,t,n){return new e({type:"literal",values:Array.isArray(t)?t:[t],...T(n)})}function Zf(e,t){return new e({type:"file",...T(t)})}function X$(e,t){return new e({type:"transform",transform:t})}function Y$(e,t){return new e({type:"optional",innerType:t})}function Q$(e,t){return new e({type:"nullable",innerType:t})}function eC(e,t,n){return new e({type:"default",innerType:t,get defaultValue(){return typeof n=="function"?n():Xu(n)}})}function tC(e,t,n){return new e({type:"nonoptional",innerType:t,...T(n)})}function nC(e,t){return new e({type:"success",innerType:t})}function rC(e,t,n){return new e({type:"catch",innerType:t,catchValue:typeof n=="function"?n:()=>n})}function oC(e,t,n){return new e({type:"pipe",in:t,out:n})}function iC(e,t){return new e({type:"readonly",innerType:t})}function aC(e,t,n){return new e({type:"template_literal",parts:t,...T(n)})}function sC(e,t){return new e({type:"lazy",getter:t})}function dC(e,t){return new e({type:"promise",innerType:t})}function Kf(e,t,n){let o=T(n);return o.abort??(o.abort=!0),new e({type:"custom",check:"custom",fn:t,...o})}function Wf(e,t,n){return new e({type:"custom",check:"custom",fn:t,...T(n)})}function Jf(e,t){let n=lw(o=>(o.addIssue=r=>{if(typeof r=="string")o.issues.push($r(r,o.value,n._zod.def));else{let i=r;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=o.value),i.inst??(i.inst=n),i.continue??(i.continue=!n._zod.def.abort),o.issues.push($r(i))}},e(o.value,o)),t);return n}function lw(e,t){let n=new se({check:"custom",...T(t)});return n._zod.check=e,n}function Gf(e){let t=new se({check:"describe"});return t._zod.onattach=[n=>{let o=Oe.get(n)??{};Oe.add(n,{...o,description:e})}],t._zod.check=()=>{},t}function Xf(e){let t=new se({check:"meta"});return t._zod.onattach=[n=>{let o=Oe.get(n)??{};Oe.add(n,{...o,...e})}],t._zod.check=()=>{},t}function Yf(e,t){let n=T(t),o=n.truthy??["true","1","yes","on","y","enabled"],r=n.falsy??["false","0","no","off","n","disabled"];n.case!=="sensitive"&&(o=o.map(g=>typeof g=="string"?g.toLowerCase():g),r=r.map(g=>typeof g=="string"?g.toLowerCase():g));let i=new Set(o),a=new Set(r),s=e.Codec??ii,d=e.Boolean??ri,c=e.String??Xn,u=new c({type:"string",error:n.error}),l=new d({type:"boolean",error:n.error}),f=new s({type:"pipe",in:u,out:l,transform:((g,p)=>{let v=g;return n.case!=="sensitive"&&(v=v.toLowerCase()),i.has(v)?!0:a.has(v)?!1:(p.issues.push({code:"invalid_value",expected:"stringbool",values:[...i,...a],input:p.value,inst:f,continue:!1}),{})}),reverseTransform:((g,p)=>g===!0?o[0]||"true":r[0]||"false"),error:n.error});return f}function Jr(e,t,n,o={}){let r=T(o),i={...T(o),check:"string_format",type:"string",format:t,fn:typeof n=="function"?n:s=>n.test(s),...r};return n instanceof RegExp&&(i.pattern=n),new e(i)}function bn(e){let t=e?.target??"draft-2020-12";return t==="draft-4"&&(t="draft-04"),t==="draft-7"&&(t="draft-07"),{processors:e.processors??{},metadataRegistry:e?.metadata??Oe,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,cycles:e?.cycles??"ref",reused:e?.reused??"inline",external:e?.external??void 0}}function te(e,t,n={path:[],schemaPath:[]}){var o;let r=e._zod.def,i=t.seen.get(e);if(i)return i.count++,n.schemaPath.includes(e)&&(i.cycle=n.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,a);let s=e._zod.toJSONSchema?.();if(s)a.schema=s;else{let u={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,a.schema,u);else{let f=a.schema,g=t.processors[r.type];if(!g)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${r.type}`);g(e,t,f,u)}let l=e._zod.parent;l&&(a.ref||(a.ref=l),te(l,t,u),t.seen.get(l).isParent=!0)}let d=t.metadataRegistry.get(e);return d&&Object.assign(a.schema,d),t.io==="input"&&Ke(e)&&(delete a.schema.examples,delete a.schema.default),t.io==="input"&&"_prefault"in a.schema&&((o=a.schema).default??(o.default=a.schema._prefault)),delete a.schema._prefault,t.seen.get(e).schema}function wn(e,t){let n=e.seen.get(t);if(!n)throw new Error("Unprocessed schema. This is a bug in Zod.");let o=new Map;for(let a of e.seen.entries()){let s=e.metadataRegistry.get(a[0])?.id;if(s){let d=o.get(s);if(d&&d!==a[0])throw new Error(`Duplicate schema id "${s}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);o.set(s,a[0])}}let r=a=>{let s=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){let l=e.external.registry.get(a[0])?.id,f=e.external.uri??(p=>p);if(l)return{ref:f(l)};let g=a[1].defId??a[1].schema.id??`schema${e.counter++}`;return a[1].defId=g,{defId:g,ref:`${f("__shared")}#/${s}/${g}`}}if(a[1]===n)return{ref:"#"};let c=`#/${s}/`,u=a[1].schema.id??`__schema${e.counter++}`;return{defId:u,ref:c+u}},i=a=>{if(a[1].schema.$ref)return;let s=a[1],{ref:d,defId:c}=r(a);s.def={...s.schema},c&&(s.defId=c);let u=s.schema;for(let l in u)delete u[l];u.$ref=d};if(e.cycles==="throw")for(let a of e.seen.entries()){let s=a[1];if(s.cycle)throw new Error(`Cycle detected: #/${s.cycle?.join("/")}/<root>
246
-
247
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let a of e.seen.entries()){let s=a[1];if(t===a[0]){i(a);continue}if(e.external){let c=e.external.registry.get(a[0])?.id;if(t!==a[0]&&c){i(a);continue}}if(e.metadataRegistry.get(a[0])?.id){i(a);continue}if(s.cycle){i(a);continue}if(s.count>1&&e.reused==="ref"){i(a);continue}}}function Rn(e,t){let n=e.seen.get(t);if(!n)throw new Error("Unprocessed schema. This is a bug in Zod.");let o=s=>{let d=e.seen.get(s);if(d.ref===null)return;let c=d.def??d.schema,u={...c},l=d.ref;if(d.ref=null,l){o(l);let g=e.seen.get(l),p=g.schema;if(p.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(c.allOf=c.allOf??[],c.allOf.push(p)):Object.assign(c,p),Object.assign(c,u),s._zod.parent===l)for(let w in c)w==="$ref"||w==="allOf"||w in u||delete c[w];if(p.$ref&&g.def)for(let w in c)w==="$ref"||w==="allOf"||w in g.def&&JSON.stringify(c[w])===JSON.stringify(g.def[w])&&delete c[w]}let f=s._zod.parent;if(f&&f!==l){o(f);let g=e.seen.get(f);if(g?.schema.$ref&&(c.$ref=g.schema.$ref,g.def))for(let p in c)p==="$ref"||p==="allOf"||p in g.def&&JSON.stringify(c[p])===JSON.stringify(g.def[p])&&delete c[p]}e.override({zodSchema:s,jsonSchema:c,path:d.path??[]})};for(let s of[...e.seen.entries()].reverse())o(s[0]);let r={};if(e.target==="draft-2020-12"?r.$schema="https://json-schema.org/draft/2020-12/schema":e.target==="draft-07"?r.$schema="http://json-schema.org/draft-07/schema#":e.target==="draft-04"?r.$schema="http://json-schema.org/draft-04/schema#":e.target,e.external?.uri){let s=e.external.registry.get(t)?.id;if(!s)throw new Error("Schema is missing an `id` property");r.$id=e.external.uri(s)}Object.assign(r,n.def??n.schema);let i=e.metadataRegistry.get(t)?.id;i!==void 0&&r.id===i&&delete r.id;let a=e.external?.defs??{};for(let s of e.seen.entries()){let d=s[1];d.def&&d.defId&&(d.def.id===d.defId&&delete d.def.id,a[d.defId]=d.def)}e.external||Object.keys(a).length>0&&(e.target==="draft-2020-12"?r.$defs=a:r.definitions=a);try{let s=JSON.parse(JSON.stringify(r));return Object.defineProperty(s,"~standard",{value:{...t["~standard"],jsonSchema:{input:Gr(t,"input",e.processors),output:Gr(t,"output",e.processors)}},enumerable:!1,writable:!1}),s}catch{throw new Error("Error converting schema to JSON.")}}function Ke(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let o=e._zod.def;if(o.type==="transform")return!0;if(o.type==="array")return Ke(o.element,n);if(o.type==="set")return Ke(o.valueType,n);if(o.type==="lazy")return Ke(o.getter(),n);if(o.type==="promise"||o.type==="optional"||o.type==="nonoptional"||o.type==="nullable"||o.type==="readonly"||o.type==="default"||o.type==="prefault")return Ke(o.innerType,n);if(o.type==="intersection")return Ke(o.left,n)||Ke(o.right,n);if(o.type==="record"||o.type==="map")return Ke(o.keyType,n)||Ke(o.valueType,n);if(o.type==="pipe")return e._zod.traits.has("$ZodCodec")?!0:Ke(o.in,n)||Ke(o.out,n);if(o.type==="object"){for(let r in o.shape)if(Ke(o.shape[r],n))return!0;return!1}if(o.type==="union"){for(let r of o.options)if(Ke(r,n))return!0;return!1}if(o.type==="tuple"){for(let r of o.items)if(Ke(r,n))return!0;return!!(o.rest&&Ke(o.rest,n))}return!1}var Qf=(e,t={})=>n=>{let o=bn({...n,processors:t});return te(e,o),wn(o,e),Rn(o,e)},Gr=(e,t,n={})=>o=>{let{libraryOptions:r,target:i}=o??{},a=bn({...r??{},target:i,io:t,processors:n});return te(e,a),wn(a,e),Rn(a,e)};var cC={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},em=(e,t,n,o)=>{let r=n;r.type="string";let{minimum:i,maximum:a,format:s,patterns:d,contentEncoding:c}=e._zod.bag;if(typeof i=="number"&&(r.minLength=i),typeof a=="number"&&(r.maxLength=a),s&&(r.format=cC[s]??s,r.format===""&&delete r.format,s==="time"&&delete r.format),c&&(r.contentEncoding=c),d&&d.size>0){let u=[...d];u.length===1?r.pattern=u[0].source:u.length>1&&(r.allOf=[...u.map(l=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:l.source}))])}},tm=(e,t,n,o)=>{let r=n,{minimum:i,maximum:a,format:s,multipleOf:d,exclusiveMaximum:c,exclusiveMinimum:u}=e._zod.bag;typeof s=="string"&&s.includes("int")?r.type="integer":r.type="number";let l=typeof u=="number"&&u>=(i??Number.NEGATIVE_INFINITY),f=typeof c=="number"&&c<=(a??Number.POSITIVE_INFINITY),g=t.target==="draft-04"||t.target==="openapi-3.0";l?g?(r.minimum=u,r.exclusiveMinimum=!0):r.exclusiveMinimum=u:typeof i=="number"&&(r.minimum=i),f?g?(r.maximum=c,r.exclusiveMaximum=!0):r.exclusiveMaximum=c:typeof a=="number"&&(r.maximum=a),typeof d=="number"&&(r.multipleOf=d)},nm=(e,t,n,o)=>{n.type="boolean"},rm=(e,t,n,o)=>{if(t.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema")},om=(e,t,n,o)=>{if(t.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema")},im=(e,t,n,o)=>{t.target==="openapi-3.0"?(n.type="string",n.nullable=!0,n.enum=[null]):n.type="null"},am=(e,t,n,o)=>{if(t.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema")},sm=(e,t,n,o)=>{if(t.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema")},dm=(e,t,n,o)=>{n.not={}},cm=(e,t,n,o)=>{},um=(e,t,n,o)=>{},lm=(e,t,n,o)=>{if(t.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema")},pm=(e,t,n,o)=>{let r=e._zod.def,i=Zo(r.entries);i.every(a=>typeof a=="number")&&(n.type="number"),i.every(a=>typeof a=="string")&&(n.type="string"),n.enum=i},fm=(e,t,n,o)=>{let r=e._zod.def,i=[];for(let a of r.values)if(a===void 0){if(t.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof a=="bigint"){if(t.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");i.push(Number(a))}else i.push(a);if(i.length!==0)if(i.length===1){let a=i[0];n.type=a===null?"null":typeof a,t.target==="draft-04"||t.target==="openapi-3.0"?n.enum=[a]:n.const=a}else i.every(a=>typeof a=="number")&&(n.type="number"),i.every(a=>typeof a=="string")&&(n.type="string"),i.every(a=>typeof a=="boolean")&&(n.type="boolean"),i.every(a=>a===null)&&(n.type="null"),n.enum=i},mm=(e,t,n,o)=>{if(t.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema")},gm=(e,t,n,o)=>{let r=n,i=e._zod.pattern;if(!i)throw new Error("Pattern not found in template literal");r.type="string",r.pattern=i.source},ym=(e,t,n,o)=>{let r=n,i={type:"string",format:"binary",contentEncoding:"binary"},{minimum:a,maximum:s,mime:d}=e._zod.bag;a!==void 0&&(i.minLength=a),s!==void 0&&(i.maxLength=s),d?d.length===1?(i.contentMediaType=d[0],Object.assign(r,i)):(Object.assign(r,i),r.anyOf=d.map(c=>({contentMediaType:c}))):Object.assign(r,i)},hm=(e,t,n,o)=>{n.type="boolean"},vm=(e,t,n,o)=>{if(t.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},Im=(e,t,n,o)=>{if(t.unrepresentable==="throw")throw new Error("Function types cannot be represented in JSON Schema")},bm=(e,t,n,o)=>{if(t.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},wm=(e,t,n,o)=>{if(t.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema")},Rm=(e,t,n,o)=>{if(t.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema")},Sm=(e,t,n,o)=>{let r=n,i=e._zod.def,{minimum:a,maximum:s}=e._zod.bag;typeof a=="number"&&(r.minItems=a),typeof s=="number"&&(r.maxItems=s),r.type="array",r.items=te(i.element,t,{...o,path:[...o.path,"items"]})},Em=(e,t,n,o)=>{let r=n,i=e._zod.def;r.type="object",r.properties={};let a=i.shape;for(let c in a)r.properties[c]=te(a[c],t,{...o,path:[...o.path,"properties",c]});let s=new Set(Object.keys(a)),d=new Set([...s].filter(c=>{let u=i.shape[c]._zod;return t.io==="input"?u.optin===void 0:u.optout===void 0}));d.size>0&&(r.required=Array.from(d)),i.catchall?._zod.def.type==="never"?r.additionalProperties=!1:i.catchall?i.catchall&&(r.additionalProperties=te(i.catchall,t,{...o,path:[...o.path,"additionalProperties"]})):t.io==="output"&&(r.additionalProperties=!1)},Ws=(e,t,n,o)=>{let r=e._zod.def,i=r.inclusive===!1,a=r.options.map((s,d)=>te(s,t,{...o,path:[...o.path,i?"oneOf":"anyOf",d]}));i?n.oneOf=a:n.anyOf=a},_m=(e,t,n,o)=>{let r=e._zod.def,i=te(r.left,t,{...o,path:[...o.path,"allOf",0]}),a=te(r.right,t,{...o,path:[...o.path,"allOf",1]}),s=c=>"allOf"in c&&Object.keys(c).length===1,d=[...s(i)?i.allOf:[i],...s(a)?a.allOf:[a]];n.allOf=d},xm=(e,t,n,o)=>{let r=n,i=e._zod.def;r.type="array";let a=t.target==="draft-2020-12"?"prefixItems":"items",s=t.target==="draft-2020-12"||t.target==="openapi-3.0"?"items":"additionalItems",d=i.items.map((f,g)=>te(f,t,{...o,path:[...o.path,a,g]})),c=i.rest?te(i.rest,t,{...o,path:[...o.path,s,...t.target==="openapi-3.0"?[i.items.length]:[]]}):null;t.target==="draft-2020-12"?(r.prefixItems=d,c&&(r.items=c)):t.target==="openapi-3.0"?(r.items={anyOf:d},c&&r.items.anyOf.push(c),r.minItems=d.length,c||(r.maxItems=d.length)):(r.items=d,c&&(r.additionalItems=c));let{minimum:u,maximum:l}=e._zod.bag;typeof u=="number"&&(r.minItems=u),typeof l=="number"&&(r.maxItems=l)},km=(e,t,n,o)=>{let r=n,i=e._zod.def;r.type="object";let a=i.keyType,d=a._zod.bag?.patterns;if(i.mode==="loose"&&d&&d.size>0){let u=te(i.valueType,t,{...o,path:[...o.path,"patternProperties","*"]});r.patternProperties={};for(let l of d)r.patternProperties[l.source]=u}else(t.target==="draft-07"||t.target==="draft-2020-12")&&(r.propertyNames=te(i.keyType,t,{...o,path:[...o.path,"propertyNames"]})),r.additionalProperties=te(i.valueType,t,{...o,path:[...o.path,"additionalProperties"]});let c=a._zod.values;if(c){let u=[...c].filter(l=>typeof l=="string"||typeof l=="number");u.length>0&&(r.required=u)}},Am=(e,t,n,o)=>{let r=e._zod.def,i=te(r.innerType,t,o),a=t.seen.get(e);t.target==="openapi-3.0"?(a.ref=r.innerType,n.nullable=!0):n.anyOf=[i,{type:"null"}]},Tm=(e,t,n,o)=>{let r=e._zod.def;te(r.innerType,t,o);let i=t.seen.get(e);i.ref=r.innerType},$m=(e,t,n,o)=>{let r=e._zod.def;te(r.innerType,t,o);let i=t.seen.get(e);i.ref=r.innerType,n.default=JSON.parse(JSON.stringify(r.defaultValue))},Cm=(e,t,n,o)=>{let r=e._zod.def;te(r.innerType,t,o);let i=t.seen.get(e);i.ref=r.innerType,t.io==="input"&&(n._prefault=JSON.parse(JSON.stringify(r.defaultValue)))},Om=(e,t,n,o)=>{let r=e._zod.def;te(r.innerType,t,o);let i=t.seen.get(e);i.ref=r.innerType;let a;try{a=r.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}n.default=a},Pm=(e,t,n,o)=>{let r=e._zod.def,i=r.in._zod.traits.has("$ZodTransform"),a=t.io==="input"?i?r.out:r.in:r.out;te(a,t,o);let s=t.seen.get(e);s.ref=a},Nm=(e,t,n,o)=>{let r=e._zod.def;te(r.innerType,t,o);let i=t.seen.get(e);i.ref=r.innerType,n.readOnly=!0},Dm=(e,t,n,o)=>{let r=e._zod.def;te(r.innerType,t,o);let i=t.seen.get(e);i.ref=r.innerType},Js=(e,t,n,o)=>{let r=e._zod.def;te(r.innerType,t,o);let i=t.seen.get(e);i.ref=r.innerType},jm=(e,t,n,o)=>{let r=e._zod.innerType;te(r,t,o);let i=t.seen.get(e);i.ref=r},Ks={string:em,number:tm,boolean:nm,bigint:rm,symbol:om,null:im,undefined:am,void:sm,never:dm,any:cm,unknown:um,date:lm,enum:pm,literal:fm,nan:mm,template_literal:gm,file:ym,success:hm,custom:vm,function:Im,transform:bm,map:wm,set:Rm,array:Sm,object:Em,union:Ws,intersection:_m,tuple:xm,record:km,nullable:Am,nonoptional:Tm,default:$m,prefault:Cm,catch:Om,pipe:Pm,readonly:Nm,promise:Dm,optional:Js,lazy:jm};function Gs(e,t){if("_idmap"in e){let o=e,r=bn({...t,processors:Ks}),i={};for(let d of o._idmap.entries()){let[c,u]=d;te(u,r)}let a={},s={registry:o,uri:t?.uri,defs:i};r.external=s;for(let d of o._idmap.entries()){let[c,u]=d;wn(r,u),a[c]=Rn(r,u)}if(Object.keys(i).length>0){let d=r.target==="draft-2020-12"?"$defs":"definitions";a.__shared={[d]:i}}return{schemas:a}}let n=bn({...t,processors:Ks});return te(e,n),wn(n,e),Rn(n,e)}var Xs=class{get metadataRegistry(){return this.ctx.metadataRegistry}get target(){return this.ctx.target}get unrepresentable(){return this.ctx.unrepresentable}get override(){return this.ctx.override}get io(){return this.ctx.io}get counter(){return this.ctx.counter}set counter(t){this.ctx.counter=t}get seen(){return this.ctx.seen}constructor(t){let n=t?.target??"draft-2020-12";n==="draft-4"&&(n="draft-04"),n==="draft-7"&&(n="draft-07"),this.ctx=bn({processors:Ks,target:n,...t?.metadata&&{metadata:t.metadata},...t?.unrepresentable&&{unrepresentable:t.unrepresentable},...t?.override&&{override:t.override},...t?.io&&{io:t.io}})}process(t,n={path:[],schemaPath:[]}){return te(t,this.ctx,n)}emit(t,n){n&&(n.cycles&&(this.ctx.cycles=n.cycles),n.reused&&(this.ctx.reused=n.reused),n.external&&(this.ctx.external=n.external)),wn(this.ctx,t);let o=Rn(this.ctx,t),{"~standard":r,...i}=o;return i}};var pw={};var ui={};Mt(ui,{ZodAny:()=>ag,ZodArray:()=>ug,ZodBase64:()=>vd,ZodBase64URL:()=>Id,ZodBigInt:()=>oo,ZodBigIntFormat:()=>Rd,ZodBoolean:()=>ro,ZodCIDRv4:()=>yd,ZodCIDRv6:()=>hd,ZodCUID:()=>cd,ZodCUID2:()=>ud,ZodCatch:()=>Og,ZodCodec:()=>Ri,ZodCustom:()=>Si,ZodCustomStringFormat:()=>to,ZodDate:()=>hi,ZodDefault:()=>xg,ZodDiscriminatedUnion:()=>pg,ZodE164:()=>bd,ZodEmail:()=>ad,ZodEmoji:()=>sd,ZodEnum:()=>Qr,ZodExactOptional:()=>Sg,ZodFile:()=>wg,ZodFunction:()=>qg,ZodGUID:()=>pi,ZodIPv4:()=>md,ZodIPv6:()=>gd,ZodIntersection:()=>fg,ZodJWT:()=>wd,ZodKSUID:()=>fd,ZodLazy:()=>Mg,ZodLiteral:()=>bg,ZodMAC:()=>Qm,ZodMap:()=>vg,ZodNaN:()=>Ng,ZodNanoID:()=>dd,ZodNever:()=>dg,ZodNonOptional:()=>Ad,ZodNull:()=>og,ZodNullable:()=>_g,ZodNumber:()=>no,ZodNumberFormat:()=>nr,ZodObject:()=>Ii,ZodOptional:()=>kd,ZodPipe:()=>wi,ZodPrefault:()=>Ag,ZodPreprocess:()=>Dg,ZodPromise:()=>Bg,ZodReadonly:()=>jg,ZodRecord:()=>Yr,ZodSet:()=>Ig,ZodString:()=>eo,ZodStringFormat:()=>ie,ZodSuccess:()=>Cg,ZodSymbol:()=>ng,ZodTemplateLiteral:()=>Lg,ZodTransform:()=>Rg,ZodTuple:()=>gg,ZodType:()=>F,ZodULID:()=>ld,ZodURL:()=>yi,ZodUUID:()=>Tt,ZodUndefined:()=>rg,ZodUnion:()=>bi,ZodUnknown:()=>sg,ZodVoid:()=>cg,ZodXID:()=>pd,ZodXor:()=>lg,_ZodString:()=>id,_default:()=>kg,_function:()=>wR,any:()=>Yw,array:()=>vi,base64:()=>Dw,base64url:()=>jw,bigint:()=>Kw,boolean:()=>tg,catch:()=>Pg,check:()=>RR,cidrv4:()=>Pw,cidrv6:()=>Nw,codec:()=>hR,cuid:()=>_w,cuid2:()=>xw,custom:()=>SR,date:()=>eR,describe:()=>ER,discriminatedUnion:()=>aR,e164:()=>Uw,email:()=>gw,emoji:()=>Sw,enum:()=>_d,exactOptional:()=>Eg,file:()=>fR,float32:()=>Fw,float64:()=>Vw,function:()=>wR,guid:()=>yw,hash:()=>qw,hex:()=>Bw,hostname:()=>zw,httpUrl:()=>Rw,instanceof:()=>xR,int:()=>rd,int32:()=>Hw,int64:()=>Ww,intersection:()=>mg,invertCodec:()=>vR,ipv4:()=>$w,ipv6:()=>Ow,json:()=>AR,jwt:()=>Lw,keyof:()=>tR,ksuid:()=>Tw,lazy:()=>zg,literal:()=>pR,looseObject:()=>oR,looseRecord:()=>dR,mac:()=>Cw,map:()=>cR,meta:()=>_R,nan:()=>yR,nanoid:()=>Ew,nativeEnum:()=>lR,never:()=>Sd,nonoptional:()=>$g,null:()=>ig,nullable:()=>mi,nullish:()=>mR,number:()=>eg,object:()=>nR,optional:()=>fi,partialRecord:()=>sR,pipe:()=>od,prefault:()=>Tg,preprocess:()=>TR,promise:()=>bR,readonly:()=>Ug,record:()=>hg,refine:()=>Fg,set:()=>uR,strictObject:()=>rR,string:()=>li,stringFormat:()=>Mw,stringbool:()=>kR,success:()=>gR,superRefine:()=>Vg,symbol:()=>Gw,templateLiteral:()=>IR,transform:()=>xd,tuple:()=>yg,uint32:()=>Zw,uint64:()=>Jw,ulid:()=>kw,undefined:()=>Xw,union:()=>Ed,unknown:()=>tr,url:()=>ww,uuid:()=>hw,uuidv4:()=>vw,uuidv6:()=>Iw,uuidv7:()=>bw,void:()=>Qw,xid:()=>Aw,xor:()=>iR});var Ys={};Mt(Ys,{endsWith:()=>qr,gt:()=>kt,gte:()=>Ze,includes:()=>zr,length:()=>er,lowercase:()=>Lr,lt:()=>xt,lte:()=>st,maxLength:()=>Qn,maxSize:()=>In,mime:()=>Fr,minLength:()=>Ft,minSize:()=>At,multipleOf:()=>vn,negative:()=>Fs,nonnegative:()=>Hs,nonpositive:()=>Vs,normalize:()=>Vr,overwrite:()=>vt,positive:()=>qs,property:()=>Zs,regex:()=>Ur,size:()=>Yn,slugify:()=>Wr,startsWith:()=>Br,toLowerCase:()=>Zr,toUpperCase:()=>Kr,trim:()=>Hr,uppercase:()=>Mr});var Xr={};Mt(Xr,{ZodISODate:()=>ed,ZodISODateTime:()=>Qs,ZodISODuration:()=>nd,ZodISOTime:()=>td,date:()=>Lm,datetime:()=>Um,duration:()=>zm,time:()=>Mm});var Qs=I("ZodISODateTime",(e,t)=>{fp.init(e,t),ie.init(e,t)});function Um(e){return vf(Qs,e)}var ed=I("ZodISODate",(e,t)=>{mp.init(e,t),ie.init(e,t)});function Lm(e){return If(ed,e)}var td=I("ZodISOTime",(e,t)=>{gp.init(e,t),ie.init(e,t)});function Mm(e){return bf(td,e)}var nd=I("ZodISODuration",(e,t)=>{yp.init(e,t),ie.init(e,t)});function zm(e){return wf(nd,e)}var fw=(e,t)=>{Xo.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:n=>Qo(e,n)},flatten:{value:n=>Yo(e,n)},addIssue:{value:n=>{e.issues.push(n),e.message=JSON.stringify(e.issues,Ar,2)}},addIssues:{value:n=>{e.issues.push(...n),e.message=JSON.stringify(e.issues,Ar,2)}},isEmpty:{get(){return e.issues.length===0}}})},lC=I("ZodError",fw),nt=I("ZodError",fw,{Parent:Error});var Bm=Cr(nt),qm=Or(nt),Fm=Pr(nt),Vm=Nr(nt),Hm=Ga(nt),Zm=Xa(nt),Km=Ya(nt),Wm=Qa(nt),Jm=es(nt),Gm=ts(nt),Xm=ns(nt),Ym=rs(nt);var mw=new WeakMap;function gi(e,t,n){let o=Object.getPrototypeOf(e),r=mw.get(o);if(r||(r=new Set,mw.set(o,r)),!r.has(t)){r.add(t);for(let i in n){let a=n[i];Object.defineProperty(o,i,{configurable:!0,enumerable:!1,get(){let s=a.bind(this);return Object.defineProperty(this,i,{configurable:!0,writable:!0,enumerable:!0,value:s}),s},set(s){Object.defineProperty(this,i,{configurable:!0,writable:!0,enumerable:!0,value:s})}})}}}var F=I("ZodType",(e,t)=>(M.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:Gr(e,"input"),output:Gr(e,"output")}}),e.toJSONSchema=Qf(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(n,o)=>Bm(e,n,o,{callee:e.parse}),e.safeParse=(n,o)=>Fm(e,n,o),e.parseAsync=async(n,o)=>qm(e,n,o,{callee:e.parseAsync}),e.safeParseAsync=async(n,o)=>Vm(e,n,o),e.spa=e.safeParseAsync,e.encode=(n,o)=>Hm(e,n,o),e.decode=(n,o)=>Zm(e,n,o),e.encodeAsync=async(n,o)=>Km(e,n,o),e.decodeAsync=async(n,o)=>Wm(e,n,o),e.safeEncode=(n,o)=>Jm(e,n,o),e.safeDecode=(n,o)=>Gm(e,n,o),e.safeEncodeAsync=async(n,o)=>Xm(e,n,o),e.safeDecodeAsync=async(n,o)=>Ym(e,n,o),gi(e,"ZodType",{check(...n){let o=this.def;return this.clone(A.mergeDefs(o,{checks:[...o.checks??[],...n.map(r=>typeof r=="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]}),{parent:!0})},with(...n){return this.check(...n)},clone(n,o){return Ve(this,n,o)},brand(){return this},register(n,o){return n.add(this,o),this},refine(n,o){return this.check(Fg(n,o))},superRefine(n,o){return this.check(Vg(n,o))},overwrite(n){return this.check(vt(n))},optional(){return fi(this)},exactOptional(){return Eg(this)},nullable(){return mi(this)},nullish(){return fi(mi(this))},nonoptional(n){return $g(this,n)},array(){return vi(this)},or(n){return Ed([this,n])},and(n){return mg(this,n)},transform(n){return od(this,xd(n))},default(n){return kg(this,n)},prefault(n){return Tg(this,n)},catch(n){return Pg(this,n)},pipe(n){return od(this,n)},readonly(){return Ug(this)},describe(n){let o=this.clone();return Oe.add(o,{description:n}),o},meta(...n){if(n.length===0)return Oe.get(this);let o=this.clone();return Oe.add(o,n[0]),o},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(n){return n(this)}}),Object.defineProperty(e,"description",{get(){return Oe.get(e)?.description},configurable:!0}),e)),id=I("_ZodString",(e,t)=>{Xn.init(e,t),F.init(e,t),e._zod.processJSONSchema=(o,r,i)=>em(e,o,r,i);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,gi(e,"_ZodString",{regex(...o){return this.check(Ur(...o))},includes(...o){return this.check(zr(...o))},startsWith(...o){return this.check(Br(...o))},endsWith(...o){return this.check(qr(...o))},min(...o){return this.check(Ft(...o))},max(...o){return this.check(Qn(...o))},length(...o){return this.check(er(...o))},nonempty(...o){return this.check(Ft(1,...o))},lowercase(o){return this.check(Lr(o))},uppercase(o){return this.check(Mr(o))},trim(){return this.check(Hr())},normalize(...o){return this.check(Vr(...o))},toLowerCase(){return this.check(Zr())},toUpperCase(){return this.check(Kr())},slugify(){return this.check(Wr())}})}),eo=I("ZodString",(e,t)=>{Xn.init(e,t),id.init(e,t),e.email=n=>e.check(Rs(ad,n)),e.url=n=>e.check(ci(yi,n)),e.jwt=n=>e.check(Bs(wd,n)),e.emoji=n=>e.check(ks(sd,n)),e.guid=n=>e.check(di(pi,n)),e.uuid=n=>e.check(Ss(Tt,n)),e.uuidv4=n=>e.check(Es(Tt,n)),e.uuidv6=n=>e.check(_s(Tt,n)),e.uuidv7=n=>e.check(xs(Tt,n)),e.nanoid=n=>e.check(As(dd,n)),e.guid=n=>e.check(di(pi,n)),e.cuid=n=>e.check(Ts(cd,n)),e.cuid2=n=>e.check($s(ud,n)),e.ulid=n=>e.check(Cs(ld,n)),e.base64=n=>e.check(Ls(vd,n)),e.base64url=n=>e.check(Ms(Id,n)),e.xid=n=>e.check(Os(pd,n)),e.ksuid=n=>e.check(Ps(fd,n)),e.ipv4=n=>e.check(Ns(md,n)),e.ipv6=n=>e.check(Ds(gd,n)),e.cidrv4=n=>e.check(js(yd,n)),e.cidrv6=n=>e.check(Us(hd,n)),e.e164=n=>e.check(zs(bd,n)),e.datetime=n=>e.check(Um(n)),e.date=n=>e.check(Lm(n)),e.time=n=>e.check(Mm(n)),e.duration=n=>e.check(zm(n))});function li(e){return mf(eo,e)}var ie=I("ZodStringFormat",(e,t)=>{oe.init(e,t),id.init(e,t)}),ad=I("ZodEmail",(e,t)=>{op.init(e,t),ie.init(e,t)});function gw(e){return Rs(ad,e)}var pi=I("ZodGUID",(e,t)=>{np.init(e,t),ie.init(e,t)});function yw(e){return di(pi,e)}var Tt=I("ZodUUID",(e,t)=>{rp.init(e,t),ie.init(e,t)});function hw(e){return Ss(Tt,e)}function vw(e){return Es(Tt,e)}function Iw(e){return _s(Tt,e)}function bw(e){return xs(Tt,e)}var yi=I("ZodURL",(e,t)=>{ip.init(e,t),ie.init(e,t)});function ww(e){return ci(yi,e)}function Rw(e){return ci(yi,{protocol:at.httpProtocol,hostname:at.domain,...A.normalizeParams(e)})}var sd=I("ZodEmoji",(e,t)=>{ap.init(e,t),ie.init(e,t)});function Sw(e){return ks(sd,e)}var dd=I("ZodNanoID",(e,t)=>{sp.init(e,t),ie.init(e,t)});function Ew(e){return As(dd,e)}var cd=I("ZodCUID",(e,t)=>{dp.init(e,t),ie.init(e,t)});function _w(e){return Ts(cd,e)}var ud=I("ZodCUID2",(e,t)=>{cp.init(e,t),ie.init(e,t)});function xw(e){return $s(ud,e)}var ld=I("ZodULID",(e,t)=>{up.init(e,t),ie.init(e,t)});function kw(e){return Cs(ld,e)}var pd=I("ZodXID",(e,t)=>{lp.init(e,t),ie.init(e,t)});function Aw(e){return Os(pd,e)}var fd=I("ZodKSUID",(e,t)=>{pp.init(e,t),ie.init(e,t)});function Tw(e){return Ps(fd,e)}var md=I("ZodIPv4",(e,t)=>{hp.init(e,t),ie.init(e,t)});function $w(e){return Ns(md,e)}var Qm=I("ZodMAC",(e,t)=>{Ip.init(e,t),ie.init(e,t)});function Cw(e){return yf(Qm,e)}var gd=I("ZodIPv6",(e,t)=>{vp.init(e,t),ie.init(e,t)});function Ow(e){return Ds(gd,e)}var yd=I("ZodCIDRv4",(e,t)=>{bp.init(e,t),ie.init(e,t)});function Pw(e){return js(yd,e)}var hd=I("ZodCIDRv6",(e,t)=>{wp.init(e,t),ie.init(e,t)});function Nw(e){return Us(hd,e)}var vd=I("ZodBase64",(e,t)=>{Sp.init(e,t),ie.init(e,t)});function Dw(e){return Ls(vd,e)}var Id=I("ZodBase64URL",(e,t)=>{Ep.init(e,t),ie.init(e,t)});function jw(e){return Ms(Id,e)}var bd=I("ZodE164",(e,t)=>{_p.init(e,t),ie.init(e,t)});function Uw(e){return zs(bd,e)}var wd=I("ZodJWT",(e,t)=>{xp.init(e,t),ie.init(e,t)});function Lw(e){return Bs(wd,e)}var to=I("ZodCustomStringFormat",(e,t)=>{kp.init(e,t),ie.init(e,t)});function Mw(e,t,n={}){return Jr(to,e,t,n)}function zw(e){return Jr(to,"hostname",at.hostname,e)}function Bw(e){return Jr(to,"hex",at.hex,e)}function qw(e,t){let n=t?.enc??"hex",o=`${e}_${n}`,r=at[o];if(!r)throw new Error(`Unrecognized hash format: ${o}`);return Jr(to,o,r,t)}var no=I("ZodNumber",(e,t)=>{ps.init(e,t),F.init(e,t),e._zod.processJSONSchema=(o,r,i)=>tm(e,o,r,i),gi(e,"ZodNumber",{gt(o,r){return this.check(kt(o,r))},gte(o,r){return this.check(Ze(o,r))},min(o,r){return this.check(Ze(o,r))},lt(o,r){return this.check(xt(o,r))},lte(o,r){return this.check(st(o,r))},max(o,r){return this.check(st(o,r))},int(o){return this.check(rd(o))},safe(o){return this.check(rd(o))},positive(o){return this.check(kt(0,o))},nonnegative(o){return this.check(Ze(0,o))},negative(o){return this.check(xt(0,o))},nonpositive(o){return this.check(st(0,o))},multipleOf(o,r){return this.check(vn(o,r))},step(o,r){return this.check(vn(o,r))},finite(){return this}});let n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function eg(e){return Rf(no,e)}var nr=I("ZodNumberFormat",(e,t)=>{Ap.init(e,t),no.init(e,t)});function rd(e){return Ef(nr,e)}function Fw(e){return _f(nr,e)}function Vw(e){return xf(nr,e)}function Hw(e){return kf(nr,e)}function Zw(e){return Af(nr,e)}var ro=I("ZodBoolean",(e,t)=>{ri.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>nm(e,n,o,r)});function tg(e){return Tf(ro,e)}var oo=I("ZodBigInt",(e,t)=>{fs.init(e,t),F.init(e,t),e._zod.processJSONSchema=(o,r,i)=>rm(e,o,r,i),e.gte=(o,r)=>e.check(Ze(o,r)),e.min=(o,r)=>e.check(Ze(o,r)),e.gt=(o,r)=>e.check(kt(o,r)),e.gte=(o,r)=>e.check(Ze(o,r)),e.min=(o,r)=>e.check(Ze(o,r)),e.lt=(o,r)=>e.check(xt(o,r)),e.lte=(o,r)=>e.check(st(o,r)),e.max=(o,r)=>e.check(st(o,r)),e.positive=o=>e.check(kt(BigInt(0),o)),e.negative=o=>e.check(xt(BigInt(0),o)),e.nonpositive=o=>e.check(st(BigInt(0),o)),e.nonnegative=o=>e.check(Ze(BigInt(0),o)),e.multipleOf=(o,r)=>e.check(vn(o,r));let n=e._zod.bag;e.minValue=n.minimum??null,e.maxValue=n.maximum??null,e.format=n.format??null});function Kw(e){return Cf(oo,e)}var Rd=I("ZodBigIntFormat",(e,t)=>{Tp.init(e,t),oo.init(e,t)});function Ww(e){return Pf(Rd,e)}function Jw(e){return Nf(Rd,e)}var ng=I("ZodSymbol",(e,t)=>{$p.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>om(e,n,o,r)});function Gw(e){return Df(ng,e)}var rg=I("ZodUndefined",(e,t)=>{Cp.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>am(e,n,o,r)});function Xw(e){return jf(rg,e)}var og=I("ZodNull",(e,t)=>{Op.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>im(e,n,o,r)});function ig(e){return Uf(og,e)}var ag=I("ZodAny",(e,t)=>{Pp.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>cm(e,n,o,r)});function Yw(){return Lf(ag)}var sg=I("ZodUnknown",(e,t)=>{Np.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>um(e,n,o,r)});function tr(){return Mf(sg)}var dg=I("ZodNever",(e,t)=>{Dp.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>dm(e,n,o,r)});function Sd(e){return zf(dg,e)}var cg=I("ZodVoid",(e,t)=>{jp.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>sm(e,n,o,r)});function Qw(e){return Bf(cg,e)}var hi=I("ZodDate",(e,t)=>{Up.init(e,t),F.init(e,t),e._zod.processJSONSchema=(o,r,i)=>lm(e,o,r,i),e.min=(o,r)=>e.check(Ze(o,r)),e.max=(o,r)=>e.check(st(o,r));let n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null});function eR(e){return qf(hi,e)}var ug=I("ZodArray",(e,t)=>{Lp.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>Sm(e,n,o,r),e.element=t.element,gi(e,"ZodArray",{min(n,o){return this.check(Ft(n,o))},nonempty(n){return this.check(Ft(1,n))},max(n,o){return this.check(Qn(n,o))},length(n,o){return this.check(er(n,o))},unwrap(){return this.element}})});function vi(e,t){return Hf(ug,e,t)}function tR(e){let t=e._zod.def.shape;return _d(Object.keys(t))}var Ii=I("ZodObject",(e,t)=>{Mp.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>Em(e,n,o,r),A.defineLazy(e,"shape",()=>t.shape),gi(e,"ZodObject",{keyof(){return _d(Object.keys(this._zod.def.shape))},catchall(n){return this.clone({...this._zod.def,catchall:n})},passthrough(){return this.clone({...this._zod.def,catchall:tr()})},loose(){return this.clone({...this._zod.def,catchall:tr()})},strict(){return this.clone({...this._zod.def,catchall:Sd()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(n){return A.extend(this,n)},safeExtend(n){return A.safeExtend(this,n)},merge(n){return A.merge(this,n)},pick(n){return A.pick(this,n)},omit(n){return A.omit(this,n)},partial(...n){return A.partial(kd,this,n[0])},required(...n){return A.required(Ad,this,n[0])}})});function nR(e,t){let n={type:"object",shape:e??{},...A.normalizeParams(t)};return new Ii(n)}function rR(e,t){return new Ii({type:"object",shape:e,catchall:Sd(),...A.normalizeParams(t)})}function oR(e,t){return new Ii({type:"object",shape:e,catchall:tr(),...A.normalizeParams(t)})}var bi=I("ZodUnion",(e,t)=>{oi.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>Ws(e,n,o,r),e.options=t.options});function Ed(e,t){return new bi({type:"union",options:e,...A.normalizeParams(t)})}var lg=I("ZodXor",(e,t)=>{bi.init(e,t),zp.init(e,t),e._zod.processJSONSchema=(n,o,r)=>Ws(e,n,o,r),e.options=t.options});function iR(e,t){return new lg({type:"union",options:e,inclusive:!1,...A.normalizeParams(t)})}var pg=I("ZodDiscriminatedUnion",(e,t)=>{bi.init(e,t),Bp.init(e,t)});function aR(e,t,n){return new pg({type:"union",options:t,discriminator:e,...A.normalizeParams(n)})}var fg=I("ZodIntersection",(e,t)=>{qp.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>_m(e,n,o,r)});function mg(e,t){return new fg({type:"intersection",left:e,right:t})}var gg=I("ZodTuple",(e,t)=>{ms.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>xm(e,n,o,r),e.rest=n=>e.clone({...e._zod.def,rest:n})});function yg(e,t,n){let o=t instanceof M,r=o?n:t,i=o?t:null;return new gg({type:"tuple",items:e,rest:i,...A.normalizeParams(r)})}var Yr=I("ZodRecord",(e,t)=>{Fp.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>km(e,n,o,r),e.keyType=t.keyType,e.valueType=t.valueType});function hg(e,t,n){return!t||!t._zod?new Yr({type:"record",keyType:li(),valueType:e,...A.normalizeParams(t)}):new Yr({type:"record",keyType:e,valueType:t,...A.normalizeParams(n)})}function sR(e,t,n){let o=Ve(e);return o._zod.values=void 0,new Yr({type:"record",keyType:o,valueType:t,...A.normalizeParams(n)})}function dR(e,t,n){return new Yr({type:"record",keyType:e,valueType:t,mode:"loose",...A.normalizeParams(n)})}var vg=I("ZodMap",(e,t)=>{Vp.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>wm(e,n,o,r),e.keyType=t.keyType,e.valueType=t.valueType,e.min=(...n)=>e.check(At(...n)),e.nonempty=n=>e.check(At(1,n)),e.max=(...n)=>e.check(In(...n)),e.size=(...n)=>e.check(Yn(...n))});function cR(e,t,n){return new vg({type:"map",keyType:e,valueType:t,...A.normalizeParams(n)})}var Ig=I("ZodSet",(e,t)=>{Hp.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>Rm(e,n,o,r),e.min=(...n)=>e.check(At(...n)),e.nonempty=n=>e.check(At(1,n)),e.max=(...n)=>e.check(In(...n)),e.size=(...n)=>e.check(Yn(...n))});function uR(e,t){return new Ig({type:"set",valueType:e,...A.normalizeParams(t)})}var Qr=I("ZodEnum",(e,t)=>{Zp.init(e,t),F.init(e,t),e._zod.processJSONSchema=(o,r,i)=>pm(e,o,r,i),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(o,r)=>{let i={};for(let a of o)if(n.has(a))i[a]=t.entries[a];else throw new Error(`Key ${a} not found in enum`);return new Qr({...t,checks:[],...A.normalizeParams(r),entries:i})},e.exclude=(o,r)=>{let i={...t.entries};for(let a of o)if(n.has(a))delete i[a];else throw new Error(`Key ${a} not found in enum`);return new Qr({...t,checks:[],...A.normalizeParams(r),entries:i})}});function _d(e,t){let n=Array.isArray(e)?Object.fromEntries(e.map(o=>[o,o])):e;return new Qr({type:"enum",entries:n,...A.normalizeParams(t)})}function lR(e,t){return new Qr({type:"enum",entries:e,...A.normalizeParams(t)})}var bg=I("ZodLiteral",(e,t)=>{Kp.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>fm(e,n,o,r),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 pR(e,t){return new bg({type:"literal",values:Array.isArray(e)?e:[e],...A.normalizeParams(t)})}var wg=I("ZodFile",(e,t)=>{Wp.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>ym(e,n,o,r),e.min=(n,o)=>e.check(At(n,o)),e.max=(n,o)=>e.check(In(n,o)),e.mime=(n,o)=>e.check(Fr(Array.isArray(n)?n:[n],o))});function fR(e){return Zf(wg,e)}var Rg=I("ZodTransform",(e,t)=>{Jp.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>bm(e,n,o,r),e._zod.parse=(n,o)=>{if(o.direction==="backward")throw new fn(e.constructor.name);n.addIssue=i=>{if(typeof i=="string")n.issues.push(A.issue(i,n.value,t));else{let a=i;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=n.value),a.inst??(a.inst=e),n.issues.push(A.issue(a))}};let r=t.transform(n.value,n);return r instanceof Promise?r.then(i=>(n.value=i,n.fallback=!0,n)):(n.value=r,n.fallback=!0,n)}});function xd(e){return new Rg({type:"transform",transform:e})}var kd=I("ZodOptional",(e,t)=>{gs.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>Js(e,n,o,r),e.unwrap=()=>e._zod.def.innerType});function fi(e){return new kd({type:"optional",innerType:e})}var Sg=I("ZodExactOptional",(e,t)=>{Gp.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>Js(e,n,o,r),e.unwrap=()=>e._zod.def.innerType});function Eg(e){return new Sg({type:"optional",innerType:e})}var _g=I("ZodNullable",(e,t)=>{Xp.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>Am(e,n,o,r),e.unwrap=()=>e._zod.def.innerType});function mi(e){return new _g({type:"nullable",innerType:e})}function mR(e){return fi(mi(e))}var xg=I("ZodDefault",(e,t)=>{Yp.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>$m(e,n,o,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function kg(e,t){return new xg({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():A.shallowClone(t)}})}var Ag=I("ZodPrefault",(e,t)=>{Qp.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>Cm(e,n,o,r),e.unwrap=()=>e._zod.def.innerType});function Tg(e,t){return new Ag({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():A.shallowClone(t)}})}var Ad=I("ZodNonOptional",(e,t)=>{ef.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>Tm(e,n,o,r),e.unwrap=()=>e._zod.def.innerType});function $g(e,t){return new Ad({type:"nonoptional",innerType:e,...A.normalizeParams(t)})}var Cg=I("ZodSuccess",(e,t)=>{tf.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>hm(e,n,o,r),e.unwrap=()=>e._zod.def.innerType});function gR(e){return new Cg({type:"success",innerType:e})}var Og=I("ZodCatch",(e,t)=>{nf.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>Om(e,n,o,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Pg(e,t){return new Og({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}var Ng=I("ZodNaN",(e,t)=>{rf.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>mm(e,n,o,r)});function yR(e){return Vf(Ng,e)}var wi=I("ZodPipe",(e,t)=>{ys.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>Pm(e,n,o,r),e.in=t.in,e.out=t.out});function od(e,t){return new wi({type:"pipe",in:e,out:t})}var Ri=I("ZodCodec",(e,t)=>{wi.init(e,t),ii.init(e,t)});function hR(e,t,n){return new Ri({type:"pipe",in:e,out:t,transform:n.decode,reverseTransform:n.encode})}function vR(e){let t=e._zod.def;return new Ri({type:"pipe",in:t.out,out:t.in,transform:t.reverseTransform,reverseTransform:t.transform})}var Dg=I("ZodPreprocess",(e,t)=>{wi.init(e,t),of.init(e,t)}),jg=I("ZodReadonly",(e,t)=>{af.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>Nm(e,n,o,r),e.unwrap=()=>e._zod.def.innerType});function Ug(e){return new jg({type:"readonly",innerType:e})}var Lg=I("ZodTemplateLiteral",(e,t)=>{sf.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>gm(e,n,o,r)});function IR(e,t){return new Lg({type:"template_literal",parts:e,...A.normalizeParams(t)})}var Mg=I("ZodLazy",(e,t)=>{uf.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>jm(e,n,o,r),e.unwrap=()=>e._zod.def.getter()});function zg(e){return new Mg({type:"lazy",getter:e})}var Bg=I("ZodPromise",(e,t)=>{cf.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>Dm(e,n,o,r),e.unwrap=()=>e._zod.def.innerType});function bR(e){return new Bg({type:"promise",innerType:e})}var qg=I("ZodFunction",(e,t)=>{df.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>Im(e,n,o,r)});function wR(e){return new qg({type:"function",input:Array.isArray(e?.input)?yg(e?.input):e?.input??vi(tr()),output:e?.output??tr()})}var Si=I("ZodCustom",(e,t)=>{lf.init(e,t),F.init(e,t),e._zod.processJSONSchema=(n,o,r)=>vm(e,n,o,r)});function RR(e){let t=new se({check:"custom"});return t._zod.check=e,t}function SR(e,t){return Kf(Si,e??(()=>!0),t)}function Fg(e,t={}){return Wf(Si,e,t)}function Vg(e,t){return Jf(e,t)}var ER=Gf,_R=Xf;function xR(e,t={}){let n=new Si({type:"custom",check:"custom",fn:o=>o instanceof e,abort:!0,...A.normalizeParams(t)});return n._zod.bag.Class=e,n._zod.check=o=>{o.value instanceof e||o.issues.push({code:"invalid_type",expected:e.name,input:o.value,inst:n,path:[...n._zod.def.path??[]]})},n}var kR=(...e)=>Yf({Codec:Ri,Boolean:ro,String:eo},...e);function AR(e){let t=zg(()=>Ed([li(e),eg(),tg(),ig(),vi(t),hg(li(),t)]));return t}function TR(e,t){return new Dg({type:"pipe",in:xd(e),out:t})}var fC={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};function mC(e){he({customError:e})}function gC(){return he().customError}var Hg;Hg||(Hg={});var C={...ui,...Ys,iso:Xr},yC=new Set(["$schema","$ref","$defs","definitions","$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor","type","enum","const","anyOf","oneOf","allOf","not","properties","required","additionalProperties","patternProperties","propertyNames","minProperties","maxProperties","items","prefixItems","additionalItems","minItems","maxItems","uniqueItems","contains","minContains","maxContains","minLength","maxLength","pattern","format","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","description","default","contentEncoding","contentMediaType","contentSchema","unevaluatedItems","unevaluatedProperties","if","then","else","dependentSchemas","dependentRequired","nullable","readOnly"]);function hC(e,t){let n=e.$schema;return n==="https://json-schema.org/draft/2020-12/schema"?"draft-2020-12":n==="http://json-schema.org/draft-07/schema#"?"draft-7":n==="http://json-schema.org/draft-04/schema#"?"draft-4":t??"draft-2020-12"}function vC(e,t){if(!e.startsWith("#"))throw new Error("External $ref is not supported, only local refs (#/...) are allowed");let n=e.slice(1).split("/").filter(Boolean);if(n.length===0)return t.rootSchema;let o=t.version==="draft-2020-12"?"$defs":"definitions";if(n[0]===o){let r=n[1];if(!r||!t.defs[r])throw new Error(`Reference not found: ${e}`);return t.defs[r]}throw new Error(`Reference not found: ${e}`)}function $R(e,t){if(e.not!==void 0){if(typeof e.not=="object"&&Object.keys(e.not).length===0)return C.never();throw new Error("not is not supported in Zod (except { not: {} } for never)")}if(e.unevaluatedItems!==void 0)throw new Error("unevaluatedItems is not supported");if(e.unevaluatedProperties!==void 0)throw new Error("unevaluatedProperties is not supported");if(e.if!==void 0||e.then!==void 0||e.else!==void 0)throw new Error("Conditional schemas (if/then/else) are not supported");if(e.dependentSchemas!==void 0||e.dependentRequired!==void 0)throw new Error("dependentSchemas and dependentRequired are not supported");if(e.$ref){let r=e.$ref;if(t.refs.has(r))return t.refs.get(r);if(t.processing.has(r))return C.lazy(()=>{if(!t.refs.has(r))throw new Error(`Circular reference not resolved: ${r}`);return t.refs.get(r)});t.processing.add(r);let i=vC(r,t),a=Ue(i,t);return t.refs.set(r,a),t.processing.delete(r),a}if(e.enum!==void 0){let r=e.enum;if(t.version==="openapi-3.0"&&e.nullable===!0&&r.length===1&&r[0]===null)return C.null();if(r.length===0)return C.never();if(r.length===1)return C.literal(r[0]);if(r.every(a=>typeof a=="string"))return C.enum(r);let i=r.map(a=>C.literal(a));return i.length<2?i[0]:C.union([i[0],i[1],...i.slice(2)])}if(e.const!==void 0)return C.literal(e.const);let n=e.type;if(Array.isArray(n)){let r=n.map(i=>{let a={...e,type:i};return $R(a,t)});return r.length===0?C.never():r.length===1?r[0]:C.union(r)}if(!n)return C.any();let o;switch(n){case"string":{let r=C.string();if(e.format){let i=e.format;i==="email"?r=r.check(C.email()):i==="uri"||i==="uri-reference"?r=r.check(C.url()):i==="uuid"||i==="guid"?r=r.check(C.uuid()):i==="date-time"?r=r.check(C.iso.datetime()):i==="date"?r=r.check(C.iso.date()):i==="time"?r=r.check(C.iso.time()):i==="duration"?r=r.check(C.iso.duration()):i==="ipv4"?r=r.check(C.ipv4()):i==="ipv6"?r=r.check(C.ipv6()):i==="mac"?r=r.check(C.mac()):i==="cidr"?r=r.check(C.cidrv4()):i==="cidr-v6"?r=r.check(C.cidrv6()):i==="base64"?r=r.check(C.base64()):i==="base64url"?r=r.check(C.base64url()):i==="e164"?r=r.check(C.e164()):i==="jwt"?r=r.check(C.jwt()):i==="emoji"?r=r.check(C.emoji()):i==="nanoid"?r=r.check(C.nanoid()):i==="cuid"?r=r.check(C.cuid()):i==="cuid2"?r=r.check(C.cuid2()):i==="ulid"?r=r.check(C.ulid()):i==="xid"?r=r.check(C.xid()):i==="ksuid"&&(r=r.check(C.ksuid()))}typeof e.minLength=="number"&&(r=r.min(e.minLength)),typeof e.maxLength=="number"&&(r=r.max(e.maxLength)),e.pattern&&(r=r.regex(new RegExp(e.pattern))),o=r;break}case"number":case"integer":{let r=n==="integer"?C.number().int():C.number();typeof e.minimum=="number"&&(r=r.min(e.minimum)),typeof e.maximum=="number"&&(r=r.max(e.maximum)),typeof e.exclusiveMinimum=="number"?r=r.gt(e.exclusiveMinimum):e.exclusiveMinimum===!0&&typeof e.minimum=="number"&&(r=r.gt(e.minimum)),typeof e.exclusiveMaximum=="number"?r=r.lt(e.exclusiveMaximum):e.exclusiveMaximum===!0&&typeof e.maximum=="number"&&(r=r.lt(e.maximum)),typeof e.multipleOf=="number"&&(r=r.multipleOf(e.multipleOf)),o=r;break}case"boolean":{o=C.boolean();break}case"null":{o=C.null();break}case"object":{let r={},i=e.properties||{},a=new Set(e.required||[]);for(let[d,c]of Object.entries(i)){let u=Ue(c,t);r[d]=a.has(d)?u:u.optional()}if(e.propertyNames){let d=Ue(e.propertyNames,t),c=e.additionalProperties&&typeof e.additionalProperties=="object"?Ue(e.additionalProperties,t):C.any();if(Object.keys(r).length===0){o=C.record(d,c);break}let u=C.object(r).passthrough(),l=C.looseRecord(d,c);o=C.intersection(u,l);break}if(e.patternProperties){let d=e.patternProperties,c=Object.keys(d),u=[];for(let f of c){let g=Ue(d[f],t),p=C.string().regex(new RegExp(f));u.push(C.looseRecord(p,g))}let l=[];if(Object.keys(r).length>0&&l.push(C.object(r).passthrough()),l.push(...u),l.length===0)o=C.object({}).passthrough();else if(l.length===1)o=l[0];else{let f=C.intersection(l[0],l[1]);for(let g=2;g<l.length;g++)f=C.intersection(f,l[g]);o=f}break}let s=C.object(r);e.additionalProperties===!1?o=s.strict():typeof e.additionalProperties=="object"?o=s.catchall(Ue(e.additionalProperties,t)):o=s.passthrough();break}case"array":{let r=e.prefixItems,i=e.items;if(r&&Array.isArray(r)){let a=r.map(d=>Ue(d,t)),s=i&&typeof i=="object"&&!Array.isArray(i)?Ue(i,t):void 0;s?o=C.tuple(a).rest(s):o=C.tuple(a),typeof e.minItems=="number"&&(o=o.check(C.minLength(e.minItems))),typeof e.maxItems=="number"&&(o=o.check(C.maxLength(e.maxItems)))}else if(Array.isArray(i)){let a=i.map(d=>Ue(d,t)),s=e.additionalItems&&typeof e.additionalItems=="object"?Ue(e.additionalItems,t):void 0;s?o=C.tuple(a).rest(s):o=C.tuple(a),typeof e.minItems=="number"&&(o=o.check(C.minLength(e.minItems))),typeof e.maxItems=="number"&&(o=o.check(C.maxLength(e.maxItems)))}else if(i!==void 0){let a=Ue(i,t),s=C.array(a);typeof e.minItems=="number"&&(s=s.min(e.minItems)),typeof e.maxItems=="number"&&(s=s.max(e.maxItems)),o=s}else o=C.array(C.any());break}default:throw new Error(`Unsupported type: ${n}`)}return o}function Ue(e,t){if(typeof e=="boolean")return e?C.any():C.never();let n=$R(e,t),o=e.type||e.enum!==void 0||e.const!==void 0;if(e.anyOf&&Array.isArray(e.anyOf)){let s=e.anyOf.map(c=>Ue(c,t)),d=C.union(s);n=o?C.intersection(n,d):d}if(e.oneOf&&Array.isArray(e.oneOf)){let s=e.oneOf.map(c=>Ue(c,t)),d=C.xor(s);n=o?C.intersection(n,d):d}if(e.allOf&&Array.isArray(e.allOf))if(e.allOf.length===0)n=o?n:C.any();else{let s=o?n:Ue(e.allOf[0],t),d=o?0:1;for(let c=d;c<e.allOf.length;c++)s=C.intersection(s,Ue(e.allOf[c],t));n=s}e.nullable===!0&&t.version==="openapi-3.0"&&(n=C.nullable(n)),e.readOnly===!0&&(n=C.readonly(n)),e.default!==void 0&&(n=n.default(e.default));let r={},i=["$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor"];for(let s of i)s in e&&(r[s]=e[s]);let a=["contentEncoding","contentMediaType","contentSchema"];for(let s of a)s in e&&(r[s]=e[s]);for(let s of Object.keys(e))yC.has(s)||(r[s]=e[s]);return Object.keys(r).length>0&&t.registry.add(n,r),e.description&&(n=n.describe(e.description)),n}function CR(e,t){if(typeof e=="boolean")return e?C.any():C.never();let n;try{n=JSON.parse(JSON.stringify(e))}catch{throw new Error("fromJSONSchema input is not valid JSON (possibly cyclic); use $defs/$ref for recursive schemas")}let o=hC(n,t?.defaultTarget),r=n.$defs||n.definitions||{},i={version:o,defs:r,refs:new Map,processing:new Set,rootSchema:n,registry:t?.registry??Oe};return Ue(n,i)}var Zg={};Mt(Zg,{bigint:()=>RC,boolean:()=>wC,date:()=>SC,number:()=>bC,string:()=>IC});function IC(e){return gf(eo,e)}function bC(e){return Sf(no,e)}function wC(e){return $f(ro,e)}function RC(e){return Of(oo,e)}function SC(e){return Ff(hi,e)}he(hs());var Sn=16384,OR=512,We=1024,Ei=256,EC=16;var _C=8192,H=h.string().max(Sn),ue=H.min(1).max(OR).refine(e=>e.trim()===e,"identifier cannot have outer whitespace");function PR(e){let t=[{value:e,depth:0}],n=new Set,o=0;for(;t.length>0;){let r=t.pop();if(!r)continue;if(o+=1,o>_C)return!1;let i=r.value;if(r.leave){n.delete(i);continue}if(i===void 0)return!1;if(i===null||typeof i=="boolean")continue;if(typeof i=="string"){if(i.length>Sn)return!1;continue}if(typeof i=="number"){if(!Number.isFinite(i))return!1;continue}if(typeof i!="object"||r.depth>=EC||n.has(i))return!1;if(n.add(i),t.push({value:i,depth:r.depth,leave:!0}),Array.isArray(i)){if(i.length>We)return!1;for(let d of i)t.push({value:d,depth:r.depth+1});continue}let a=Object.getPrototypeOf(i);if(a!==Object.prototype&&a!==null)return!1;let s=Object.keys(i);if(s.length>Ei)return!1;for(let d of s){if(d.length>OR)return!1;t.push({value:i[d],depth:r.depth+1})}}return!0}var io=h.custom(PR,{message:"value exceeds the contract bounds or is not finite JSON"}),Kg=h.custom(e=>typeof e=="object"&&e!==null&&!Array.isArray(e)&&PR(e),{message:"metadata exceeds the contract bounds or is not a JSON object"});var xC=new Set(["__proto__","constructor","prototype"]),Wg=ue.refine(e=>!xC.has(e),"interaction field name is reserved"),_i={name:Wg,label:H.min(1),required:h.boolean().optional()},kC=h.discriminatedUnion("type",[h.strictObject({..._i,type:h.literal("text"),multiline:h.boolean().optional(),placeholder:H.optional(),maxLength:h.number().int().positive().max(Sn).optional(),default:H.optional()}),h.strictObject({..._i,type:h.literal("number"),min:h.number().finite().optional(),max:h.number().finite().optional(),default:h.number().finite().optional()}),h.strictObject({..._i,type:h.literal("boolean"),default:h.boolean().optional()}),h.strictObject({..._i,type:h.literal("select"),options:h.array(h.strictObject({value:ue,label:H.min(1),description:H.optional()})).min(1).max(We),multi:h.boolean().optional(),allowCustom:h.boolean().optional(),default:h.array(ue).max(We).optional()}),h.strictObject({..._i,type:h.literal("secret"),placeholder:H.optional(),maxLength:h.number().int().positive().max(Sn).optional()})]).superRefine((e,t)=>{if(e.type==="text"&&e.default!==void 0&&e.maxLength!==void 0&&e.default.length>e.maxLength){t.addIssue({code:"custom",path:["default"],message:"text field default exceeds maxLength"});return}if(e.type==="number"){e.min!==void 0&&e.max!==void 0&&e.min>e.max&&t.addIssue({code:"custom",path:["max"],message:"number field max must be greater than or equal to min"}),e.default!==void 0&&e.min!==void 0&&e.default<e.min&&t.addIssue({code:"custom",path:["default"],message:"number field default must be greater than or equal to min"}),e.default!==void 0&&e.max!==void 0&&e.default>e.max&&t.addIssue({code:"custom",path:["default"],message:"number field default must be less than or equal to max"});return}if(e.type!=="select")return;let n=e.options.map(r=>r.value);if(new Set(n).size!==n.length&&t.addIssue({code:"custom",path:["options"],message:"select option values must be unique"}),e.default===void 0)return;new Set(e.default).size!==e.default.length&&t.addIssue({code:"custom",path:["default"],message:"select default values must be unique"}),!e.multi&&e.default.length>1&&t.addIssue({code:"custom",path:["default"],message:"single-select default may contain at most one value"}),e.required&&e.default.length===0&&t.addIssue({code:"custom",path:["default"],message:"required select default must contain a value"});let o=new Set(n);for(let r of e.default)o.has(r)||e.allowCustom===!0&&r.trim().length>0||t.addIssue({code:"custom",path:["default"],message:`select default contains unknown option "${r}"`})}),Td=h.strictObject({fields:h.array(kC).max(We)}).superRefine((e,t)=>{let n=e.fields.map(o=>o.name);new Set(n).size!==n.length&&t.addIssue({code:"custom",path:["fields"],message:"interaction field names must be unique"})}),AC=h.enum(["text","number","boolean","select","secret"]),Jg=h.enum(["interaction","session","persistent"]),Az=h.strictObject({kinds:h.array(ue).min(1).max(We),answerFieldTypes:h.array(AC).min(1).max(We),responseScopes:h.array(Jg).min(1).max(We),secretAnswers:h.boolean(),concurrentRequests:h.boolean(),replay:h.boolean(),responseIdempotency:h.boolean()}).superRefine((e,t)=>{e.answerFieldTypes.includes("secret")!==e.secretAnswers&&t.addIssue({code:"custom",path:["secretAnswers"],message:"secretAnswers must agree with the secret answer field capability"}),new Set(e.kinds).size!==e.kinds.length&&t.addIssue({code:"custom",path:["kinds"],message:"interaction kinds must be unique"}),new Set(e.answerFieldTypes).size!==e.answerFieldTypes.length&&t.addIssue({code:"custom",path:["answerFieldTypes"],message:"interaction answer field types must be unique"}),new Set(e.responseScopes).size!==e.responseScopes.length&&t.addIssue({code:"custom",path:["responseScopes"],message:"interaction response scopes must be unique"})});var TC=h.strictObject({kind:h.literal("secret_handle"),handleId:ue,oneUse:h.literal(!0)}),$C=h.union([H,h.number().finite(),h.boolean(),h.array(H).max(We),TC]),rr=h.record(Wg,$C).superRefine((e,t)=>{Object.keys(e).length>Ei&&t.addIssue({code:"custom",message:"interaction data has too many fields"})}).transform(e=>{let t=Object.create(null);for(let n of Object.keys(e))t[n]=e[n];return t}),NR=h.discriminatedUnion("outcome",[h.strictObject({outcome:h.literal("accepted"),data:rr.optional()}),h.strictObject({outcome:h.literal("declined"),data:rr.optional()}),h.strictObject({outcome:h.literal("cancelled"),data:rr.optional()})]);function CC(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Cd(e,...t){if(!CC(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error("Uint8Array expected of length "+t+", got length="+e.length)}function Gg(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function DR(e,t){Cd(e);let n=t.outputLen;if(e.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}function xi(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function Od(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function It(e,t){return e<<32-t|e>>>t}function OC(e){if(typeof e!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(e))}function Xg(e){return typeof e=="string"&&(e=OC(e)),Cd(e),e}var $d=class{};function jR(e){let t=o=>e().update(Xg(o)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function PC(e,t,n,o){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,n,o);let r=BigInt(32),i=BigInt(4294967295),a=Number(n>>r&i),s=Number(n&i),d=o?4:0,c=o?0:4;e.setUint32(t+d,a,o),e.setUint32(t+c,s,o)}function UR(e,t,n){return e&t^~e&n}function LR(e,t,n){return e&t^e&n^t&n}var Pd=class extends $d{constructor(t,n,o,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=t,this.outputLen=n,this.padOffset=o,this.isLE=r,this.buffer=new Uint8Array(t),this.view=Od(this.buffer)}update(t){Gg(this),t=Xg(t),Cd(t);let{view:n,buffer:o,blockLen:r}=this,i=t.length;for(let a=0;a<i;){let s=Math.min(r-this.pos,i-a);if(s===r){let d=Od(t);for(;r<=i-a;a+=r)this.process(d,a);continue}o.set(t.subarray(a,a+s),this.pos),this.pos+=s,a+=s,this.pos===r&&(this.process(n,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){Gg(this),DR(t,this),this.finished=!0;let{buffer:n,view:o,blockLen:r,isLE:i}=this,{pos:a}=this;n[a++]=128,xi(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(o,0),a=0);for(let l=a;l<r;l++)n[l]=0;PC(o,r-8,BigInt(this.length*8),i),this.process(o,0);let s=Od(t),d=this.outputLen;if(d%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let c=d/4,u=this.get();if(c>u.length)throw new Error("_sha2: outputLen bigger than state");for(let l=0;l<c;l++)s.setUint32(4*l,u[l],i)}digest(){let{buffer:t,outputLen:n}=this;this.digestInto(t);let o=t.slice(0,n);return this.destroy(),o}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:n,buffer:o,length:r,finished:i,destroyed:a,pos:s}=this;return t.destroyed=a,t.finished=i,t.length=r,t.pos=s,r%n&&t.buffer.set(o),t}clone(){return this._cloneInto()}},Ht=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var NC=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),En=new Uint32Array(64),Nd=class extends Pd{constructor(t=32){super(64,t,8,!1),this.A=Ht[0]|0,this.B=Ht[1]|0,this.C=Ht[2]|0,this.D=Ht[3]|0,this.E=Ht[4]|0,this.F=Ht[5]|0,this.G=Ht[6]|0,this.H=Ht[7]|0}get(){let{A:t,B:n,C:o,D:r,E:i,F:a,G:s,H:d}=this;return[t,n,o,r,i,a,s,d]}set(t,n,o,r,i,a,s,d){this.A=t|0,this.B=n|0,this.C=o|0,this.D=r|0,this.E=i|0,this.F=a|0,this.G=s|0,this.H=d|0}process(t,n){for(let l=0;l<16;l++,n+=4)En[l]=t.getUint32(n,!1);for(let l=16;l<64;l++){let f=En[l-15],g=En[l-2],p=It(f,7)^It(f,18)^f>>>3,v=It(g,17)^It(g,19)^g>>>10;En[l]=v+En[l-7]+p+En[l-16]|0}let{A:o,B:r,C:i,D:a,E:s,F:d,G:c,H:u}=this;for(let l=0;l<64;l++){let f=It(s,6)^It(s,11)^It(s,25),g=u+f+UR(s,d,c)+NC[l]+En[l]|0,v=(It(o,2)^It(o,13)^It(o,22))+LR(o,r,i)|0;u=c,c=d,d=s,s=a+g|0,a=i,i=r,r=o,o=g+v|0}o=o+this.A|0,r=r+this.B|0,i=i+this.C|0,a=a+this.D|0,s=s+this.E|0,d=d+this.F|0,c=c+this.G|0,u=u+this.H|0,this.set(o,r,i,a,s,d,c,u)}roundClean(){xi(En)}destroy(){this.set(0,0,0,0,0,0,0,0),xi(this.buffer)}};var MR=jR(()=>new Nd);var zR=MR;var DC=/^sha256:[a-f0-9]{64}$/,jC=/^(?:[a-f0-9]{40}|[a-f0-9]{64})$/,UC=/^[A-Za-z_][A-Za-z0-9_]*$/,LC=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,MC=/^[a-z0-9][a-z0-9!#$&^_.+-]{0,126}\/[a-z0-9][a-z0-9!#$&^_.+-]{0,126}$/,BR=/^[A-Za-z0-9][A-Za-z0-9_.-]{0,99}$/,ny=/(?:^|[_-])(?:api[_-]?key|access[_-]?key|private[_-]?key|token|secret|password|credentials?|authorization|cookie|database[_-]?url|dsn|pat)(?:[_-]|$)/i,zC=/(?:\bsk[-_][-_A-Za-z0-9]{10,}\b|\bgh[pousr]_[A-Za-z0-9]{12,}\b|\bgithub_pat_[A-Za-z0-9_]{12,}\b|\bAKIA[A-Z0-9]{12,}\b|-----BEGIN [A-Z ]*PRIVATE KEY-----|\bBearer\s+\S+)/,BC=/[\u0000-\u001f\u007f]/;var rt=h.string().regex(DC),Jz=h.string().regex(jC),qC=h.string().regex(UC),FC=h.string().regex(LC),Gz=h.string().regex(MC);function VC(e){let t=zR(e);return`sha256:${Array.from(t,o=>o.toString(16).padStart(2,"0")).join("")}`}function HC(e){if(!ey(e))throw new Error("candidate document must be finite, acyclic RFC 8785 JSON");return Yg(e)}function ZC(e){return new TextEncoder().encode(HC(e))}function ao(e){return VC(ZC(e))}function Yg(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"?JSON.stringify(e):Array.isArray(e)?`[${e.map(Yg).join(",")}]`:`{${Object.keys(e).sort().map(t=>`${JSON.stringify(t)}:${Yg(e[t])}`).join(",")}}`}function Qg(e){for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n>=55296&&n<=56319){let o=e.charCodeAt(t+1);if(!(o>=56320&&o<=57343))return!1;t++}else if(n>=56320&&n<=57343)return!1}return!0}function ey(e,t=new Set){if(e===null||typeof e=="boolean")return!0;if(typeof e=="string")return Qg(e);if(typeof e=="number")return Number.isFinite(e);if(typeof e!="object"||t.has(e))return!1;let n=Object.getPrototypeOf(e);if(!Array.isArray(e)&&n!==Object.prototype&&n!==null)return!1;let o=new Set(t).add(e);return Array.isArray(e)?e.every(r=>ey(r,o)):Object.entries(e).every(([r,i])=>Qg(r)&&ey(i,o))}function KC(e){try{let t=new URL(e);return t.username!==""||t.password!==""?!0:[...t.searchParams.keys()].some(n=>ny.test(n))}catch{return!1}}function WC(e){return zC.test(e)||KC(e)}function JC(e){return!BC.test(e)&&Qg(e)&&!WC(e)}var GC=h.object({kind:h.literal("public"),value:h.string().refine(JC,"candidate config cannot carry credentials; the evaluator owns model authorization")}).strict();function qR(e){return h.record(e,GC).superRefine((t,n)=>{for(let o of Object.keys(t))ny.test(o)&&n.addIssue({code:"custom",path:[o],message:"candidate config cannot declare credential-bearing names"})})}var Xz=qR(qC),Yz=qR(FC),Qz=h.record(h.string(),h.unknown()).superRefine((e,t)=>{ty(e)&&t.addIssue({code:"custom",message:"metadata must not contain credential-bearing keys"})});function ty(e,t=new Set){if(e===null||typeof e!="object"||t.has(e))return!1;let n=new Set(t).add(e);if(Array.isArray(e))return e.some(o=>ty(o,n));for(let[o,r]of Object.entries(e))if(ny.test(o)||ty(r,n))return!0;return!1}var eB=h.object({kind:h.literal("github"),owner:h.string().regex(BR).refine(e=>e!=="."&&e!==".."),repo:h.string().regex(BR).refine(e=>e!=="."&&e!=="..")}).strict();var FR={Question:"question",Permission:"permission",Plan:"plan"},VR="grant";var HR=h.enum(["allow_once","allow_session","allow_always","deny"]);function ZR(e,t){let n=[],o=Td.safeParse(e);if(!o.success)return{ok:!1,errors:o.error.issues.map(d=>d.message)};if(t!==void 0&&(!t||typeof t!="object"||Array.isArray(t)))return{ok:!1,errors:["interaction data must be an object"]};let r=t??Object.create(null),i=Object.getPrototypeOf(r);if(i!==Object.prototype&&i!==null)return{ok:!1,errors:["interaction data must be a plain object"]};if(Object.keys(r).length>Ei)return{ok:!1,errors:["interaction data has too many fields"]};let a=o.data,s=new Set(a.fields.map(d=>d.name));for(let d of Object.keys(r)){if(d.length>512){n.push(`unknown field "${d}"`);continue}let c=r[d];if(typeof c=="string"&&c.length>Sn)n.push(`field "${d}" exceeds the contract string bound`);else if(Array.isArray(c)){c.length>We&&n.push(`field "${d}" has too many values`);for(let u of c)if(typeof u!="string"||u.length>Sn){n.push(`field "${d}" contains an invalid bounded value`);break}}else if(c&&typeof c=="object"){let u=Object.getPrototypeOf(c);(u!==Object.prototype&&u!==null||Object.keys(c).length>3)&&n.push(`field "${d}" contains an invalid object value`)}s.has(d)||n.push(`unknown field "${d}"`)}for(let d of a.fields){let c=Object.hasOwn(r,d.name),u=c?r[d.name]:void 0;if(!(c&&u!==void 0&&u!==null&&!(typeof u=="string"&&u===""))){d.required&&n.push(`missing required field "${d.name}"`);continue}switch(d.type){case"text":typeof u!="string"?n.push(`field "${d.name}" must be a string`):d.maxLength!==void 0&&u.length>d.maxLength&&n.push(`field "${d.name}" exceeds maxLength ${d.maxLength}`);break;case"secret":{let f=typeof u=="object"&&u!==null&&!Array.isArray(u)&&Object.keys(u).length===3&&(Object.getPrototypeOf(u)===Object.prototype||Object.getPrototypeOf(u)===null)&&Object.hasOwn(u,"kind")&&Object.hasOwn(u,"handleId")&&Object.hasOwn(u,"oneUse")&&u.kind==="secret_handle"&&u.oneUse===!0&&ue.safeParse(u.handleId).success;typeof u!="string"&&!f?n.push(`field "${d.name}" must be a string or one-use secret handle`):typeof u=="string"&&d.maxLength!==void 0&&u.length>d.maxLength&&n.push(`field "${d.name}" exceeds maxLength ${d.maxLength}`);break}case"number":typeof u!="number"||!Number.isFinite(u)?n.push(`field "${d.name}" must be a finite number`):(d.min!==void 0&&u<d.min&&n.push(`field "${d.name}" below min ${d.min}`),d.max!==void 0&&u>d.max&&n.push(`field "${d.name}" above max ${d.max}`));break;case"boolean":typeof u!="boolean"&&n.push(`field "${d.name}" must be a boolean`);break;case"select":{if(!Array.isArray(u)){n.push(`field "${d.name}" must be an array of option values`);break}if(u.length>We){n.push(`field "${d.name}" has too many option values`);break}!d.multi&&u.length>1&&n.push(`field "${d.name}" accepts a single value`),d.required&&u.length===0&&n.push(`field "${d.name}" requires a selection`);let f=new Set(d.options.map(g=>g.value));for(let g of u)if(!f.has(g)){if(d.allowCustom===!0){(typeof g!="string"||g.trim()==="")&&n.push(`field "${d.name}" has blank write-in value`);continue}n.push(`field "${d.name}" has invalid option "${g}"`)}break}}}return n.length===0?{ok:!0}:{ok:!1,errors:n}}function XC(e,t){let n=new Set(e.fields.filter(o=>o.type==="secret").map(o=>o.name));return Object.keys(t.data??{}).filter(o=>n.has(o)).map(o=>`field "${o}" is secret and cannot ride a ${t.outcome} resolution`)}function KR(e,t){if(t.outcome!=="accepted"){let d=XC(e.answerSpec,t);return Object.keys(t.data??{}).length>0&&d.push(`a ${t.outcome} resolution cannot carry answer fields`),d}let n=ZR(e.answerSpec,t.data),o=n.ok?[]:[...n.errors];if(e.kind!==FR.Permission)return o;let r=t.data?.[VR];if(!Array.isArray(r)||r.length!==1)return o.push('permission response must select exactly one "grant" value'),o;let i=HR.safeParse(r[0]);if(!i.success)return o.push(`permission response has invalid grant "${String(r[0])}"`),o;if(i.data==="deny")return o;let a={allow_once:"interaction",allow_session:"session",allow_always:"persistent",deny:"interaction"};return new Set(e.responseScopes??["interaction"]).has(a[i.data])||o.push(`permission grant "${i.data}" exceeds the request's response scopes`),o}var WR=["accepted","declined","cancelled"],YC=h.discriminatedUnion("type",[h.strictObject({type:h.literal("tool"),toolName:ue,input:io.optional()}),h.strictObject({type:h.literal("command"),command:H}),h.strictObject({type:h.literal("file"),path:H,preview:H.optional()}),h.strictObject({type:h.literal("resource"),uri:H})]),QC=h.enum(WR),ry=h.strictObject({runId:ue,provider:ue,environmentId:ue,sessionId:ue,executionId:ue,interactionId:ue}),yB=ry.omit({interactionId:!0}),oy=h.strictObject({...ry.shape,requestDigest:rt}),JR=h.strictObject({id:ue,kind:ue,title:H.min(1),body:H.optional(),subject:YC.optional(),answerSpec:Td,responseScopes:h.array(Jg).min(1).max(We).optional(),allowedOutcomes:h.array(QC).min(1).max(WR.length).optional(),default:NR.optional(),timeoutMs:h.number().int().positive().max(Number.MAX_SAFE_INTEGER).optional(),onTimeout:h.enum(["default","fail","wait"]).optional(),binding:ry});function eO(e){let t=JR.parse(e);return tO(t),ao(t)}function tO(e){let t=new Set(e.answerSpec.fields.filter(n=>n.type==="secret").map(n=>n.name));for(let n of Object.keys(e.default?.data??{}))if(t.has(n))throw new Error("secret answers cannot be embedded in interaction defaults")}var GR=h.strictObject({...JR.shape,requestDigest:rt}).superRefine((e,t)=>{if(e.binding.interactionId!==e.id&&t.addIssue({code:"custom",path:["binding","interactionId"],message:"interaction binding must name the request id"}),e.responseScopes&&new Set(e.responseScopes).size!==e.responseScopes.length&&t.addIssue({code:"custom",path:["responseScopes"],message:"interaction response scopes must be unique"}),e.allowedOutcomes&&new Set(e.allowedOutcomes).size!==e.allowedOutcomes.length&&t.addIssue({code:"custom",path:["allowedOutcomes"],message:"interaction outcomes must be unique"}),e.onTimeout==="default"&&e.default===void 0&&t.addIssue({code:"custom",path:["default"],message:"onTimeout=default requires a default resolution"}),e.default&&e.allowedOutcomes&&!e.allowedOutcomes.includes(e.default.outcome)&&t.addIssue({code:"custom",path:["default","outcome"],message:"default outcome is not allowed by the request"}),e.default){for(let a of KR(e,e.default))t.addIssue({code:"custom",path:["default"],message:a});let i=new Set(e.answerSpec.fields.filter(a=>a.type==="secret").map(a=>a.name));for(let a of Object.keys(e.default.data??{}))i.has(a)&&t.addIssue({code:"custom",path:["default","data",a],message:"secret answers cannot be embedded in interaction defaults"})}let{requestDigest:n,...o}=e;Object.keys(e.default?.data??{}).some(i=>e.answerSpec.fields.some(a=>a.type==="secret"&&a.name===i))||e.requestDigest!==eO(o)&&t.addIssue({code:"custom",path:["requestDigest"],message:"interaction request digest does not match its content"})}),XR=h.discriminatedUnion("outcome",[h.strictObject({id:ue,outcome:h.literal("accepted"),data:rr.optional()}),h.strictObject({id:ue,outcome:h.literal("declined"),data:rr.optional()}),h.strictObject({id:ue,outcome:h.literal("cancelled"),data:rr.optional()})]);function nO(e){let t=oy.parse(e.binding),n=XR.parse(e.response);return ao({binding:t,response:n})}var hB=h.strictObject({operationId:ue,binding:oy,commandDigest:rt,response:XR}).superRefine((e,t)=>{e.binding.interactionId!==e.response.id&&t.addIssue({code:"custom",path:["response","id"],message:"response id must match the bound interaction id"}),e.commandDigest!==nO({binding:e.binding,response:e.response})&&t.addIssue({code:"custom",path:["commandDigest"],message:"interaction response command digest does not match its content"})}),rO=h.enum(["accepted","already_resolved_same","already_resolved_different","expired","cancelled","unknown_interaction","unknown_run","binding_mismatch","invalid_response","transport_failure"]),vB=h.strictObject({operationId:ue,binding:oy,commandDigest:rt,status:rO,message:H.min(1).optional(),retryable:h.boolean().optional()}).superRefine((e,t)=>{["invalid_response","transport_failure"].includes(e.status)&&e.message===void 0&&t.addIssue({code:"custom",path:["message"],message:`${e.status} must include a message`}),e.status==="transport_failure"&&e.retryable===void 0&&t.addIssue({code:"custom",path:["retryable"],message:"transport_failure must state whether retry is safe"})});var wB=h.enum(["claude-code","codex","opencode"]),YR=h.discriminatedUnion("kind",[h.object({kind:h.literal("claude-code"),version:h.literal(1),nativeSessionId:h.string().min(1)}).strict(),h.object({kind:h.literal("codex"),version:h.literal(1),threadId:h.string().min(1)}).strict(),h.object({kind:h.literal("opencode"),version:h.literal(1)}).strict()]),Dd=h.object({id:h.string().min(1),revision:h.number().int().positive(),title:h.string().trim().min(1).optional(),body:h.string().trim().min(1),submittedAt:h.string().datetime({offset:!0})}).strict(),RB=h.object({title:h.string().trim().min(1).optional(),body:h.string().trim().min(1),sourceToolCallId:h.string().min(1),providerState:YR}).strict(),oO=h.discriminatedUnion("outcome",[h.object({outcome:h.literal("approved")}).strict(),h.object({outcome:h.literal("rejected"),feedback:h.string().trim().min(1)}).strict()]),SB=h.object({version:h.literal(1),plan:Dd,sourceToolCallId:h.string().min(1),decision:oO,providerState:YR}).strict(),EB=h.discriminatedUnion("type",[h.object({type:h.literal("completed")}).strict(),h.object({type:h.literal("awaiting_plan_decision"),plan:Dd}).strict()]);var ne=ue,iO=h.strictObject({runId:ne,provider:ne,environmentId:ne,sessionId:ne.optional(),executionId:ne.optional(),requestDigest:rt.optional()}),$t=iO.extend({sessionId:ne,executionId:ne,requestDigest:rt});function aO(e){let t=QR.parse(e);return ao({operationId:t.operationId,run:t.run,...t.reason===void 0?{}:{reason:t.reason}})}var QR=h.strictObject({operationId:ne,run:$t,reason:H.min(1).max(2048).optional()}),CB=h.strictObject({...QR.shape,requestDigest:rt}).superRefine((e,t)=>{let{requestDigest:n,...o}=e;e.requestDigest!==aO(o)&&t.addIssue({code:"custom",path:["requestDigest"],message:"run cancellation request digest does not match its content"})}),OB=h.strictObject({operationId:ne,requestDigest:rt,run:$t,status:h.enum(["accepted","replayed","conflict","unknown"]),effect:h.enum(["cancel_requested","cancelled","not_live","unknown"]),message:H.min(1).optional(),retryable:h.boolean().optional(),existingRequestDigest:rt.optional()}).superRefine((e,t)=>{let n=e.effect!=="unknown";((e.status==="accepted"||e.status==="replayed")&&!n||(e.status==="conflict"||e.status==="unknown")&&n)&&t.addIssue({code:"custom",path:["effect"],message:"cancellation status and effect certainty do not agree"}),e.status==="conflict"&&e.existingRequestDigest===void 0&&t.addIssue({code:"custom",path:["existingRequestDigest"],message:"a cancellation conflict must include the existing digest"}),e.status==="conflict"&&e.existingRequestDigest===e.requestDigest&&t.addIssue({code:"custom",path:["existingRequestDigest"],message:"a cancellation conflict must identify a different request"}),e.status!=="conflict"&&e.existingRequestDigest!==void 0&&t.addIssue({code:"custom",path:["existingRequestDigest"],message:"only a cancellation conflict may include an existing digest"}),e.status==="unknown"&&(e.message===void 0||e.retryable!==!1)&&t.addIssue({code:"custom",path:["retryable"],message:"an unknown cancellation outcome must be explicit and non-repeatable"})});function sO(e){let t=eS.parse(e);return ao({operationId:t.operationId,action:t.action,run:t.run,...t.payload===void 0?{}:{payload:t.payload}})}var eS=h.strictObject({operationId:ne,action:h.enum(["steer","cancel","status","reconnect"]),run:$t,payload:Kg.optional()}),PB=h.strictObject({...eS.shape,requestDigest:rt}).superRefine((e,t)=>{let{requestDigest:n,...o}=e;e.requestDigest!==sO(o)&&t.addIssue({code:"custom",path:["requestDigest"],message:"run control request digest does not match its content"})}),NB=h.strictObject({operationId:ne,requestDigest:rt,run:$t,status:h.enum(["accepted","replayed","conflict","unknown"]),message:H.min(1).optional(),retryable:h.boolean().optional(),existingRequestDigest:rt.optional()}).superRefine((e,t)=>{e.status==="conflict"&&(e.existingRequestDigest===void 0||e.existingRequestDigest===e.requestDigest)&&t.addIssue({code:"custom",path:["existingRequestDigest"],message:"a control conflict must identify a different existing request"}),e.status!=="conflict"&&e.existingRequestDigest!==void 0&&t.addIssue({code:"custom",path:["existingRequestDigest"],message:"only a control conflict may include an existing digest"}),e.status==="unknown"&&(e.message===void 0||e.retryable!==!1)&&t.addIssue({code:"custom",path:["retryable"],message:"an unknown control outcome must be explicit and non-repeatable"})});var _n=Kg,ki={id:ne,sessionID:ne,messageID:ne},dO=h.strictObject({start:h.number().finite(),end:h.number().finite().optional()}),cO=h.discriminatedUnion("status",[h.strictObject({status:h.literal("pending"),input:_n,raw:H.optional()}),h.strictObject({status:h.literal("running"),input:_n,title:H.optional(),metadata:_n.optional(),time:h.strictObject({start:h.number().finite()}).optional()}),h.strictObject({status:h.literal("completed"),input:_n,output:io,title:H.optional(),metadata:_n.optional(),time:h.strictObject({start:h.number().finite(),end:h.number().finite()}).optional()}),h.strictObject({status:h.enum(["error","failed"]),input:_n,error:H.optional(),output:io.optional(),metadata:_n.optional(),time:dO.optional()})]),uO=h.discriminatedUnion("type",[h.strictObject({...ki,type:h.literal("text"),text:H}),h.strictObject({...ki,type:h.literal("tool"),callID:ne.optional(),tool:ne,state:cO,metadata:_n.optional()}),h.strictObject({...ki,type:h.literal("reasoning"),text:H}),h.strictObject({...ki,type:h.literal("file"),filename:H.optional(),mediaType:H.optional(),url:H.optional()}),h.strictObject({...ki,type:h.literal("subtask"),prompt:H,description:H,agent:ne})]),lO=h.discriminatedUnion("type",[h.strictObject({type:h.literal("message.part.updated"),part:uO,delta:H.optional()}),h.strictObject({type:h.literal("tool-heartbeat"),toolName:ne,partId:ne,elapsedMs:h.number().finite().nonnegative()}),h.strictObject({type:h.literal("tool-slow"),toolName:ne,partId:ne,elapsedMs:h.number().finite().nonnegative(),thresholdMs:h.number().finite().nonnegative()}),h.strictObject({type:h.literal("model-processing"),phase:h.enum(["tool-result","generating","thinking"]),toolName:ne.optional(),elapsedMs:h.number().finite().nonnegative().optional()}),h.strictObject({type:h.literal("status"),status:h.enum(["started","processing","completed","failed"]),detail:H.optional()}),h.strictObject({type:h.literal("warning"),code:ne,message:H}),h.strictObject({type:h.literal("raw"),backend:ne,event:io}),h.strictObject({type:h.literal("session.updated"),sessionId:ne,title:H.optional(),time:h.strictObject({created:h.number().finite().optional(),updated:h.number().finite().optional()}).optional()}),h.strictObject({type:h.literal("interaction"),request:GR}),h.strictObject({type:h.literal("interaction.cancel"),id:ne,reason:H.optional()}),h.strictObject({type:h.literal("plan.submitted"),plan:Dd})]),DB=h.strictObject({runId:ne,eventId:ne,sequence:h.number().int().nonnegative().max(Number.MAX_SAFE_INTEGER),cursor:ne.optional(),occurredAt:h.iso.datetime().max(64).optional(),receivedAt:h.iso.datetime().max(64),event:lO});function tS(e){S("run",e.id,"run.id"),S("conversation",e.conversationId,"run.conversationId"),S("branch",e.branchId,"run.branchId"),S("turn",e.turnId,"run.turnId"),S("operation",e.operationId,"run.operationId"),K(e.inputTokens,"run.inputTokens"),K(e.outputTokens,"run.outputTokens"),e.tokensKnown!==void 0&&e.tokensKnown!==!1&&$("run.tokensKnown must be false when present"),e.costUsd!==void 0&&K(e.costUsd,"run.costUsd"),e.usdKnown!==void 0&&e.usdKnown!==!1&&$("run.usdKnown must be false when present"),e.estimatedCostUsd!==void 0&&K(e.estimatedCostUsd,"run.estimatedCostUsd"),e.llmCalls!==void 0&&K(e.llmCalls,"run.llmCalls"),e.llmLatencyMs!==void 0&&K(e.llmLatencyMs,"run.llmLatencyMs");for(let[n,o]of Object.entries(e.promptCache??{}))L(n,"run.promptCache key"),K(o,`run.promptCache.${n}`);e.profileSnapshotId!==void 0&&S("profileSnapshot",e.profileSnapshotId,"run.profileSnapshotId"),e.connectionId!==void 0&&S("connection",e.connectionId,"run.connectionId"),e.providerSessionId!==void 0&&S("providerSession",e.providerSessionId,"run.providerSessionId"),e.environmentId!==void 0&&S("environment",e.environmentId,"run.environmentId"),e.controlRef!==void 0&&($t.safeParse(e.controlRef).success||$("run.controlRef is invalid"),e.controlRef.runId!==e.id&&$("run.controlRef.runId must match run.id"),e.providerSessionId!==void 0&&e.controlRef.sessionId!==e.providerSessionId&&$("run.controlRef.sessionId must match run.providerSessionId")),e.bindingId!==void 0&&S("binding",e.bindingId,"run.bindingId"),e.receiptId!==void 0&&S("receipt",e.receiptId,"run.receiptId"),e.replayCursor!==void 0&&!oa(e.replayCursor)&&$("run.replayCursor is invalid"),j(e.startedAt,"run.startedAt"),j(e.updatedAt,"run.updatedAt"),e.terminalAt!==void 0&&j(e.terminalAt,"run.terminalAt");let t=["completed","cancelled","failed","expired","unknown","aborted","blocked"];e.complete&&!t.includes(e.status)&&$("complete runs must have a terminal status")}function nS(e){S("interaction",e.id,"interaction.id"),S("run",e.runId,"interaction.runId"),e.providerSessionId!==void 0&&S("providerSession",e.providerSessionId,"interaction.providerSessionId"),e.request.id!==e.id&&$("interaction.request.id must match interaction.id"),L(e.request.kind,"interaction.request.kind"),L(e.request.title,"interaction.request.title"),Array.isArray(e.request.answerSpec.fields)||$("interaction.answerSpec.fields must be an array");let t=new Set;for(let n of e.request.answerSpec.fields)pu(n,"interaction.answerSpec.field"),L(n.name,"interaction.answerSpec.field.name"),L(n.label,"interaction.answerSpec.field.label"),t.has(n.name)&&$(`interaction.answerSpec contains duplicate field ${n.name}`),t.add(n.name),n.type==="secret"&&"default"in n&&$("secret interaction fields cannot have defaults");if(e.request.subject!==void 0)switch(e.request.subject.type){case"tool":L(e.request.subject.toolName,"interaction.subject.toolName");break;case"command":L(e.request.subject.command,"interaction.subject.command");break;case"file":L(e.request.subject.path,"interaction.subject.path");break;case"resource":L(e.request.subject.uri,"interaction.subject.uri");break;default:ua(e.request.subject,"interaction subject type")}e.request.timeoutMs!==void 0&&K(e.request.timeoutMs,"interaction.request.timeoutMs"),e.resolution!==void 0&&(S("operation",e.resolution.operationId,"interaction.resolution.operationId"),e.resolution.containsSecret&&e.resolution.publicData!==void 0&&$("secret interaction resolution cannot contain publicData"),e.resolution.dataDigest!==void 0&&Re(e.resolution.dataDigest,"interaction.resolution.dataDigest")),fO(e),j(e.createdAt,"interaction.createdAt"),j(e.updatedAt,"interaction.updatedAt")}function rS(e){S("analysis",e.id,"analysis.id"),e.analysisRunId!==void 0&&S("analysisRun",e.analysisRunId,"analysis.analysisRunId"),e.operationId!==void 0&&S("operation",e.operationId,"analysis.operationId"),e.requestDigest!==void 0&&Re(e.requestDigest,"analysis.requestDigest"),e.request!==void 0&&Un(e.request,"analysis.request"),S("conversation",e.source.conversationId,"analysis.source.conversationId"),S("branch",e.source.branchId,"analysis.source.branchId"),e.source.runId!==void 0&&S("run",e.source.runId,"analysis.source.runId"),e.source.throughMessageId!==void 0&&S("message",e.source.throughMessageId,"analysis.source.throughMessageId"),Re(e.source.digest,"analysis.source.digest"),e.source.trace!==void 0&&(S("trace",e.source.trace.id,"analysis.source.trace.id"),Re(e.source.trace.digest,"analysis.source.trace.digest"));for(let t of e.findings){L(t.id,"analysis.finding.id"),L(t.text,"analysis.finding.text"),t.confidence!==void 0&&iv(t.confidence,"analysis.finding.confidence");for(let n of t.citations)iS(n)}if(e.sourceRange!==void 0){for(let t of e.sourceRange.eventIds)S("event",t,"analysis.sourceRange.eventId");for(let t of e.sourceRange.messageIds)S("message",t,"analysis.sourceRange.messageId");for(let t of e.sourceRange.messagePartIds)S("messagePart",t,"analysis.sourceRange.messagePartId")}if(e.provenance!==void 0){S("operation",e.provenance.operationId,"analysis.provenance.operationId"),Re(e.provenance.requestDigest,"analysis.provenance.requestDigest"),e.provenance.profileId!==void 0&&S("profile",e.provenance.profileId,"analysis.provenance.profileId"),e.provenance.profileDigest!==void 0&&Re(e.provenance.profileDigest,"analysis.provenance.profileDigest"),e.provenance.connectionDigest!==void 0&&Re(e.provenance.connectionDigest,"analysis.provenance.connectionDigest");for(let t of e.provenance.checks)L(t.id,"analysis.check.id")}for(let t of e.checks??[])L(t.id,"analysis.check.id");for(let t of e.modelCalls??[])pO(t);e.usage!==void 0&&(K(e.usage.input,"analysis.usage.input"),K(e.usage.output,"analysis.usage.output")),e.costUsd!==void 0&&K(e.costUsd,"analysis.costUsd"),e.wallTimeMs!==void 0&&K(e.wallTimeMs,"analysis.wallTimeMs"),j(e.createdAt,"analysis.createdAt"),j(e.updatedAt,"analysis.updatedAt")}function pO(e){(!Number.isSafeInteger(e.sequence)||e.sequence<=0)&&$("analysis.modelCalls.sequence must be a positive safe integer"),so(e.callId,"analysis.modelCalls.callId"),so(e.callRef,"analysis.modelCalls.callRef"),["/v1/chat/completions","/v1/responses","unknown-path"].includes(e.path)||$("analysis.modelCalls.path is invalid"),so(e.model,"analysis.modelCalls.model"),e.provider!==void 0&&so(e.provider,"analysis.modelCalls.provider"),e.route!==void 0&&so(e.route,"analysis.modelCalls.route");for(let[n,o]of Object.entries({inputTokens:e.inputTokens,outputTokens:e.outputTokens,cachedTokens:e.cachedTokens,cacheWriteTokens:e.cacheWriteTokens,latencyMs:e.latencyMs,responseStatus:e.responseStatus}))o!==void 0&&K(o,`analysis.modelCalls.${n}`);e.cost.status!=="observed"&&e.cost.status!=="estimated"&&e.cost.status!=="unknown"&&$("analysis.modelCalls.cost.status is invalid"),e.cost.usd!==void 0&&K(e.cost.usd,"analysis.modelCalls.cost.usd"),e.cost.status==="unknown"&&e.cost.usd!==void 0&&$("analysis.modelCalls.cost.usd must be absent when cost is unknown"),e.cost.status!=="unknown"&&e.cost.usd===void 0&&$("analysis.modelCalls.cost.usd is required when cost is known"),typeof e.tokensKnown!="boolean"&&$("analysis.modelCalls.tokensKnown must be boolean"),e.tokensKnown&&(e.inputTokens===void 0||e.outputTokens===void 0)&&$("analysis.modelCalls known tokens require input and output"),e.responseStatus!==void 0&&(!Number.isSafeInteger(e.responseStatus)||e.responseStatus<100||e.responseStatus>599)&&$("analysis.modelCalls.responseStatus is invalid"),e.failureCode!==void 0&&so(e.failureCode,"analysis.modelCalls.failureCode"),e.startedAt!==void 0&&j(e.startedAt,"analysis.modelCalls.startedAt"),e.endedAt!==void 0&&j(e.endedAt,"analysis.modelCalls.endedAt");let t=e;("prompt"in t||"request"in t||"response"in t||"credential"in t)&&$("analysis.modelCalls cannot retain model payloads or credentials")}function so(e,t){U(e)!==e&&$(`${t} must be a safe public identifier`)}function oS(e){S("attachment",e.id,"analysisAttachment.id"),S("operation",e.operationId,"analysisAttachment.operationId"),S("analysis",e.analysisId,"analysisAttachment.analysisId"),e.analysisRunId!==void 0&&S("analysisRun",e.analysisRunId,"analysisAttachment.analysisRunId"),S("conversation",e.sourceConversationId,"analysisAttachment.sourceConversationId"),S("branch",e.sourceBranchId,"analysisAttachment.sourceBranchId"),e.sourceRunId!==void 0&&S("run",e.sourceRunId,"analysisAttachment.sourceRunId"),Re(e.sourceDigest,"analysisAttachment.sourceDigest"),S("conversation",e.destinationConversationId,"analysisAttachment.destinationConversationId"),S("branch",e.destinationBranchId,"analysisAttachment.destinationBranchId"),S("analysis",e.provenance.analysisId,"analysisAttachment.provenance.analysisId"),Re(e.provenance.sourceDigest,"analysisAttachment.provenance.sourceDigest"),e.provenance.analystProfileDigest!==void 0&&Re(e.provenance.analystProfileDigest,"analysisAttachment.provenance.analystProfileDigest");for(let t of e.selectedFindings){L(t.id,"analysisAttachment.finding.id"),L(t.text,"analysisAttachment.finding.text");for(let n of t.citations)iS(n)}j(e.createdAt,"analysisAttachment.createdAt")}function iS(e){S("citation",e.id,"analysis.citation.id"),e.eventId!==void 0&&S("event",e.eventId,"analysis.citation.eventId"),e.messageId!==void 0&&S("message",e.messageId,"analysis.citation.messageId"),e.partId!==void 0&&S("messagePart",e.partId,"analysis.citation.partId"),e.start!==void 0&&K(e.start,"analysis.citation.start"),e.end!==void 0&&K(e.end,"analysis.citation.end"),e.start!==void 0&&e.end!==void 0&&e.end<e.start&&$("analysis.citation.end must not precede start")}function fO(e){let t=e.request.answerSpec.fields.some(o=>o.type==="secret"),n=e.resolution?.publicData;if(n!==void 0){pu(n,"interaction.resolution.publicData");for(let[o,r]of Object.entries(n))/(secret|password|passphrase|token|bearer|authorization|credential|private(?:[_-]?key)?|api[-_]?key)/iu.test(o)&&$(`interaction.resolution.publicData.${o} is secret-designated and cannot be retained`),typeof r!="string"&&typeof r!="boolean"&&!(typeof r=="number"&&Number.isFinite(r))&&!(Array.isArray(r)&&r.every(i=>typeof i=="string"))&&$(`interaction.resolution.publicData.${o} contains an unsupported value`)}t&&n!==void 0&&$("secret interaction data cannot be retained in the domain state"),e.resolution?.containsSecret&&n!==void 0&&$("secret interaction data cannot be retained in the domain state")}function sS(e){S("environment",e.id,"environment.id"),S("workspace",e.workspaceId,"environment.workspaceId"),S("connection",e.connectionId,"environment.connectionId"),L(e.placement.provider,"environment.placement.provider"),e.placement.region!==void 0&&L(e.placement.region,"environment.placement.region"),e.placement.account!==void 0&&L(e.placement.account,"environment.placement.account"),e.kind!==void 0&&!["local-process","remote-service","sandbox"].includes(e.kind)&&$("environment.kind is invalid");for(let[t,n]of[["providerEnvironmentId",e.providerEnvironmentId],["runtimeEndpointHost",e.runtimeEndpointHost],["machineId",e.machineId],["requestedRegion",e.requestedRegion]])n!==void 0&&L(n,`environment.${t}`);if(e.lifecycleMode!==void 0&&!["request","ephemeral","retained"].includes(e.lifecycleMode)&&$("environment.lifecycleMode is invalid"),e.cleanup!==void 0&&!["delete-after-turn","explicit","not-applicable"].includes(e.cleanup)&&$("environment.cleanup is invalid"),e.continuity!==void 0&&!["session","unavailable","not-applicable"].includes(e.continuity)&&$("environment.continuity is invalid"),e.location!==void 0&&!["local","remote","unknown"].includes(e.location)&&$("environment.location is invalid"),e.storagePersistence!==void 0&&!["ephemeral-home","persistent-home","unknown"].includes(e.storagePersistence)&&$("environment.storagePersistence is invalid"),e.requestedResources!==void 0){for(let[t,n]of[["cpuCores",e.requestedResources.cpuCores],["memoryMB",e.requestedResources.memoryMB],["diskGB",e.requestedResources.diskGB]])n!==void 0&&jn(n,`environment.requestedResources.${t}`);e.requestedResources.accelerator!==void 0&&(L(e.requestedResources.accelerator.kind,"environment.requestedResources.accelerator.kind"),jn(e.requestedResources.accelerator.count,"environment.requestedResources.accelerator.count"),e.requestedResources.accelerator.memoryMB!==void 0&&jn(e.requestedResources.accelerator.memoryMB,"environment.requestedResources.accelerator.memoryMB"))}if(e.resourceSample!==void 0&&(jn(e.resourceSample.cgroupVersion,"environment.resourceSample.cgroupVersion"),K(e.resourceSample.memoryCurrentMb,"environment.resourceSample.memoryCurrentMb"),e.resourceSample.memoryPeakMb!==void 0&&K(e.resourceSample.memoryPeakMb,"environment.resourceSample.memoryPeakMb"),e.resourceSample.memoryLimitMb!==void 0&&K(e.resourceSample.memoryLimitMb,"environment.resourceSample.memoryLimitMb"),K(e.resourceSample.cpuUsageUsec,"environment.resourceSample.cpuUsageUsec"),j(e.resourceSample.sampledAt,"environment.resourceSample.sampledAt")),e.gpu!==void 0){L(e.gpu.provider,"environment.gpu.provider"),L(e.gpu.accelerator,"environment.gpu.accelerator"),L(e.gpu.status,"environment.gpu.status"),jn(e.gpu.count,"environment.gpu.count");for(let[t,n]of[["customerPricePerHourUsd",e.gpu.customerPricePerHourUsd],["estimatedCustomerCostUsd",e.gpu.estimatedCustomerCostUsd],["billedSeconds",e.gpu.billedSeconds],["billedCustomerCostUsd",e.gpu.billedCustomerCostUsd]])n!==void 0&&K(n,`environment.gpu.${t}`)}e.accountUsage!==void 0&&mO(e.accountUsage),e.unavailableTelemetry?.forEach(t=>{L(t,"environment.unavailableTelemetry")}),e.secretNames.forEach(t=>{L(t,"environment.secretNames")}),j(e.createdAt,"environment.createdAt"),e.startedAt!==void 0&&j(e.startedAt,"environment.startedAt"),e.lastActivityAt!==void 0&&j(e.lastActivityAt,"environment.lastActivityAt"),e.expiresAt!==void 0&&j(e.expiresAt,"environment.expiresAt"),j(e.updatedAt,"environment.updatedAt")}function mO(e){e.scope!=="account"&&$("environment.accountUsage.scope is invalid"),e.completeness!=="provider-reported-possibly-defaulted"&&$("environment.accountUsage.completeness is invalid");for(let[t,n]of[["customerId",e.customerId],["billingOwnerId",e.billingOwnerId],["plan",e.plan],["subscriptionStatus",e.subscriptionStatus]])n!==void 0&&L(n,`environment.accountUsage.${t}`);for(let[t,n]of[["computeMinutes",e.computeMinutes],["gpuSeconds",e.gpuSeconds],["gpuCostUsd",e.gpuCostUsd],["activeSandboxes",e.activeSandboxes],["totalSandboxes",e.totalSandboxes],["creditsUsedUsd",e.creditsUsedUsd],["monthlyBalanceUsd",e.monthlyBalanceUsd],["maximumConcurrentSandboxes",e.maximumConcurrentSandboxes],["maximumCpuCores",e.maximumCpuCores],["maximumRamGB",e.maximumRamGB],["maximumStorageGB",e.maximumStorageGB]])n!==void 0&&K(n,`environment.accountUsage.${t}`);e.creditsAvailableUsd!==void 0&&!Number.isFinite(e.creditsAvailableUsd)&&$("environment.accountUsage.creditsAvailableUsd must be finite");for(let[t,n]of[["usagePeriodStart",e.usagePeriodStart],["usagePeriodEnd",e.usagePeriodEnd],["subscriptionPeriodEnd",e.subscriptionPeriodEnd],["sampledAt",e.sampledAt]])n!==void 0&&j(n,`environment.accountUsage.${t}`)}function dS(e){S("checkpoint",e.id,"checkpoint.id"),S("environment",e.sourceEnvironmentId,"checkpoint.sourceEnvironmentId"),S("branch",e.sourceBranchId,"checkpoint.sourceBranchId"),e.sourceRunId!==void 0&&S("run",e.sourceRunId,"checkpoint.sourceRunId"),e.throughMessageId!==void 0&&S("message",e.throughMessageId,"checkpoint.throughMessageId"),Re(e.requestDigest,"checkpoint.requestDigest"),S("operation",e.operationId,"checkpoint.operationId"),e.stateDigest!==void 0&&Re(e.stateDigest,"checkpoint.stateDigest"),j(e.createdAt,"checkpoint.createdAt")}function cS(e){S("supervisor",e.id,"supervisor.id"),L(e.runtimeId,"supervisor.runtimeId"),e.runtimeId.length>1024&&$("supervisor.runtimeId is too long"),L(e.runtimeRoot,"supervisor.runtimeRoot"),e.rootRunId!==void 0&&S("run",e.rootRunId,"supervisor.rootRunId"),e.title!==void 0&&L(e.title,"supervisor.title"),e.driverModel!==void 0&&L(e.driverModel,"supervisor.driverModel"),e.workerModel!==void 0&&L(e.workerModel,"supervisor.workerModel"),e.driverUsage!==void 0&&aS(e.driverUsage,"supervisor.driverUsage"),e.totalUsage!==void 0&&aS(e.totalUsage,"supervisor.totalUsage"),e.workerCount!==void 0&&K(e.workerCount,"supervisor.workerCount"),j(e.createdAt,"supervisor.createdAt"),j(e.updatedAt,"supervisor.updatedAt")}function uS(e){S("worker",e.id,"worker.id"),L(e.runtimeId,"worker.runtimeId"),e.runtimeId.length>1024&&$("worker.runtimeId is too long"),S("supervisor",e.supervisorId,"worker.supervisorId"),e.parentRuntimeRef!==void 0&&(L(e.parentRuntimeRef,"worker.parentRuntimeRef"),e.parentRuntimeRef.length>1024&&$("worker.parentRuntimeRef is too long")),e.parentWorkerId!==void 0&&S("worker",e.parentWorkerId,"worker.parentWorkerId"),e.runId!==void 0&&S("run",e.runId,"worker.runId"),e.title!==void 0&&L(e.title,"worker.title"),e.runner!==void 0&&L(e.runner,"worker.runner");for(let[t,n]of[["spendUsd",e.spendUsd],["inputTokens",e.inputTokens],["outputTokens",e.outputTokens],["latencyMs",e.latencyMs]])n!==void 0&&K(n,`worker.${t}`);e.usageCompleteness!==void 0&&!["complete","observed-floor","unknown"].includes(e.usageCompleteness)&&$("worker.usageCompleteness is invalid"),j(e.createdAt,"worker.createdAt"),j(e.updatedAt,"worker.updatedAt")}function aS(e,t){K(e.inputTokens,`${t}.inputTokens`),K(e.outputTokens,`${t}.outputTokens`),K(e.spendUsd,`${t}.spendUsd`),K(e.latencyMs,`${t}.latencyMs`),e.iterations!==void 0&&K(e.iterations,`${t}.iterations`),["complete","observed-floor","unknown"].includes(e.completeness)||$(`${t}.completeness is invalid`)}function lS(e){S("draft",e.id,"draft.id"),S("branch",e.branchId,"draft.branchId"),j(e.updatedAt,"draft.updatedAt")}function pS(e){S("queueEntry",e.id,"queueEntry.id"),S("queue",e.queueId,"queueEntry.queueId"),S("branch",e.branchId,"queueEntry.branchId"),S("operation",e.operationId,"queueEntry.operationId"),K(e.position,"queueEntry.position"),j(e.createdAt,"queueEntry.createdAt"),j(e.updatedAt,"queueEntry.updatedAt")}function fS(e,t){if(S("queue",e.id,"queue.id"),S("branch",e.branchId,"queue.branchId"),e.entryIds.forEach(n=>{S("queueEntry",n,"queue.entryIds")}),Z(e.entryIds,"queue.entryIds"),t!==void 0){let n=t.filter(o=>o.queueId===e.id);Z(n.map(o=>o.id),"queue entries")}j(e.createdAt,"queue.createdAt"),j(e.updatedAt,"queue.updatedAt")}function mS(e){S("rule",e.id,"rule.id"),e.matcher.profileDigest!==void 0&&Re(e.matcher.profileDigest,"rule.matcher.profileDigest"),e.matcher.connectionId!==void 0&&S("connection",e.matcher.connectionId,"rule.matcher.connectionId"),e.matcher.workspaceId!==void 0&&S("workspace",e.matcher.workspaceId,"rule.matcher.workspaceId");for(let[t,n]of Object.entries(e.answer))/(secret|password|passphrase|token|bearer|authorization|credential|private(?:[_-]?key)?|api[-_]?key)/iu.test(t)&&$(`rule.answer.${t} is secret-designated and cannot be retained`),typeof n!="string"&&typeof n!="number"&&typeof n!="boolean"&&!(Array.isArray(n)&&n.every(o=>typeof o=="string"))&&$("rule.answer contains a secret or unsupported value");K(e.uses,"rule.uses"),e.maximumUses!==void 0&&K(e.maximumUses,"rule.maximumUses"),e.expiresAt!==void 0&&j(e.expiresAt,"rule.expiresAt"),j(e.createdAt,"rule.createdAt")}function gS(e){S("binding",e.id,"binding.id"),S("branch",e.branchId,"binding.branchId"),S("connection",e.connectionId,"binding.connectionId"),e.runId!==void 0&&S("run",e.runId,"binding.runId"),e.providerSessionId!==void 0&&S("providerSession",e.providerSessionId,"binding.providerSessionId"),e.environmentId!==void 0&&S("environment",e.environmentId,"binding.environmentId"),e.checkpointId!==void 0&&S("checkpoint",e.checkpointId,"binding.checkpointId"),e.replayCursor!==void 0&&!oa(e.replayCursor)&&$("binding.replayCursor is invalid"),e.boundaryDigest!==void 0&&Re(e.boundaryDigest,"binding.boundaryDigest"),e.runId===void 0&&e.environmentId===void 0&&e.providerSessionId===void 0&&$("binding must identify a run, provider session, or environment"),j(e.createdAt,"binding.createdAt"),j(e.updatedAt,"binding.updatedAt")}function yS(e){S("graphNode",e.id,"graphNode.id"),S(e.reference.kind==="workspace"?"workspace":e.reference.kind==="profile"?"profile":e.reference.kind==="conversation"?"conversation":e.reference.kind==="branch"?"branch":e.reference.kind==="turn"?"turn":e.reference.kind==="run"?"run":e.reference.kind==="message"?"message":e.reference.kind==="analysis"?"analysis":e.reference.kind==="environment"?"environment":e.reference.kind==="checkpoint"?"checkpoint":e.reference.kind==="supervisor"?"supervisor":"worker",e.reference.id,"graphNode.reference.id"),j(e.createdAt,"graphNode.createdAt"),j(e.updatedAt,"graphNode.updatedAt")}function hS(e){S("graphEdge",e.id,"graphEdge.id"),S("graphNode",e.source,"graphEdge.source"),S("graphNode",e.destination,"graphEdge.destination"),e.provenance.operationId!==void 0&&S("operation",e.provenance.operationId,"graphEdge.provenance.operationId"),e.provenance.receiptId!==void 0&&S("receipt",e.provenance.receiptId,"graphEdge.provenance.receiptId"),e.provenance.sourceDigest!==void 0&&Re(e.provenance.sourceDigest,"graphEdge.provenance.sourceDigest"),j(e.createdAt,"graphEdge.createdAt")}function vS(e){if(S("operation",e.id,"operation.id"),uu.has(e.kind)||$("operation.kind is not recognized"),lu.has(e.status)||$("operation.status is not recognized"),Re(e.requestDigest,"operation.requestDigest"),e.target!==void 0){let t=e.target.kind;S(t,e.target.id,"operation.target.id")}e.result!==void 0&&Un(e.result,"operation.result"),j(e.createdAt,"operation.createdAt"),j(e.updatedAt,"operation.updatedAt"),e.acknowledgedAt!==void 0&&j(e.acknowledgedAt,"operation.acknowledgedAt")}function IS(e){S("effect",e.id,"effect.id"),S("operation",e.operationId,"effect.operationId"),L(e.effectKind,"effect.effectKind"),Re(e.requestDigest,"effect.requestDigest"),uu.has(e.kind)||$("effect.kind is not recognized"),lu.has(e.status)||$("effect.status is not recognized"),jn(e.attempt,"effect.attempt"),e.externalReceiptId!==void 0&&S("receipt",e.externalReceiptId,"effect.externalReceiptId"),e.outcomeDigest!==void 0&&Re(e.outcomeDigest,"effect.outcomeDigest"),j(e.createdAt,"effect.createdAt"),j(e.updatedAt,"effect.updatedAt")}function bS(e){if(e.conversations.length===0)return;let t=new Map(e.conversations.map(u=>[u.id,u])),n=new Map(e.branches.map(u=>[u.id,u])),o=new Map(e.messages.map(u=>[u.id,u])),r=new Map(e.turns.map(u=>[u.id,u])),i=new Map(e.runs.map(u=>[u.id,u])),a=new Map(e.drafts.map(u=>[u.id,u])),s=new Map(e.queues.map(u=>[u.id,u])),d=t.get(e.conversationId);(!d||d.deletedAt!==void 0)&&$("state.conversationId must reference an available conversation");let c=n.get(e.branchId);(!c||c.conversationId!==d.id)&&$("state.branchId must belong to the selected conversation");for(let u of e.conversations){if(u.deletedAt!==void 0)continue;let l=n.get(u.activeBranchId);(!l||l.conversationId!==u.id)&&$(`conversation ${u.id} has an invalid active branch`)}for(let u of e.branches){let l=t.get(u.conversationId);(!l||l.deletedAt!==void 0)&&$(`branch ${u.id} has no available conversation`);let f=a.get(u.draftId);(!f||f.branchId!==u.id)&&$(`branch ${u.id} has an invalid draft`);let g=s.get(u.queueId);if((!g||g.branchId!==u.id)&&$(`branch ${u.id} has an invalid queue`),u.tipMessageId!==void 0&&(o.get(u.tipMessageId)||$(`branch ${u.id} has a missing tip message`)),u.source!==void 0){let p=n.get(u.source.branchId);(!p||p.conversationId!==u.source.conversationId)&&$(`branch ${u.id} has an invalid source branch`),u.source.throughMessageId!==void 0&&!o.has(u.source.throughMessageId)&&$(`branch ${u.id} has a missing source message`),u.source.throughTurnId!==void 0&&!r.has(u.source.throughTurnId)&&$(`branch ${u.id} has a missing source turn`)}}for(let u of e.messages){let l=n.get(u.branchId);(!l||l.conversationId!==u.conversationId)&&$(`message ${u.id} has an invalid branch`),u.turnId!==void 0&&!r.has(u.turnId)&&$(`message ${u.id} has a missing turn`),u.runId!==void 0&&!i.has(u.runId)&&$(`message ${u.id} has a missing run`)}for(let u of e.turns){let l=n.get(u.branchId);(!l||l.conversationId!==u.conversationId)&&$(`turn ${u.id} has an invalid branch`);let f=o.get(u.userMessageId);(!f||f.turnId!==u.id||f.role!=="user")&&$(`turn ${u.id} has an invalid user message`);for(let g of u.runIds){let p=i.get(g);(!p||p.turnId!==u.id)&&$(`turn ${u.id} has an invalid run`)}u.selectedRunId!==void 0&&!u.runIds.includes(u.selectedRunId)&&$(`turn ${u.id} selected a run outside the turn`)}for(let u of e.runs){let l=n.get(u.branchId);(!l||l.conversationId!==u.conversationId)&&$(`run ${u.id} has an invalid branch`),r.has(u.turnId)||$(`run ${u.id} has a missing turn`)}for(let u of e.drafts)n.has(u.branchId)||$(`draft ${u.id} has a missing branch`);for(let u of e.queues){n.has(u.branchId)||$(`queue ${u.id} has a missing branch`);for(let l of u.entryIds){let f=e.queueEntries.find(g=>g.id===l);(!f||f.queueId!==u.id)&&$(`queue ${u.id} has an invalid entry`)}}}function Zt(e){e.schemaVersion<2&&$("state.schemaVersion is unsupported"),(!Number.isInteger(e.revision)||e.revision<0)&&$("state.revision is invalid"),(!Number.isInteger(e.sequence)||e.sequence<0)&&$("state.sequence is invalid"),e.workspaceId!==null&&S("workspace",e.workspaceId,"state.workspaceId"),e.conversationId!==null&&S("conversation",e.conversationId,"state.conversationId"),e.branchId!==null&&S("branch",e.branchId,"state.branchId"),e.activeRunId!==null&&S("run",e.activeRunId,"state.activeRunId");try{let a=Te(e.profile);fv(e.profile,Oh(a),"state.profile")}catch(a){if(a instanceof ye)throw a;$("state.profile is not a canonical AgentProfile")}Z(e.workspaces.map(a=>a.id),"state.workspaces"),Z(e.profiles.map(a=>a.id),"state.profiles"),Z(e.profileSnapshots.map(a=>a.id),"state.profileSnapshots"),Z(e.credentials.map(a=>a.id),"state.credentials"),Z(e.connections.map(a=>a.id),"state.connections"),Z(e.conversations.map(a=>a.id),"state.conversations"),Z(e.branches.map(a=>a.id),"state.branches"),Z(e.turns.map(a=>a.id),"state.turns"),Z(e.messages.map(a=>a.id),"state.messages"),Z(e.messageParts.map(a=>a.id),"state.messageParts"),Z(e.runs.map(a=>a.id),"state.runs"),Z(e.interactions.map(a=>a.id),"state.interactions"),Z(e.analyses.map(a=>a.id),"state.analyses"),Z(e.analysisAttachments.map(a=>a.id),"state.analysisAttachments"),Z(e.environments.map(a=>a.id),"state.environments"),Z(e.checkpoints.map(a=>a.id),"state.checkpoints"),Z(e.supervisors.map(a=>a.id),"state.supervisors"),Z(e.workers.map(a=>a.id),"state.workers"),Z(e.drafts.map(a=>a.id),"state.drafts"),Z(e.queues.map(a=>a.id),"state.queues"),Z(e.queueEntries.map(a=>a.id),"state.queueEntries"),Z(e.rules.map(a=>a.id),"state.rules"),Z(e.bindings.map(a=>a.id),"state.bindings"),Z(e.graphNodes.map(a=>a.id),"state.graphNodes"),Z(e.graphEdges.map(a=>a.id),"state.graphEdges"),Z(e.operations.map(a=>a.id),"state.operations"),Z(e.effects.map(a=>a.id),"state.effects"),Z(e.feedbackDecisions.map(a=>a.id),"state.feedbackDecisions"),Z(e.appliedEvents.map(a=>a.id),"state.appliedEvents"),Z(e.unknownEvents.map(a=>a.id),"state.unknownEvents"),e.activeRunId!==null&&!e.runs.some(a=>a.id===e.activeRunId)&&$("state.activeRunId must reference a known run");for(let a of e.workspaces)uv(a);for(let a of e.profiles)lv(a);for(let a of e.profileSnapshots)pv(a);for(let a of e.credentials)mv(a);for(let a of e.connections)gv(a);for(let a of e.conversations)TI(a);for(let a of e.branches)$I(a);for(let a of e.turns)CI(a);for(let a of e.messages)OI(a);for(let a of e.messageParts)PI(a);for(let a of e.runs)tS(a);for(let a of e.interactions)nS(a);for(let a of e.analyses)rS(a);for(let a of e.analysisAttachments)oS(a);for(let a of e.environments)sS(a);for(let a of e.checkpoints)dS(a);for(let a of e.supervisors)cS(a);for(let a of e.workers)uS(a);for(let a of e.drafts)lS(a);for(let a of e.queues)fS(a,e.queueEntries);for(let a of e.queueEntries)pS(a);for(let a of e.rules)mS(a);for(let a of e.bindings)gS(a);for(let a of e.graphNodes)yS(a);for(let a of e.graphEdges)hS(a);let t=new Set(e.graphNodes.map(a=>a.id)),n=new Map;for(let a of e.graphEdges){(!t.has(a.source)||!t.has(a.destination))&&$(`graph edge ${a.id} references a missing node`),a.source===a.destination&&$(`graph edge ${a.id} cannot point to itself`);let s=n.get(a.source)??[];s.push(a.destination),n.set(a.source,s)}let o=new Set,r=new Set,i=a=>{if(o.has(a)&&$(`graph contains a cycle at ${a}`),!r.has(a)){o.add(a);for(let s of n.get(a)??[])i(s);o.delete(a),r.add(a)}};for(let a of t)i(a);for(let a of e.operations)vS(a);for(let a of e.effects)IS(a);Z(e.replayCursors.map(a=>a.runId),"state.replayCursors");for(let a of e.replayCursors)sv(a);for(let a of e.appliedEvents)dv(a);for(let a of e.unknownEvents)cv(a);for(let a of e.missingHistory)la(a);for(let a of e.feedbackDecisions)av(a);bS(e)}var Ai=Object.freeze({streaming:{live:!0,replay:!1,detach:!1,turnIdempotency:!0},sessions:{continue:!1,messages:!1},controls:{cancel:!0,steer:!1,queue:!0,status:!1,recreate:!1},events:{stableIdentity:!1,sequence:!0,cursor:!1},usage:!0});var co=class extends Error{code="SEQUENCE_GAP";expectedSequence;actualSequence;expectedRevision;actualRevision;constructor(t,n){super(`Event sequence ${n.sequence} does not follow ${t.sequence}; revision ${n.revision} does not follow ${t.revision}`),this.name="SequenceGapError",this.expectedSequence=t.sequence+1,this.actualSequence=n.sequence,this.expectedRevision=t.revision+1,this.actualRevision=n.revision}},uo=class extends Error{code="DUPLICATE_EVENT_CONFLICT";constructor(t){super(`Event ${t} was replayed with a different position or payload`),this.name="DuplicateEventConflictError"}};function x(e,t){let n=e.findIndex(o=>o.id===t.id);return n===-1?[...e,t]:e.map((o,r)=>r===n?t:o)}function jd(e,t,n){let o=t(n),r=e.findIndex(i=>t(i)===o);return r===-1?[...e,n]:e.map((i,a)=>a===r?n:i)}function fe(e,t,n){let o=e.find(r=>r.id===t);if(!o)throw new ye(`${n} ${t} does not exist`);return o}function wS(e){return e.occurredAt}function gO(e){return Qi(`workspace-${R({root:e}).slice(0,32)}`)}function yO(e){return Lh(`part-${e}`)}function hO(e,t){return{id:Kh(`draft-${e}`),branchId:e,text:"",updatedAt:t}}function vO(e,t){return{id:Wh(`queue-${e}`),branchId:e,entryIds:[],createdAt:t,updatedAt:t}}function RS(e,t,n){let o=gO(t),i=e.workspaces.find(v=>v.id===o)??{id:o,root:t,trusted:!1,createdAt:n,updatedAt:n},a={id:e.conversationId,workspaceId:o,title:"New conversation",activeBranchId:e.branchId,createdAt:n,updatedAt:n,archived:!1,retention:{}},s=hO(e.branchId,n),d=vO(e.branchId,n),c={id:e.branchId,conversationId:e.conversationId,overrides:{},draftId:s.id,queueId:d.id,status:"active",createdAt:n,updatedAt:n},u=q({kind:"workspace",id:o},n,t),l=q({kind:"conversation",id:a.id},n,a.title),f=q({kind:"branch",id:c.id},n,"Main"),g=re({kind:"attached",source:u.reference,destination:l.reference,at:n}),p=re({kind:"attached",source:l.reference,destination:f.reference,at:n});return{...e,workspace:t,workspaceId:o,workspaces:x(e.workspaces,i),conversations:e.conversations.some(v=>v.id===a.id)?e.conversations:[...e.conversations,a],branches:e.branches.some(v=>v.id===c.id)?e.branches:[...e.branches,c],drafts:e.drafts.some(v=>v.id===s.id)?e.drafts:[...e.drafts,s],queues:e.queues.some(v=>v.id===d.id)?e.queues:[...e.queues,d],graphNodes:[u,l,f].reduce(x,e.graphNodes),graphEdges:[g,p].reduce(x,e.graphEdges)}}function lo(e,t,n,o,r,i,a,s){let d=yO(t);return{id:t,conversationId:e.conversationId,branchId:e.branchId,role:n,text:o,partIds:[d],parts:[{id:d,kind:"text",text:o}],status:a,turnId:i,runId:r,createdAt:s,updatedAt:s,complete:a==="complete"}}function SS(e,t,n){return{receipt:_t({runId:t.runId,turnId:t.turnId,operationId:t.operationId,conversationId:e.conversationId,branchId:e.branchId,admittedAt:n,profile:e.profile,text:t.text,capabilities:Ai}),capabilities:Ai,lastProviderSequence:0,eventCount:0,interactions:[],activity:[],eventDetails:[]}}function xn(e,t){return{id:e.partIds[0],messageId:e.id,ordinal:0,kind:"text",text:e.text,createdAt:t,updatedAt:t}}function Ud(e){return e==="completed"||e==="cancelled"||e==="failed"||e==="expired"||e==="unknown"||e==="aborted"||e==="blocked"}function IO(e,t){if(e===t)return!0;if(Ud(e))return e==="unknown"&&t!=="running"&&t!=="starting";switch(e){case"prepared":return t==="starting"||t==="cancelled"||t==="aborted";case"starting":return["running","streaming","waiting","detached","reconnecting","cancelling","completed","cancelled","failed","expired","unknown","blocked","aborted"].includes(t);case"running":case"streaming":return["waiting","detached","reconnecting","cancelling","completed","cancelled","failed","expired","unknown","blocked","aborted"].includes(t);case"waiting":return["running","streaming","detached","reconnecting","cancelling","completed","cancelled","failed","expired","unknown","blocked","aborted"].includes(t);case"detached":return["reconnecting","cancelling","completed","cancelled","failed","expired","unknown","aborted","blocked"].includes(t);case"reconnecting":return["running","streaming","waiting","detached","cancelling","completed","cancelled","failed","expired","unknown","aborted","blocked"].includes(t);case"cancelling":return["completed","cancelled","failed","expired","unknown","aborted","blocked"].includes(t);default:return!1}}function po(e,t,n){let o=e.runs.find(s=>s.id===t.id);if(o&&o.status!==t.status&&!IO(o.status,t.status))throw new ye(`Run ${t.id} cannot transition from ${o.status} to ${t.status}`);let r=Ud(t.status),i={...t,complete:r?t.complete:!1,updatedAt:n,...r&&t.terminalAt===void 0?{terminalAt:n}:{}},a=r&&e.activeRunId===t.id?null:e.activeRunId;return{...e,runs:x(e.runs,i),activeRunId:a}}function ES(e,t){return{...e,messages:x(e.messages,t)}}function _S(e,t,n,o){let r=e.messages.find(c=>c.runId===t&&c.role==="assistant");if(!r)throw new ye(`Assistant message for run ${t} does not exist`);let i={...r,text:`${r.text}${n}`,updatedAt:o},a=r.partIds[0],s=e.messageParts.find(c=>c.id===a),d=s?.kind==="text"?{...s,text:i.text,updatedAt:o}:xn(i,o);return{...ES(e,i),messageParts:x(e.messageParts,d)}}function xS(e,t,n,o,r,i){let a=e.messages.find(u=>u.runId===t&&u.role==="assistant");if(!a)throw new ye(`Assistant message for run ${t} does not exist`);let s={...a,text:n||a.text,status:o,complete:o==="complete",parts:a.parts.map(u=>u.status==="running"?{...u,status:r}:u),updatedAt:i},d=e.messageParts.find(u=>u.id===a.partIds[0]),c=d?.kind==="text"?{...d,text:s.text,updatedAt:i}:xn(s,i);return{...ES(e,s),messageParts:x(e.messageParts,c)}}function kS(e,t,n,o,r){let i=e.operations.find(s=>s.id===t),a=o.kind==="run.requested"&&o.requestDigest!==void 0?rn(o.requestDigest):R(o);return i??{id:t,kind:"send",requestDigest:a,status:"pending",target:{kind:"run",id:n},createdAt:r,updatedAt:r}}function Ld(e){let t=e.missingHistory.length,n=e.unknownEvents.length;return{...e,health:{status:t>0?"incomplete":n>0?"degraded":"healthy",lastError:e.lastError,missingHistoryCount:t,unknownEventCount:n}}}function Ti(e,t={}){return{schemaVersion:2,revision:0,sequence:0,workspace:null,workspaceId:null,conversationId:t.conversationId??Dh("conv-1"),branchId:t.branchId??jh("branch-1"),selectedProfileId:null,selectedConnectionId:null,profile:ov(e),draft:"",messages:[],messageParts:[],runs:[],activeRunId:null,queuedInputs:[],lastError:null,workspaces:[],profiles:[],profileSnapshots:[],credentials:[],connections:[],conversations:[],branches:[],turns:[],interactions:[],analyses:[],analysisAttachments:[],environments:[],checkpoints:[],supervisors:[],workers:[],drafts:[],queues:[],queueEntries:[],rules:[],bindings:[],graphNodes:[],graphEdges:[],operations:[],effects:[],feedbackDecisions:[],replayCursors:[],missingHistory:[],appliedEvents:[],unknownEvents:[],projectionChecksum:null,health:{status:"healthy",lastError:null,missingHistoryCount:0,unknownEventCount:0}}}var AS=1;function bO(e){return{schemaVersion:e.schemaVersion,workspace:e.workspace,workspaceId:e.workspaceId,conversationId:e.conversationId,branchId:e.branchId,selectedProfileId:e.selectedProfileId,selectedConnectionId:e.selectedConnectionId,profile:e.profile,draft:e.draft,messages:e.messages,messageParts:e.messageParts,runs:e.runs,activeRunId:e.activeRunId,queuedInputs:e.queuedInputs,lastError:e.lastError,workspaces:e.workspaces,profiles:e.profiles,profileSnapshots:e.profileSnapshots,credentials:e.credentials,connections:e.connections,conversations:e.conversations,branches:e.branches,turns:e.turns,interactions:e.interactions,analyses:e.analyses,analysisAttachments:e.analysisAttachments,environments:e.environments,checkpoints:e.checkpoints,supervisors:e.supervisors,workers:e.workers,drafts:e.drafts,queues:e.queues,queueEntries:e.queueEntries,rules:e.rules,bindings:e.bindings,graphNodes:e.graphNodes,graphEdges:e.graphEdges,operations:e.operations,effects:e.effects,feedbackDecisions:e.feedbackDecisions,replayCursors:e.replayCursors,missingHistory:e.missingHistory}}function TS(e){let t=bO(e.state);return{kind:"braid.materialized-state",schemaVersion:AS,scopeId:e.scopeId,generation:e.generation,eventId:e.eventId,sequence:e.state.sequence,revision:e.state.revision,state:t,stateChecksum:R(t)}}function iy(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e,n=t.generation,o=t.sequence,r=t.revision;return t.kind!=="braid.materialized-state"||t.schemaVersion!==AS||typeof t.scopeId!="string"||typeof n!="number"||!Number.isSafeInteger(n)||n<=0||typeof t.eventId!="string"||typeof o!="number"||!Number.isSafeInteger(o)||o<=0||typeof r!="number"||!Number.isSafeInteger(r)||r<=0||t.state===null||typeof t.state!="object"||Array.isArray(t.state)||typeof t.stateChecksum!="string"||t.state.schemaVersion!==2?!1:R(t.state)===t.stateChecksum}function Md(e){if(!iy(e))throw new Error("Materialized state snapshot failed validation");let t=e,o={...Ti(t.state.profile,{conversationId:t.state.conversationId,branchId:t.state.branchId}),...t.state,revision:t.revision,sequence:t.sequence,appliedEvents:[],unknownEvents:[],projectionChecksum:null,health:{status:"healthy",lastError:t.state.lastError,missingHistoryCount:t.state.missingHistory.length,unknownEventCount:0}},i={...Ld(o),projectionChecksum:t.stateChecksum};return Zt(i),i}function $S(e,t){if(!iy(e)||e.scopeId!==t)throw new y("STATE_SNAPSHOT_INVALID","State snapshot is not a valid materialized projection for this storage scope");return e}function CS(e){if(!qe(e))throw new y("STATE_SNAPSHOT_INVALID","Materialized state is not JSON data");return e}function OS(e){if(R(e.state)!==e.stateChecksum)throw new y("STATE_SNAPSHOT_INVALID","Materialized state checksum does not match snapshot metadata")}function ay(e){let t=ee(e.snapshot_id,"snapshot_id"),n=O(e.scope_id,"scope_id"),o=ee(e.generation,"generation"),r=ee(e.storage_id,"storage_id"),i=O(e.event_id,"event_id"),a=ee(e.journal_sequence,"journal_sequence"),s=ee(e.revision,"revision"),d=O(e.state_checksum,"state_checksum"),c=ce(O(e.key_ref,"key_ref"));if(t<=0||o<=0||r<=0||a<=0||s<=0)throw new y("STATE_SNAPSHOT_INVALID","State snapshot metadata is out of range");return{snapshotId:t,scopeId:n,generation:o,storageId:r,eventId:i,sequence:a,revision:s,stateChecksum:d,keyRef:c}}function PS(e){try{return ay(e)}catch{return null}}function NS(e,t){let n={kind:"braid.materialized-state",schemaVersion:1,scopeId:e.scopeId,generation:e.generation,eventId:e.eventId,sequence:e.sequence,revision:e.revision,state:t,stateChecksum:e.stateChecksum};try{Md(n)}catch(o){throw new y("STATE_SNAPSHOT_INVALID","Snapshot payload failed domain validation",{cause:o})}return n}function sy(e){try{let t=ee(e,"snapshot");return t>0?t:null}catch{return null}}function Kt(e){if(typeof e!="string")return null;try{return ce(e)}catch{return null}}import{randomBytes as wO,randomUUID as RO}from"node:crypto";function SO(e,t){let n=R(e).slice(0,24);return ce(`cred:v1:snapshot-${n}-${t}-${RO()}`)}async function DS(e,t,n){$S(t,e.scopeId());let o=SO(e.scopeId(),t.generation),r=wO(32);try{let i=await e.credentials.store({ref:o,value:r,label:"Braid state snapshot generation key"});return n.push(i),{key:Buffer.from(r),keyRef:i}}finally{r.fill(0)}}async function Wt(e,t){let n=[...new Set(t)];if(n.length===0)return;let o=new Set;for(let r=0;r<n.length;r+=500){let i=n.slice(r,r+500),a=i.map(()=>"?").join(", "),s=e.database().prepare(`SELECT key_ref FROM braid_state_snapshots
248
- WHERE key_ref IN (${a})`).all(...i);for(let d of s)typeof d.key_ref=="string"&&o.add(d.key_ref)}for(let r of n)if(!o.has(r))try{await e.credentials.remove(r)}catch(i){if(!(i instanceof z)||i.code!=="CREDENTIAL_NOT_FOUND")throw i}}async function jS(e,t){for(let n of new Set(t))try{await e.credentials.remove(n)}catch(o){if(!(o instanceof z)||o.code!=="CREDENTIAL_NOT_FOUND")throw o}}async function US(e,t){let n,o;try{if(n=await e.credentials.resolve(t),o=Buffer.from(n.read()),o.length!==32)throw new y("STATE_SNAPSHOT_KEY_INVALID","Snapshot key is invalid");return o}catch(r){throw o?.fill(0),r}finally{n?.dispose()}}function Ct(e){e.exec("BEGIN IMMEDIATE")}function Ot(e,t,n){e.durableBoundary?.(`before:${n}`),t.exec("COMMIT");try{e.durableBoundary?.(`after:${n}`)}catch{}}function Pt(e){try{e.exec("ROLLBACK")}catch{}}var zd=class{#e;constructor(t){this.#e=t}async prune(){await this.#e.writes.run(()=>this.pruneUnsafe())}async pruneAfterCommitUnsafe(){try{await this.pruneUnsafe()}catch{}}async discardCredentials(t){await Wt(this.#e,t)}async pruneUnsafe(){let t=this.#e.database(),n=this.#e.scopeId(),o=t.prepare(`SELECT snapshot_id, scope_id, generation, key_ref
249
- FROM braid_state_snapshots
250
- WHERE scope_id = ?
251
- ORDER BY generation DESC, snapshot_id DESC
252
- LIMIT -1 OFFSET 2`).all(n);if(o.length===0)return;let r=o.map(i=>({snapshotId:ee(i.snapshot_id,"snapshot_id"),generation:ee(i.generation,"generation"),keyRef:Kt(i.key_ref)}));if(r.some(i=>i.keyRef===null))throw new y("STATE_SNAPSHOT_INVALID","Snapshot generation key reference is invalid");Ct(t);try{for(let i of r)t.prepare("DELETE FROM braid_state_snapshots WHERE snapshot_id = ?").run(i.snapshotId),t.prepare("UPDATE braid_state_snapshot_keys SET retired = 1 WHERE scope_id = ? AND generation = ?").run(n,i.generation);Ot(this.#e,t,"state.snapshot.prune")}catch(i){throw Pt(t),i}await Wt(this.#e,r.flatMap(i=>i.keyRef===null?[]:[i.keyRef])),Ct(t);try{t.prepare(`DELETE FROM braid_state_snapshot_keys AS key_row
253
- WHERE key_row.scope_id = ? AND key_row.retired = 1
254
- AND NOT EXISTS (
255
- SELECT 1 FROM braid_state_snapshots AS snapshot_row
256
- WHERE snapshot_row.key_ref = key_row.credential_ref
257
- )`).run(n),Ot(this.#e,t,"state.snapshot.keys.remove")}catch(i){throw Pt(t),i}}async destroyKeysBeforeMutation(){let t=this.#e.database(),n=new Set,o=t.prepare("SELECT credential_ref FROM braid_state_snapshot_keys WHERE scope_id = ? AND retired = 0").all(this.#e.scopeId());for(let i of o){let a=Kt(i.credential_ref);a!==null&&n.add(a)}let r=t.prepare("SELECT key_ref FROM braid_state_snapshots WHERE scope_id = ?").all(this.#e.scopeId());for(let i of r){let a=Kt(i.key_ref);a!==null&&n.add(a)}await jS(this.#e,[...n])}invalidateUnsafe(){let t=this.#e.database(),n=this.#e.scopeId();t.prepare("DELETE FROM braid_state_snapshots WHERE scope_id = ?").run(n),t.prepare("UPDATE braid_state_snapshot_keys SET retired = 1 WHERE scope_id = ?").run(n)}async finishInvalidationUnsafe(){let t=this.#e.database(),o=t.prepare("SELECT credential_ref FROM braid_state_snapshot_keys WHERE scope_id = ? AND retired = 1").all(this.#e.scopeId()).flatMap(r=>{let i=Kt(r.credential_ref);return i===null?[]:[i]});await Wt(this.#e,o),Ct(t);try{t.prepare(`DELETE FROM braid_state_snapshot_keys AS key_row
258
- WHERE key_row.scope_id = ? AND key_row.retired = 1
259
- AND NOT EXISTS (
260
- SELECT 1 FROM braid_state_snapshots AS snapshot_row
261
- WHERE snapshot_row.key_ref = key_row.credential_ref
262
- )`).run(this.#e.scopeId()),Ot(this.#e,t,"state.snapshot.invalidation.cleanup")}catch(r){throw Pt(t),r}}async reconcile(){await this.#e.writes.run(()=>this.reconcileUnsafe())}async reconcileUnsafe(){let t=this.#e.database(),n=new Set,o=t.prepare("SELECT scope_id, generation FROM braid_state_snapshots").all();for(let a of o)n.add(`${O(a.scope_id,"scope_id")}\0${ee(a.generation,"generation")}`);let r=t.prepare("SELECT scope_id, generation, credential_ref, retired FROM braid_state_snapshot_keys").all(),i=[];for(let a of r){let s=O(a.scope_id,"scope_id"),d=ee(a.generation,"generation");if(Number(a.retired)===1||!n.has(`${s}\0${d}`)){let c=Kt(a.credential_ref);if(c===null)throw new y("STATE_SNAPSHOT_INVALID","Snapshot key reference is invalid");i.push({scopeId:s,generation:d,ref:c})}}if(await Wt(this.#e,i.map(a=>a.ref)),i.length!==0){Ct(t);try{for(let a of i)t.prepare(`DELETE FROM braid_state_snapshot_keys AS key_row
263
- WHERE key_row.scope_id = ? AND key_row.generation = ?
264
- AND key_row.credential_ref = ?
265
- AND NOT EXISTS (
266
- SELECT 1 FROM braid_state_snapshots AS snapshot_row
267
- WHERE snapshot_row.key_ref = key_row.credential_ref
268
- )`).run(a.scopeId,a.generation,a.ref);Ot(this.#e,t,"state.snapshot.key.reconcile")}catch(a){throw Pt(t),a}}}};var Bd=class{#e;constructor(t){this.#e=t}async latest(){let t=this.#e.scopeId();for(;;){let n=this.#e.database().prepare(`SELECT snapshot_id, scope_id, generation, storage_id, event_id,
269
- journal_sequence, revision, state_checksum, key_ref
270
- FROM braid_state_snapshots
271
- WHERE scope_id = ?
272
- ORDER BY generation DESC, snapshot_id DESC
273
- LIMIT 1`).get(t);if(!n)return null;let o=null;try{return o=ay(n),await this.read(o)}catch(r){if(!_O(r))throw r;await this.quarantine(n,o??PS(n))}}}async read(t){let n=this.#e.scopeId();if(t.scopeId!==n)throw new y("STATE_SNAPSHOT_INVALID","Snapshot scope differs");let o=this.#e.database(),r=o.prepare(`SELECT credential_ref, retired
274
- FROM braid_state_snapshot_keys
275
- WHERE scope_id = ? AND generation = ?`).get(n,t.generation);if(!r||Number(r.retired)===1||r.credential_ref!==t.keyRef)throw new y("STATE_SNAPSHOT_KEY_UNAVAILABLE","Snapshot generation key is unavailable");let i=o.prepare("SELECT state_ciphertext FROM braid_state_snapshots WHERE snapshot_id = ?").get(t.snapshotId);if(!i)throw new y("STATE_SNAPSHOT_INVALID","Snapshot payload is missing");let a=await US(this.#e,t.keyRef);try{let s=ln(pn(i.state_ciphertext,"state_ciphertext"),a),d=NS(t,s),c=o.prepare("SELECT event_id FROM braid_journal_events WHERE storage_id = ?").get(t.storageId);if(!c||c.event_id!==t.eventId)throw new y("STATE_SNAPSHOT_UNBOUND","Snapshot event binding is invalid");return{...d,storageId:t.storageId}}finally{a.fill(0)}}async quarantine(t,n){let o=this.#e.database(),r=sy(t.snapshot_id);if(r===null)throw new y("STATE_SNAPSHOT_INVALID","Invalid snapshot identity cannot be quarantined safely");let i=O(t.scope_id,"scope_id"),a=sy(t.generation),s=new Set;n?.keyRef!==void 0&&s.add(n.keyRef);let d=Kt(t.key_ref);if(d!==null&&s.add(d),a!==null){let c=o.prepare("SELECT credential_ref FROM braid_state_snapshot_keys WHERE scope_id = ? AND generation = ?").get(i,a),u=Kt(c?.credential_ref);u!==null&&s.add(u)}await this.#e.writes.run(async()=>{Ct(o);try{o.prepare("DELETE FROM braid_state_snapshots WHERE snapshot_id = ?").run(r),a!==null&&o.prepare("UPDATE braid_state_snapshot_keys SET retired = 1 WHERE scope_id = ? AND generation = ?").run(i,a),Ot(this.#e,o,"state.snapshot.quarantine")}catch(c){throw Pt(o),c}await Wt(this.#e,[...s]),Ct(o);try{a!==null&&o.prepare(`DELETE FROM braid_state_snapshot_keys AS key_row
276
- WHERE key_row.scope_id = ? AND key_row.generation = ?
277
- AND NOT EXISTS (
278
- SELECT 1 FROM braid_state_snapshots AS snapshot_row
279
- WHERE snapshot_row.key_ref = key_row.credential_ref
280
- )`).run(i,a),Ot(this.#e,o,"state.snapshot.quarantine.cleanup")}catch(c){throw Pt(o),c}})}},EO=new Set(["PAYLOAD_DECRYPT_FAILED","PAYLOAD_VERSION","STATE_SNAPSHOT_INVALID","STATE_SNAPSHOT_KEY_INVALID","STATE_SNAPSHOT_KEY_UNAVAILABLE","STATE_SNAPSHOT_UNBOUND","STORAGE_ROW_INVALID"]);function _O(e){return e instanceof z?e.code==="CREDENTIAL_NOT_FOUND"||e.code==="INVALID_CREDENTIAL_REF":e instanceof y&&EO.has(e.code)}var qd=class{#e;constructor(t){this.#e=t}async prepare(t,n){return DS(this.#e,t,n)}writeUnsafe(t,n,o){if(t.scopeId!==this.#e.scopeId())throw new y("STATE_SNAPSHOT_INVALID","Snapshot scope differs from storage scope");OS(t);let r=this.#e.database(),i=r.prepare("SELECT event_id FROM braid_journal_events WHERE storage_id = ?").get(n);if(!i||i.event_id!==t.eventId)throw new y("STATE_SNAPSHOT_UNBOUND",`State snapshot event ${t.eventId} is not bound to storage row ${n}`);let a=Hn(CS(t.state),o.key);try{r.prepare(`INSERT INTO braid_state_snapshot_keys(
281
- scope_id, generation, credential_ref, retired, created_at
282
- ) VALUES (?, ?, ?, 0, ?)
283
- `).run(this.#e.scopeId(),t.generation,o.keyRef,Ae()),r.prepare(`INSERT INTO braid_state_snapshots(
284
- scope_id, generation, storage_id, event_id, journal_sequence,
285
- revision, state_checksum, key_ref, state_ciphertext, created_at
286
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
287
- `).run(this.#e.scopeId(),t.generation,n,t.eventId,t.sequence,t.revision,t.stateChecksum,o.keyRef,a,Ae())}finally{a.fill(0)}}async write(t,n){let o=[],r=await this.prepare(t,o),i=!1;try{await this.#e.writes.run(async()=>{let a=this.#e.database();Ct(a);try{let s=a.prepare("SELECT storage_id FROM braid_journal_events WHERE event_id = ? ORDER BY storage_id").all(t.eventId),d=s[0];if(d===void 0)throw new y("STATE_SNAPSHOT_UNBOUND","Snapshot event is not stored");if(s.length!==1)throw new y("STATE_SNAPSHOT_UNBOUND",`Snapshot event ${t.eventId} is not uniquely bound to storage`);this.writeUnsafe(t,ee(d.storage_id,"storage_id"),r),Ot(this.#e,a,"state.snapshot"),i=!0,await n()}catch(s){throw i||Pt(a),s}}),o.length=0}catch(a){throw i||await Wt(this.#e,o),a}finally{r.key.fill(0)}}};var Fd=class{#e;#t;#n;constructor(t){this.#e=new zd(t),this.#t=new Bd(t),this.#n=new qd(t)}async latest(){return this.#t.latest()}async prepare(t,n){return this.#n.prepare(t,n)}writeUnsafe(t,n,o){this.#n.writeUnsafe(t,n,o)}async write(t){return this.#n.write(t,()=>this.#e.pruneAfterCommitUnsafe())}async prune(){return this.#e.prune()}async pruneAfterCommitUnsafe(){return this.#e.pruneAfterCommitUnsafe()}async discardCredentials(t){return this.#e.discardCredentials(t)}async pruneUnsafe(){return this.#e.pruneUnsafe()}async destroyKeysBeforeMutation(){return this.#e.destroyKeysBeforeMutation()}invalidateUnsafe(){this.#e.invalidateUnsafe()}async finishInvalidationUnsafe(){return this.#e.finishInvalidationUnsafe()}async reconcile(){return this.#e.reconcile()}async reconcileUnsafe(){return this.#e.reconcileUnsafe()}};var dy=/^[0-9a-f]{64}$/u;function Vd(e){return new y("PROJECTION_CHECKSUM_MISMATCH","Persisted projection checksum does not verify",e===void 0?void 0:{cause:e})}function xO(e){let t=e.schemaVersion,n=e.eventCount,o=e.revision,r=e.eventIdsDigest,i=e.runsDigest,a=e.checksum;if(t!==3||typeof n!="number"||!Number.isSafeInteger(n)||n<0||typeof o!="number"||!Number.isSafeInteger(o)||o<0||typeof r!="string"||!dy.test(r)||typeof i!="string"||!dy.test(i)||typeof a!="string"||!dy.test(a))throw Vd();return{schemaVersion:t,eventCount:n,revision:o,eventIdsDigest:r,runsDigest:i,checksum:a}}var Hd=class extends Ha{stateSnapshots=new Fd({database:()=>this.database,credentials:this.credentials,scopeId:()=>this.snapshotScopeId(),writes:this.writes,durableBoundary:t=>this.durableBoundaryHook?.(t)});async latestStateSnapshot(){return this.assertOpen(),this.stateSnapshots.latest()}async writeStateSnapshot(t){this.assertOpen(),await this.stateSnapshots.write(t)}async runSequences(){return this.assertOpen(),this.database.prepare("SELECT * FROM braid_run_cursors ORDER BY run_id").all().map(n=>({runId:be(n.run_id),conversationId:G(n.conversation_id),lastSequence:n.last_sequence,lastCursor:n.last_cursor,missingFrom:n.missing_from,missingTo:n.missing_to,terminal:n.terminal===1}))}currentProjection(){let t=this.buildProjection();return this.assertStoredProjection(t),t}assertStoredProjection(t,n){let o=this.persistedProjection(n),r=this.projectionMetadata(t);if(o.schemaVersion!==r.schemaVersion||o.eventCount!==r.eventCount||o.revision!==r.revision||o.eventIdsDigest!==r.eventIdsDigest||o.runsDigest!==r.runsDigest||o.checksum!==t.checksum)throw new y("PROJECTION_CHECKSUM_MISMATCH","Persisted projection differs from journal replay")}assertStoredProjectionSummary(t){let n=this.persistedProjection(t),o=this.database.prepare("SELECT COUNT(*) AS event_count FROM braid_journal_events").get(),r=ee(o.event_count,"projection.event_count"),i=this.database.prepare("SELECT * FROM braid_run_cursors ORDER BY run_id").all(),a=kr(i.map(s=>({runId:be(s.run_id),conversationId:G(s.conversation_id),lastSequence:s.last_sequence,lastCursor:s.last_cursor,missingFrom:s.missing_from,missingTo:s.missing_to,terminal:s.terminal===1})));if(n.eventCount!==r||n.revision!==r||n.runsDigest!==a)throw new y("PROJECTION_CHECKSUM_MISMATCH","Persisted projection summary differs from committed journal metadata")}persistedProjection(t){let n=t??this.database.prepare("SELECT revision, state_json, checksum FROM braid_projection_state WHERE projection_name = ?").get("canonical");if(!n)throw new y("PROJECTION_CHECKSUM_MISMATCH","Projection state is missing");let o;try{o=JSON.parse(O(n.state_json,"state_json"))}catch(a){throw Vd(a)}if(o===null||typeof o!="object"||Array.isArray(o)||!qe(o))throw Vd();let i=xO(o);if(ee(n.revision,"projection.revision")!==i.revision||O(n.checksum,"projection.checksum")!==i.checksum||Va({schemaVersion:i.schemaVersion,eventCount:i.eventCount,revision:i.revision,eventIdsDigest:i.eventIdsDigest,runsDigest:i.runsDigest})!==i.checksum)throw Vd();return i}buildProjection(){let t=this.database.prepare("SELECT * FROM braid_journal_events ORDER BY storage_id").all(),n=this.database.prepare("SELECT * FROM braid_run_cursors ORDER BY run_id").all();return AI(t,n)}writeProjection(t){let n={...this.projectionMetadata(t),checksum:t.checksum};this.database.prepare(`INSERT INTO braid_projection_state(projection_name, revision, checksum, state_json)
288
- VALUES ('canonical', ?, ?, ?)
289
- ON CONFLICT(projection_name) DO UPDATE SET revision = excluded.revision, checksum = excluded.checksum, state_json = excluded.state_json`).run(t.revision,t.checksum,J(n))}projectionMetadata(t){let n=qa;for(let o of t.eventIds)n=Fa(n,o);return{schemaVersion:t.schemaVersion,eventCount:t.eventCount,revision:t.revision,eventIdsDigest:n,runsDigest:kr(t.runs)}}storedProjectionChecksum(){let t=this.database.prepare("SELECT checksum FROM braid_projection_state WHERE projection_name = ?").get("canonical");if(!t)throw new y("PROJECTION_CHECKSUM_MISMATCH","Projection state is missing");return O(t.checksum,"projection.checksum")}advanceIncrementalProjection(t){if(t.length===0)return;let n=this.database.prepare("SELECT revision, state_json FROM braid_projection_state WHERE projection_name = ?").get("canonical");if(!n)throw new y("PROJECTION_CHECKSUM_MISMATCH","Projection state is missing");let o;try{let l=JSON.parse(O(n.state_json,"state_json"));if(l===null||typeof l!="object"||Array.isArray(l)||!qe(l))throw new Error("projection state is not an object");o=l}catch(l){throw new y("PROJECTION_CHECKSUM_MISMATCH","Projection state is invalid",{cause:l})}let r=typeof o.eventIdsDigest=="string"?o.eventIdsDigest:qa;for(let l of t)r=Fa(r,l);let a=this.database.prepare("SELECT * FROM braid_run_cursors ORDER BY run_id").all().map(l=>({runId:be(l.run_id),conversationId:G(l.conversation_id),lastSequence:l.last_sequence,lastCursor:l.last_cursor,missingFrom:l.missing_from,missingTo:l.missing_to,terminal:l.terminal===1})),s=typeof o.eventCount=="number"?o.eventCount+t.length:t.length,d=ee(n.revision,"projection.revision")+t.length,c=Va({schemaVersion:3,eventCount:s,revision:d,eventIdsDigest:r,runsDigest:kr(a)}),u={schemaVersion:3,eventCount:s,revision:d,eventIdsDigest:r,runsDigest:kr(a),checksum:c};this.database.prepare(`UPDATE braid_projection_state
290
- SET revision = ?, checksum = ?, state_json = ?
291
- WHERE projection_name = 'canonical'`).run(d,c,J(u))}upsertCursor(t){this.database.prepare(`INSERT INTO braid_run_cursors(run_id, conversation_id, last_sequence, last_cursor, missing_from, missing_to, terminal)
292
- VALUES (?, ?, ?, ?, ?, ?, ?)
293
- ON CONFLICT(run_id) DO UPDATE SET conversation_id = excluded.conversation_id,
294
- last_sequence = excluded.last_sequence, last_cursor = excluded.last_cursor,
295
- missing_from = excluded.missing_from, missing_to = excluded.missing_to, terminal = excluded.terminal`).run(t.runId,t.conversationId,t.lastSequence,t.lastCursor,t.missingFrom,t.missingTo,t.terminal?1:0)}refreshCursor(t){let n=this.database.prepare("SELECT last_sequence, last_cursor, missing_to FROM braid_run_cursors WHERE run_id = ?").get(t.runId),o=n?ee(n.last_sequence,"last_sequence"):0,r=n?.last_cursor===null||n?.last_cursor===void 0?null:O(n.last_cursor,"last_cursor"),i=Math.max(t.sequence,n?.missing_to===null||n?.missing_to===void 0?o:ee(n.missing_to,"missing_to"));for(;;){let d=this.database.prepare("SELECT cursor FROM braid_journal_events WHERE run_id = ? AND run_sequence = ?").get(t.runId,o+1);if(!d)break;o+=1,r=d.cursor===null||d.cursor===void 0?null:O(d.cursor,"cursor")}let a=o<i?o+1:null,s=o<i?i:null;return this.upsertCursor({runId:t.runId,conversationId:t.conversationId,lastSequence:o,lastCursor:r,missingFrom:a,missingTo:s,terminal:t.terminal}),{run_id:t.runId,conversation_id:t.conversationId,last_sequence:o,last_cursor:r,missing_from:a,missing_to:s,terminal:t.terminal?1:0}}};var Zd=class extends Hd{async initialize(){let t=fo.now(),n=it(this.database,"user_version");if(n>Fe)throw new y("SQLITE_SCHEMA_NEWER","Database schema is newer than this Braid release");if(n<Fe&&n>0&&await this.createMigrationBackup(n),n<Fe){this.begin();try{Da(this.database),this.migrationHooks?.beforeVersionCommit?.(Fe),n>0&&this.writeProjection(this.buildProjection()),this.commit(n===0?"schema.initialize":"migration")}catch(r){throw this.rollback(),Q(r)}}this.observeStartup("schema",t),t=fo.now(),await this.reconcileContentKeyLifecycle(),this.observeStartup("content-keys",t),t=fo.now(),await this.stateSnapshots.reconcileUnsafe(),await this.stateSnapshots.pruneUnsafe(),this.observeStartup("snapshot-maintenance",t),t=fo.now();let o=this.database.prepare("SELECT revision, state_json, checksum FROM braid_projection_state WHERE projection_name = ?").get("canonical");if(o)this.assertStoredProjectionSummary(o);else{let r=this.buildProjection();this.begin();try{this.writeProjection(r),this.commit("projection.initialize")}catch(i){throw this.rollback(),Q(i)}}if(this.observeStartup("projection",t),t=fo.now(),n===Fe)this.assertStartupConfiguration();else{let r=this.integrityReport();if(!r.ok)throw new y("STORAGE_INTEGRITY_FAILURE",r.errors.join("; "))}this.observeStartup("configuration",t),t=fo.now(),await this.secureArtifacts(),this.observeStartup("artifact-permissions",t)}assertStartupConfiguration(){let t=[];if(it(this.database,"foreign_keys")!==1&&t.push("foreign_keys is disabled"),Zn(this.database,"journal_mode")?.toLowerCase()!=="wal"&&t.push("journal_mode is not WAL"),Zn(this.database,"cipher")?.toLowerCase()!=="sqlcipher"&&t.push("SQLCipher mode is not active"),t.length>0)throw new y("STORAGE_INTEGRITY_FAILURE",t.join("; "))}async reconcileContentKeyLifecycle(){let t=this.database.prepare("SELECT conversation_id, old_credential_ref, new_credential_ref, redacted_event_id, phase FROM braid_content_key_rotations ORDER BY conversation_id").all();for(let o of t){let r=G(o.conversation_id),i=ce(o.old_credential_ref),a=ce(o.new_credential_ref),s=this.database.prepare("SELECT credential_ref FROM braid_conversation_keys WHERE conversation_id = ?").get(r);if(!s)throw new y("CONTENT_KEY_UNAVAILABLE",`Conversation ${r} has no content key`);let d=ce(O(s.credential_ref,"credential_ref"));if(d===a){if(o.redacted_event_id===null||o.phase!=="rewritten")throw new y("CONTENT_KEY_ROTATION_UNVERIFIED",`Conversation ${r} has an unverified content key rotation`);if(!await this.verifyConversation(r,Et(o.redacted_event_id),a))throw new y("REDACTION_VERIFY_FAILED",`Conversation ${r} content rewrite failed verification`);await this.removeCredentialIfPresent(i)}else if(d===i)await this.removeCredentialIfPresent(a);else throw new y("CONTENT_KEY_ROTATION_CONFLICT",`Conversation ${r} has an unexpected content key rotation`);this.begin();try{this.database.prepare("DELETE FROM braid_content_key_rotations WHERE conversation_id = ?").run(r),this.commit("key.reconcile")}catch(c){throw this.rollback(),Q(c)}}let n=this.database.prepare("SELECT credential_ref FROM braid_conversation_keys WHERE destroyed = 1 ORDER BY conversation_id").all();for(let o of n)await this.removeCredentialIfPresent(ce(O(o.credential_ref,"credential_ref")))}async removeCredentialIfPresent(t){try{await this.credentials.remove(t)}catch(n){if(xr(n)!=="CREDENTIAL_NOT_FOUND")throw n}}async createMigrationBackup(t){await Uo(this.backupDirectory);let n=PO(this.backupDirectory,`${OO(this.path)}.pre-migration-v${t}-${Date.now()}.bak`);return await this.backupUnsafe(n),n}async backupUnsafe(t){this.assertOpen();let n=ut(t,"Backup path");if(n===this.path)throw new y("BACKUP_PATH","Backup cannot overwrite the live database");await gt(n,this.workspaceRoot??or(this.path),"Backup path"),await Uo(or(n)),await mI(n,!1);try{throw await $O(n),new y("BACKUP_EXISTS","Backup destination already exists")}catch(r){if(r instanceof y||r.code!=="ENOENT")throw r}let o=`${n}.partial-${kO()}`;try{this.durableBoundaryHook?.("before:backup"),this.database.prepare("VACUUM INTO ?").run(o),await ka(o),await this.assertEncryptedArtifact(o),await this.assertReadableBackup(o),await Ou(o),this.durableBoundaryHook?.("before:backup.publish");try{await TO(o,n)}catch(i){throw i.code==="EEXIST"?new y("BACKUP_EXISTS","Backup destination already exists",{cause:i}):i}await Ou(n),await pe(or(n)),this.durableBoundaryHook?.("after:backup.publish"),this.durableBoundaryHook?.("before:backup.temp.remove"),await LS(o),await pe(or(n)),this.durableBoundaryHook?.("after:backup.temp.remove");let r=(await $i(n)).size;this.latestBackupPath=n;try{this.durableBoundaryHook?.("after:backup")}catch{}return{path:n,bytes:r,encrypted:!0}}catch(r){throw await cy(o,{force:!0}).catch(()=>{}),r instanceof y?r:Q(r)}}openDatabase(t){let n=Ea(t,this.databaseFactory,this.busyTimeoutMs);try{return _a(n.database,this.databaseKey,{newDatabase:n.newDatabase}),sI(n.database,n.fileDescriptor)}catch(o){throw n.database.close(),AO(n.fileDescriptor),o}}async assertEncryptedArtifact(t){let n=await Rr(t,"encrypted storage artifact"),o;try{o=await n.readFile()}finally{await n.close()}if(o.length<32||o.subarray(0,16).toString("ascii")==="SQLite format 3\0")throw new y("STORAGE_NOT_ENCRYPTED",`Storage artifact is not encrypted: ${t}`)}async secureArtifacts(){await Aa(this.path),await Aa(this.artifacts().wal),await Aa(this.artifacts().sharedMemory)}async assertReadableBackup(t){let n=this.openDatabase(t);try{let o=n.prepare("PRAGMA quick_check").all(),r=n.prepare("PRAGMA integrity_check").all(),i=a=>a.length>0&&a.every(s=>Object.values(s).some(d=>d==="ok"));if(!i(o)||!i(r))throw new y("BACKUP_INTEGRITY_FAILURE","Encrypted backup failed SQLite integrity checks")}finally{n.close()}}async rollbackRestore(t){this.database.open&&this.database.close();let n=await $i(this.path).then(()=>!0).catch(()=>!1);await $i(t.displaced).then(()=>!0).catch(()=>!1)&&(t.phase==="live-displaced"||t.phase==="installed"||t.phase==="verified"||n)&&n&&(await cy(this.path,{force:!0}),await pe(or(this.path)));for(let[i,a]of[[t.displaced,this.path],[t.displacedWal,`${this.path}-wal`],[t.displacedSharedMemory,`${this.path}-shm`]]){let s=await $i(i).then(()=>!0).catch(()=>!1),d=await $i(a).then(()=>!0).catch(()=>!1);s&&!d&&(await CO(i,a),await pe(or(this.path)))}await cy(t.temporary,{force:!0}),await LS(cn(this.path)).catch(i=>{if(i.code!=="ENOENT")throw i}),await pe(or(this.path)),this.database=this.openDatabase(this.path),Kn(this.database,this.busyTimeoutMs)}};var Kd=class extends Zd{async append(t){return this.validateAppend(t),this.writes.run(async()=>this.appendUnsafe(t))}async appendWithSnapshot(t){return this.validateAppend(t.events),this.writes.run(async()=>this.appendUnsafe(t.events,t.snapshot))}validateAppend(t){if(t.length===0)return;if(t.length>this.maxEvents)throw new y("STORAGE_TRANSACTION_BOUNDS",`A transaction may contain at most ${this.maxEvents} events`);let n=0;for(let o of t)xI(o),Mo(o.payload),n+=Buffer.byteLength(J(o.payload));if(n>this.maxPayloadBytes)throw new y("STORAGE_TRANSACTION_BOUNDS","The event batch exceeds the transaction byte bound")}async appendUnsafe(t,n){this.assertOpen();let o=new Map,r=new Map,i=new Map,a=[],s=[],d;try{for(let p of t)if(o.has(p.conversationId)){if(i.get(p.conversationId)!==p.workspaceId)throw new y("CONVERSATION_WORKSPACE_CONFLICT",`Conversation ${p.conversationId} was used with multiple workspaces`)}else{let v=await this.ensureContentKey(p.conversationId,a);o.set(p.conversationId,v.key),r.set(p.conversationId,v.ref),i.set(p.conversationId,p.workspaceId)}n!==void 0&&(d=await this.stateSnapshots.prepare(n,s)),this.begin();let c=[],u=[],l=new Set,f,g=!1;try{for(let[v]of o){let w=i.get(v),k=r.get(v);if(!w||!k)throw new y("CONTENT_KEY_UNAVAILABLE","Conversation key material is incomplete");let P=this.database.prepare("SELECT workspace_id FROM braid_conversations WHERE conversation_id = ?").get(v);if(P&&O(P.workspace_id,"workspace_id")!==w)throw new y("CONVERSATION_WORKSPACE_CONFLICT",`Conversation ${v} belongs to another workspace`);P||this.database.prepare("INSERT INTO braid_conversations(conversation_id, workspace_id, created_at) VALUES (?, ?, ?)").run(v,w,Ae());let N=this.database.prepare("SELECT credential_ref, destroyed FROM braid_conversation_keys WHERE conversation_id = ?").get(v);if(N&&Number(N.destroyed)===1)throw new y("CONTENT_KEY_DESTROYED",`Conversation ${v} content key was destroyed`);if(N&&O(N.credential_ref,"credential_ref")!==k)throw new y("CONTENT_KEY_RACE",`Conversation ${v} content key was created concurrently`);N||this.database.prepare("INSERT INTO braid_conversation_keys(conversation_id, credential_ref, destroyed) VALUES (?, ?, 0)").run(v,k)}for(let v of t){let w=this.database.prepare(`SELECT workspace_id, conversation_id, run_id, event_id, run_sequence, kind,
296
- cursor, provider_event_id, operation_id, payload_checksum, occurred_at, received_at, terminal
297
- FROM braid_journal_events WHERE run_id = ? AND event_id = ?`).get(v.runId,v.eventId),k=un(v.payload);if(w){if(!(w.workspace_id===v.workspaceId&&w.conversation_id===v.conversationId&&w.run_id===v.runId&&w.event_id===v.eventId&&Number(w.run_sequence)===v.sequence&&w.kind===v.kind&&(w.cursor??null)===(v.cursor??null)&&(w.provider_event_id??null)===(v.providerEventId??null)&&(w.operation_id??null)===(v.operationId??null)&&w.payload_checksum===k&&w.occurred_at===v.occurredAt&&(v.receivedAt===void 0||w.received_at===v.receivedAt)&&Number(w.terminal)===(v.terminal===!0?1:0)))throw new y("EVENT_ID_CONFLICT",`Event ${v.eventId} changed its durable input on retry`);u.push(v.eventId);continue}let P=this.database.prepare("SELECT event_id FROM braid_journal_events WHERE run_id = ? AND run_sequence = ?").get(v.runId,v.sequence);if(P&&P.event_id!==v.eventId)throw new y("SEQUENCE_CONFLICT",`Sequence ${v.sequence} is already assigned for run ${v.runId}`);let N=this.database.prepare("SELECT run_id, conversation_id, last_sequence, last_cursor, missing_from, missing_to, terminal FROM braid_run_cursors WHERE run_id = ?").get(v.runId);if(N&&N.conversation_id!==v.conversationId)throw new y("RUN_CONVERSATION_CONFLICT",`Run ${v.runId} belongs to another conversation`);let D=N?.missing_from!==null&&N?.missing_from!==void 0&&N?.missing_to!==null&&N?.missing_to!==void 0&&v.sequence>=N.missing_from&&v.sequence<=N.missing_to;if(N?.terminal===1&&!D&&!_I(v))throw new y("TERMINAL_RUN_MUTATION",`Run ${v.runId} is already terminal`);let W=o.get(v.conversationId);if(!W)throw new y("CONTENT_KEY_UNAVAILABLE","Conversation content key is unavailable");let Ee=Hn(v.payload,W);this.database.prepare(`INSERT INTO braid_conversations(conversation_id, workspace_id, created_at)
298
- VALUES (?, ?, ?)
299
- ON CONFLICT(conversation_id) DO UPDATE SET workspace_id = excluded.workspace_id`).run(v.conversationId,v.workspaceId,v.occurredAt);let Nn=this.database.prepare(`INSERT INTO braid_journal_events(
300
- workspace_id, conversation_id, run_id, event_id, provider_event_id, run_sequence, kind, cursor,
301
- operation_id, payload, payload_checksum, occurred_at, received_at, terminal, redacted
302
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, 0)`).run(v.workspaceId,v.conversationId,v.runId,v.eventId,v.providerEventId??null,v.sequence,v.kind,v.cursor??null,v.operationId??null,Ee,k,v.occurredAt,v.receivedAt??Ae(),v.terminal===!0?1:0),yr=ee(Nn.lastInsertRowid,"storage_id");Ee.fill(0),n?.eventId===v.eventId&&(f=yr),this.refreshCursor({runId:v.runId,conversationId:v.conversationId,sequence:v.sequence,terminal:N?.terminal===1||v.terminal===!0}).missingFrom!==null&&l.add(v.runId),c.push(v.eventId)}if(this.advanceIncrementalProjection(c),n!==void 0&&c.includes(n.eventId)){if(d===void 0)throw new y("STATE_SNAPSHOT_INVALID","Snapshot key preparation was lost");if(f===void 0)throw new y("STATE_SNAPSHOT_UNBOUND","Snapshot event is not stored");this.stateSnapshots.writeUnsafe(n,f,d)}this.commit("append"),g=!0,a.length=0,n!==void 0&&c.includes(n.eventId)?(s.length=0,await this.stateSnapshots.pruneAfterCommitUnsafe()):s.length>0&&(await this.stateSnapshots.discardCredentials(s),s.length=0);let p=[...l].flatMap(v=>{let w=this.database.prepare("SELECT * FROM braid_run_cursors WHERE run_id = ?").get(v),k=Vo(w);return k?[k]:[]});return{acceptedEventIds:c,duplicateEventIds:u,missingHistory:p,projectionChecksum:this.storedProjectionChecksum()}}catch(p){throw g||this.rollback(),Q(p)}}catch(c){for(let u of a)await this.credentials.remove(u).catch(()=>{});if(await this.stateSnapshots.discardCredentials(s),c instanceof y&&c.code==="CONTENT_KEY_RACE")return this.appendUnsafe(t,n);throw c instanceof y||c instanceof z?c:Q(c)}finally{for(let c of o.values())c.fill(0)}}async events(t={}){this.assertOpen();let n=[],o=[];t.workspaceId!==void 0&&(n.push("workspace_id = ?"),o.push(t.workspaceId)),t.conversationId!==void 0&&(n.push("conversation_id = ?"),o.push(t.conversationId)),t.runId!==void 0&&(n.push("run_id = ?"),o.push(t.runId)),t.afterStorageId!==void 0&&(n.push("storage_id > ?"),o.push(t.afterStorageId));let r=n.length===0?"":` WHERE ${n.join(" AND ")}`,i=this.database.prepare(`SELECT * FROM braid_journal_events${r} ORDER BY storage_id`).all(...o);return this.storedEvents(i)}async replay(t){this.assertOpen();let n=t.afterSequence??0,o=this.database.prepare("SELECT * FROM braid_run_cursors WHERE run_id = ?").get(t.runId),r=this.database.prepare("SELECT * FROM braid_journal_events WHERE run_id = ? AND run_sequence > ? ORDER BY run_sequence").all(t.runId,n),i=await this.storedEvents(r),a=o?Vo(o):null;return{events:i,complete:a===null,missingHistory:a?[a]:[],lastSequence:o?.last_sequence??0,...o?.last_cursor===null||o?.last_cursor===void 0?{}:{lastCursor:o.last_cursor}}}async projection(){return this.assertOpen(),structuredClone(this.currentProjection())}async projectionChecksum(){return this.assertOpen(),this.storedProjectionChecksum()}};var Wd=class extends Kd{async reserveOperation(t){qu(t),Mo(t.request);let n=t.createdAt??Ae();return this.writes.run(async()=>{this.assertOpen(),this.begin();try{let o=this.database.prepare("SELECT * FROM braid_operation_records WHERE operation_id = ?").get(t.operationId);if(o){let r=Ba(o);return r.requestDigest!==t.requestDigest?(this.recordOperationConflictUnsafe(t.operationId,r.requestDigest,t.requestDigest,n),this.commit("operation.reserve.conflict"),{created:!1,record:{...r,status:"conflict",updatedAt:n}}):(this.commit("operation.reserve.replay"),{created:!1,record:r})}return this.database.prepare(`INSERT INTO braid_operation_records(
303
- operation_id, operation_kind, request_digest, request_json, status, result_json, created_at, updated_at
304
- ) VALUES (?, ?, ?, ?, 'pending', NULL, ?, ?)`).run(t.operationId,t.kind,t.requestDigest,J(t.request),n,n),this.commit("operation.reserve"),{created:!0,record:{...t,createdAt:n,updatedAt:n,status:"pending"}}}catch(o){throw this.rollback(),Q(o)}})}async completeOperation(t){if(we(t.operationId),!/^[0-9a-f]{64}$/u.test(t.requestDigest))throw new y("OPERATION_INVALID","Operation request digest must be a SHA-256 digest");if(t.updatedAt!==void 0&&!Y(t.updatedAt))throw new y("OPERATION_INVALID","Operation updatedAt must be a canonical ISO date");return t.result!==void 0&&Mo(t.result),this.writes.run(async()=>{this.assertOpen(),this.begin();try{let n=this.database.prepare("SELECT * FROM braid_operation_records WHERE operation_id = ?").get(t.operationId);if(!n)throw new y("OPERATION_NOT_FOUND",`Operation ${t.operationId} was not reserved`);let o=Ba(n);if(o.requestDigest!==t.requestDigest)return this.recordOperationConflictUnsafe(t.operationId,o.requestDigest,t.requestDigest,t.updatedAt??Ae()),this.commit("operation.complete.conflict"),{...o,status:"conflict",updatedAt:t.updatedAt??Ae()};if(o.status!=="pending"&&o.status!=="unknown")return this.commit("operation.complete.replay"),o;let r=t.updatedAt??Ae();return this.database.prepare("UPDATE braid_operation_records SET status = ?, result_json = ?, updated_at = ? WHERE operation_id = ?").run(t.status,t.result===void 0?null:J(t.result),r,t.operationId),this.commit("operation.complete"),{...o,status:t.status,updatedAt:r,...t.result===void 0?{}:{result:za(t.result)}}}catch(n){throw this.rollback(),Q(n)}})}async recordOperationConflict(t){if(we(t.operationId),!/^[0-9a-f]{64}$/u.test(t.requestDigest)||!/^[0-9a-f]{64}$/u.test(t.attemptedDigest))throw new y("OPERATION_INVALID","Operation conflict digests must be SHA-256 digests");if(t.requestDigest===t.attemptedDigest)throw new y("OPERATION_INVALID","A conflict requires a different digest");if(t.occurredAt!==void 0&&!Y(t.occurredAt))throw new y("OPERATION_INVALID","Operation conflict occurredAt must be a canonical ISO date");await this.writes.run(async()=>{this.assertOpen(),this.begin();try{let n=this.database.prepare("SELECT request_digest FROM braid_operation_records WHERE operation_id = ?").get(t.operationId);if(!n)throw new y("OPERATION_NOT_FOUND",`Operation ${t.operationId} was not reserved`);if(O(n.request_digest,"request_digest")!==t.requestDigest)throw new y("OPERATION_CONFLICT",`Operation ${t.operationId} is bound to another request digest`);this.recordOperationConflictUnsafe(t.operationId,t.requestDigest,t.attemptedDigest,t.occurredAt??Ae()),this.commit("operation.conflict")}catch(n){throw this.rollback(),Q(n)}})}async operation(t){this.assertOpen();let n=this.database.prepare("SELECT * FROM braid_operation_records WHERE operation_id = ?").get(t);return n?Ba(n):null}recordOperationConflictUnsafe(t,n,o,r){this.database.prepare(`INSERT INTO braid_operation_conflicts(operation_id, attempted_digest, original_digest, occurred_at)
305
- VALUES (?, ?, ?, ?) ON CONFLICT(operation_id, attempted_digest) DO NOTHING`).run(t,o,n,r)}reserveRestoredOperationUnsafe(t){let n=this.database.prepare("SELECT request_digest FROM braid_operation_records WHERE operation_id = ?").get(t.operationId);if(n){if(O(n.request_digest,"request_digest")!==t.requestDigest)throw new y("OPERATION_CONFLICT",`Operation ${t.operationId} conflicts with the restored database`);return}let o=t.createdAt??Ae();this.begin();try{this.database.prepare(`INSERT INTO braid_operation_records(
306
- operation_id, operation_kind, request_digest, request_json, status,
307
- result_json, created_at, updated_at
308
- ) VALUES (?, ?, ?, ?, 'pending', NULL, ?, ?)`).run(t.operationId,t.kind,t.requestDigest,J(t.request),o,o),this.commit("restore.operation.reserve")}catch(r){throw this.rollback(),Q(r)}}};var Jd=class extends Wd{async rebuild(t){yt(t,{});let n=await this.reuseMutation(t);if(n!==void 0)return n;let o=!1;try{let r=await this.writes.run(async()=>{this.assertOpen(),this.begin();try{let i=this.buildProjection();return this.writeProjection(i),this.commit("rebuild"),o=!0,structuredClone(i)}catch(i){throw this.rollback(),Q(i)}});return await this.completeMutation(t,"terminal",_r(r)),r}catch(r){throw await this.completeMutationFailure(t,r,o),r}}reserveEffect(t){this.assertOpen(),zo(t),this.begin();try{let n=this.database.prepare("SELECT * FROM braid_effect_admissions WHERE operation_id = ?").get(t.operationId);if(n){let o=O(n.request_digest,"request_digest"),r=this.database.prepare(`SELECT * FROM braid_effect_records
309
- WHERE operation_id = ? AND request_digest = ?
310
- ORDER BY effect_sequence DESC LIMIT 1`).get(t.operationId,o);if(o===t.requestDigest){let a=r?Fo(r):{...t,effectKind:O(n.effect_kind,"effect_kind"),attempt:ee(n.attempt,"attempt"),createdAt:O(n.created_at,"created_at"),updatedAt:O(n.updated_at,"updated_at")};return this.commit("effect.reserve.replay"),{record:a,created:!1}}let i={...t,status:"conflict",detail:`Operation is already bound to request digest ${o}`,conflictWithDigest:o};return this.insertEffectUnsafe(i),this.commit("effect.reserve.conflict"),{record:i,created:!1}}return this.database.prepare(`INSERT INTO braid_effect_admissions(
311
- operation_id, effect_kind, request_digest, attempt, created_at, updated_at
312
- ) VALUES (?, ?, ?, ?, ?, ?)`).run(t.operationId,t.effectKind,t.requestDigest,t.attempt,t.createdAt,t.updatedAt),this.insertEffectUnsafe(t),this.commit("effect.reserve"),{record:structuredClone(t),created:!0}}catch(n){throw this.rollback(),Q(n)}}current(t){this.assertOpen();let n=this.database.prepare(`SELECT * FROM braid_effect_records
313
- WHERE operation_id = ? AND status <> 'conflict'
314
- ORDER BY effect_sequence DESC LIMIT 1`).get(t);return n===void 0?void 0:Fo(n)}latest(t,n){this.assertOpen();let o=this.database.prepare(`SELECT * FROM braid_effect_records
315
- WHERE operation_id = ? AND request_digest = ?
316
- ORDER BY effect_sequence DESC LIMIT 1`).get(t,n);return o===void 0?void 0:Fo(o)}appendEffect(t){this.assertOpen(),zo(t),this.begin();try{this.insertEffectUnsafe(t),t.status!=="conflict"&&this.database.prepare(`UPDATE braid_effect_admissions
317
- SET effect_kind = ?, attempt = ?, updated_at = ?
318
- WHERE operation_id = ? AND request_digest = ?`).run(t.effectKind,t.attempt,t.updatedAt,t.operationId,t.requestDigest),this.commit("effect")}catch(n){throw this.rollback(),Q(n)}}history(t){return this.assertOpen(),this.database.prepare("SELECT * FROM braid_effect_records WHERE operation_id = ? ORDER BY effect_sequence").all(t).map(Fo)}insertEffectUnsafe(t){this.database.prepare(`INSERT INTO braid_effect_records(
319
- operation_id, effect_kind, request_digest, status, attempt, created_at,
320
- updated_at, metadata_json, detail, external_reference, conflict_with_digest
321
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(t.operationId,t.effectKind,t.requestDigest,t.status,t.attempt,t.createdAt,t.updatedAt,J(t.metadata),t.detail??null,t.externalReference??null,t.conflictWithDigest??null)}async reuseMutation(t){let n=await this.reserveOperation(t);if(n.record.status==="conflict")throw new y("OPERATION_CONFLICT",`Operation ${t.operationId} was reused with a different request digest`);if(!n.created&&n.record.status==="failed")throw new y("OPERATION_FAILED_REPLAY",`Operation ${t.operationId} already failed; use a new operation identifier to retry`);if(!n.created&&n.record.status==="unknown")throw new y("OPERATION_OUTCOME_UNKNOWN",`Operation ${t.operationId} has an unknown outcome and requires reconciliation`);if(!n.created&&n.record.status==="pending"){let o=await this.reconcilePendingMutation(t);if(o!==void 0)return await this.completeMutation(t,"terminal",_r(o)),o;throw new y("OPERATION_OUTCOME_PENDING",`Operation ${t.operationId} is pending and requires explicit reconciliation evidence`)}if(!n.created&&(n.record.status==="terminal"||n.record.status==="acknowledged")){if(n.record.result===void 0)throw new y("OPERATION_RESULT_MISSING",`Operation ${t.operationId} has no stored result`);return za(n.record.result)}}async reconcilePendingMutation(t){let n=t.request,o=n!==null&&typeof n=="object"&&!Array.isArray(n)?n:void 0;if(t.kind==="backup"&&typeof o?.path=="string"){let r=ut(o.path,"Backup path");return await gt(r,this.workspaceRoot??NO(this.path),"Backup path"),await MS(r).then(()=>!0).catch(()=>!1)?(await this.assertEncryptedArtifact(r),await this.assertReadableBackup(r),{path:r,bytes:(await MS(r)).size,encrypted:!0}):void 0}if(t.kind==="destruction"&&typeof o?.conversationId=="string")return this.database.prepare("SELECT conversation_id FROM braid_conversation_tombstones WHERE conversation_id = ?").get(o.conversationId)?{conversationId:o.conversationId,destroyed:!0,retainedCiphertext:!0}:void 0;if(t.kind==="redact"&&typeof o?.conversationId=="string"&&typeof o.eventId=="string"){if(!this.database.prepare("SELECT rewritten_at FROM braid_redaction_records WHERE conversation_id = ? AND event_id = ?").get(o.conversationId,o.eventId))return;let i=this.database.prepare("SELECT credential_ref FROM braid_conversation_keys WHERE conversation_id = ?").get(o.conversationId);if(!i)return;let a=ce(O(i.credential_ref,"credential_ref"));if(!await this.verifyConversation(G(o.conversationId),Et(o.eventId),a))return;let d=this.database.prepare("SELECT COUNT(*) AS count FROM braid_journal_events WHERE conversation_id = ?").get(o.conversationId);return{conversationId:o.conversationId,redactedEventId:o.eventId,rewrittenEvents:ee(d.count,"rewrittenEvents"),newContentKeyRef:a}}if(t.kind==="migrate"&&it(this.database,"user_version")>=Fe)return{fromVersion:Fe,toVersion:Fe,migrated:!1};if(t.kind==="rebuild")return this.buildProjection();if(t.kind==="compact")return{completed:!0};if(t.kind==="retention"){let r=typeof o?.before=="string"?o.before:void 0;if(!r)return;if(!this.database.prepare(`SELECT 1 FROM braid_journal_events e
322
- JOIN braid_run_cursors c ON c.run_id = e.run_id
323
- WHERE e.received_at < ? AND e.redacted = 0 AND c.terminal = 1 LIMIT 1`).get(r))return{redactedEvents:0,deletedConversations:[]}}}async completeMutation(t,n,o){await this.completeOperation({operationId:t.operationId,requestDigest:t.requestDigest,status:n,result:o})}async completeMutationFailure(t,n,o=!1){let r={code:o?"STORAGE_MUTATION_OUTCOME_UNKNOWN":n instanceof y?n.code:"STORAGE_MUTATION_FAILED",message:o?"The storage mutation committed but its final outcome is unknown":n instanceof y?n.code:"Storage mutation failed"};try{await this.completeMutation(t,o?"unknown":"failed",r)}catch{await this.completeMutation(t,"unknown",{code:"STORAGE_MUTATION_OUTCOME_UNKNOWN"}).catch(()=>{})}}};var Gd=class extends Jd{async migrate(t){yt(t,{});let n=await this.reuseMutation(t);if(n!==void 0)return n;let o=!1;try{let r=await this.writes.run(async()=>{this.assertOpen();let i=it(this.database,"user_version");if(i>=Fe)return{fromVersion:i,toVersion:i,migrated:!1};let a=await this.createMigrationBackup(i);this.begin();try{Da(this.database),this.migrationHooks?.beforeVersionCommit?.(Fe);let s=this.buildProjection();return this.writeProjection(s),this.commit("migration"),o=!0,{fromVersion:i,toVersion:Fe,migrated:!0,backupPath:a}}catch(s){throw this.rollback(),Q(s)}});return await this.completeMutation(t,"terminal",r),r}catch(r){throw await this.completeMutationFailure(t,r,o),r}}async backup(t){yt(t.operation,{path:t.path});let n=await this.reuseMutation(t.operation);if(n!==void 0)return n;let o=!1;try{let r=await this.writes.run(async()=>this.withExclusiveLock(()=>this.backupUnsafe(t.path)));return o=!0,await this.completeMutation(t.operation,"terminal",_r(r)),r}catch(r){throw await this.completeMutationFailure(t.operation,r,o),r}}async restore(t){yt(t.operation,{path:t.path});let n=await this.reuseMutation(t.operation);if(n!==void 0)return n;let o=!1;try{let r=await this.writes.run(async()=>this.withExclusiveLock(async()=>{this.assertOpen();let i=ut(t.path,"Backup path");await gt(i,this.workspaceRoot??ir(this.path),"Backup path",!1),await this.assertEncryptedArtifact(i);let a=UO(this.backupDirectory,`${jO(this.path)}.pre-restore-${Date.now()}-${Ci()}.bak`);await this.backupUnsafe(a);let s=`${this.path}.restore-${Ci()}.tmp`,d=`${this.path}.displaced-${Ci()}`,c=`${this.path}-wal.displaced-${Ci()}`,u=`${this.path}-shm.displaced-${Ci()}`,l={version:1,operationId:t.operation.operationId,source:i,recovery:a,temporary:s,displaced:d,displacedWal:c,displacedSharedMemory:u,phase:"prepared"};await Sr(this.path,l,this.durableBoundaryHook);try{this.durableBoundaryHook?.("before:restore.copy"),await fI(i,s,"backup"),await ka(s),await pe(ir(this.path)),this.durableBoundaryHook?.("after:restore.copy"),l={...l,phase:"candidate-ready"},await Sr(this.path,l,this.durableBoundaryHook);let f;try{if(f=this.openDatabase(s),Kn(f,this.busyTimeoutMs),!this.integrityReportFor(f).ok)throw new y("STORAGE_INTEGRITY_FAILURE","Backup integrity check failed")}finally{f?.close()}await uy(`${s}-wal`,{force:!0}),await uy(`${s}-shm`,{force:!0}),await pe(ir(this.path)),await this.database.close();let g=async(v,w,k)=>{try{this.durableBoundaryHook?.(`before:restore.${k}`),await zS(v,w),await pe(ir(this.path)),this.durableBoundaryHook?.(`after:restore.${k}`)}catch(P){if(P.code!=="ENOENT")throw P}};await g(this.path,d,"displace"),await g(`${this.path}-wal`,c,"displace-wal"),await g(`${this.path}-shm`,u,"displace-shm"),l={...l,phase:"live-displaced"},await Sr(this.path,l,this.durableBoundaryHook),this.durableBoundaryHook?.("before:restore.install"),await zS(s,this.path),await pe(ir(this.path)),this.durableBoundaryHook?.("after:restore.install"),l={...l,phase:"installed"},await Sr(this.path,l,this.durableBoundaryHook),this.database=this.openDatabase(this.path),Kn(this.database,this.busyTimeoutMs),await this.initialize(),this.reserveRestoredOperationUnsafe(t.operation);let p=this.integrityReport();if(!p.ok)throw new y("STORAGE_INTEGRITY_FAILURE","Restored database is not healthy");l={...l,phase:"verified"},await Sr(this.path,l,this.durableBoundaryHook);for(let[v,w]of[["cleanup",d],["cleanup-wal",c],["cleanup-shm",u]])this.durableBoundaryHook?.(`before:restore.${v}`),await uy(w,{force:!0}),await pe(ir(this.path)),this.durableBoundaryHook?.(`after:restore.${v}`);return this.durableBoundaryHook?.("before:restore.manifest.remove"),await DO(cn(this.path)),await pe(ir(this.path)),this.durableBoundaryHook?.("after:restore.manifest.remove"),o=!0,{path:i,restored:!0,integrity:p}}catch(f){throw await this.rollbackRestore(l).catch(()=>{}),f instanceof y?f:Q(f)}}));return await this.completeMutation(t.operation,"terminal",_r(r)),r}catch(r){throw await this.completeMutationFailure(t.operation,r,o),r}}};var Xd=class extends Gd{async applyRetention(t){yt(t.operation,{before:t.before,...t.conversationId===void 0?{}:{conversationId:t.conversationId}});let n=await this.reuseMutation(t.operation);if(n!==void 0)return n;let o=!1;try{let r=await this.writes.run(async()=>{this.assertOpen();let i=["e.received_at < ?","e.redacted = 0","c.terminal = 1"],a=[t.before];t.conversationId!==void 0&&(i.push("e.conversation_id = ?"),a.push(t.conversationId));let s=this.database.prepare(`SELECT e.* FROM braid_journal_events e
324
- JOIN braid_run_cursors c ON c.run_id = e.run_id WHERE ${i.join(" AND ")}`).all(...a);if(s.length===0)return{redactedEvents:0,deletedConversations:[]};let d=new Map;try{for(let c of s){let u=G(c.conversation_id);if(!d.has(u)){let l=await this.existingContentKey(u);if(!l)throw new y("CONTENT_KEY_UNAVAILABLE",`Content key for ${u} is unavailable`);d.set(u,l)}}await this.stateSnapshots.destroyKeysBeforeMutation(),this.begin();for(let c of s){let u=G(c.conversation_id),l=d.get(u);if(!l)throw new y("CONTENT_KEY_UNAVAILABLE","Retention content key is unavailable");let f=ln(pn(c.payload,"payload"),l),g=qo(f,c,"retention"),p=Hn(g,l);this.database.prepare("UPDATE braid_journal_events SET payload = ?, redacted = 1, payload_checksum = ? WHERE conversation_id = ? AND event_id = ?").run(p,un(g),c.conversation_id,c.event_id),p.fill(0),this.database.prepare(`INSERT INTO braid_redaction_records(conversation_id, event_id, reason, rewritten_at)
325
- VALUES (?, ?, 'retention', ?) ON CONFLICT(conversation_id, event_id) DO UPDATE SET reason = excluded.reason, rewritten_at = excluded.rewritten_at`).run(c.conversation_id,c.event_id,Ae())}return this.stateSnapshots.invalidateUnsafe(),this.commit("retention"),o=!0,await this.stateSnapshots.finishInvalidationUnsafe(),{redactedEvents:s.length,deletedConversations:[]}}catch(c){throw o||this.rollback(),Q(c)}finally{for(let c of d.values())c.fill(0)}});return await this.completeMutation(t.operation,"terminal",r),r}catch(r){throw await this.completeMutationFailure(t.operation,r,o),r}}async redact(t){yt(t.operation,{conversationId:t.conversationId,eventId:t.eventId,reasonDigest:R(t.reason)});let n=await this.reuseMutation(t.operation);if(n!==void 0)return n;let o=!1;try{let r=await this.writes.run(async()=>this.withExclusiveLock(async()=>{if(this.assertOpen(),!this.database.prepare("SELECT * FROM braid_journal_events WHERE conversation_id = ? AND event_id = ?").get(t.conversationId,t.eventId))throw new y("EVENT_NOT_FOUND",`Event ${t.eventId} was not found`);let a=this.database.prepare("SELECT credential_ref, destroyed FROM braid_conversation_keys WHERE conversation_id = ?").get(t.conversationId),s=a===void 0||Number(a.destroyed)===1?void 0:ce(O(a.credential_ref,"credential_ref")),d=await this.existingContentKey(t.conversationId);if(!d)throw new y("CONTENT_KEY_UNAVAILABLE","The old content key is unavailable");if(s===void 0)throw d.fill(0),new y("CONTENT_KEY_UNAVAILABLE","The conversation has no replaceable content key");let c=ce(`cred:v1:content-redacted-${LO("sha256").update(t.conversationId).digest("hex")}-${zO()}`),u=MO(32),l=this.database.prepare("SELECT * FROM braid_journal_events WHERE conversation_id = ? ORDER BY storage_id").all(t.conversationId),f=[];try{await this.stateSnapshots.destroyKeysBeforeMutation(),this.begin();try{this.database.prepare(`INSERT INTO braid_content_key_rotations(
326
- conversation_id, old_credential_ref, new_credential_ref, redacted_event_id, phase, prepared_at
327
- ) VALUES (?, ?, ?, ?, 'prepared', ?)
328
- ON CONFLICT(conversation_id) DO UPDATE SET old_credential_ref = excluded.old_credential_ref,
329
- new_credential_ref = excluded.new_credential_ref, redacted_event_id = excluded.redacted_event_id,
330
- phase = excluded.phase, prepared_at = excluded.prepared_at`).run(t.conversationId,s,c,t.eventId,Ae()),this.commit("redaction.prepare")}catch(g){throw this.rollback(),g}this.durableBoundaryHook?.("before:redaction.key.store"),await this.credentials.store({ref:c,value:u}),this.durableBoundaryHook?.("after:redaction.key.store"),f=l.map(g=>{let p=ln(pn(g.payload,"payload"),d),v=g.event_id===t.eventId?qo(p,g,t.reason):p,w=Hn(v,u);return{row:g,encoded:w,checksum:un(v),redacted:g.event_id===t.eventId||g.redacted===1}}),this.begin();for(let g of f)this.database.prepare("UPDATE braid_journal_events SET payload = ?, payload_checksum = ?, redacted = ? WHERE storage_id = ?").run(g.encoded,g.checksum,g.redacted?1:0,g.row.storage_id),g.encoded.fill(0);this.database.prepare("UPDATE braid_conversation_keys SET credential_ref = ?, destroyed = 0 WHERE conversation_id = ?").run(c,t.conversationId),this.database.prepare(`UPDATE braid_content_key_rotations
331
- SET phase = 'rewritten' WHERE conversation_id = ?`).run(t.conversationId),this.database.prepare(`INSERT INTO braid_redaction_records(conversation_id, event_id, reason, rewritten_at)
332
- VALUES (?, ?, ?, ?) ON CONFLICT(conversation_id, event_id) DO UPDATE SET reason = excluded.reason, rewritten_at = excluded.rewritten_at`).run(t.conversationId,t.eventId,Fu(t.reason),Ae()),this.stateSnapshots.invalidateUnsafe(),this.commit("redaction"),o=!0,await this.stateSnapshots.finishInvalidationUnsafe()}catch(g){if(!o){this.rollback(),await this.removeCredentialIfPresent(c).catch(()=>{}),this.begin();try{this.database.prepare("DELETE FROM braid_content_key_rotations WHERE conversation_id = ?").run(t.conversationId),this.commit("redaction.prepare.cleanup")}catch{this.rollback()}}for(let p of f)p.encoded.fill(0);throw d.fill(0),u.fill(0),Q(g)}for(let g of f)g.encoded.fill(0);try{if(!await this.verifyConversation(t.conversationId,t.eventId,c))throw new y("REDACTION_VERIFY_FAILED","Redaction rewrite verification failed");this.durableBoundaryHook?.("before:redaction.old-key.remove"),await this.removeCredentialIfPresent(s),this.durableBoundaryHook?.("after:redaction.old-key.remove"),this.begin();try{this.database.prepare("DELETE FROM braid_content_key_rotations WHERE conversation_id = ?").run(t.conversationId),this.commit("redaction.cleanup")}catch(p){throw this.rollback(),p}}catch(g){throw g instanceof y?g:new y("REDACTION_CLEANUP_FAILED","Redaction key cleanup did not complete",{cause:g})}finally{d.fill(0),u.fill(0)}return{conversationId:t.conversationId,redactedEventId:t.eventId,rewrittenEvents:f.length,newContentKeyRef:c}}));return await this.completeMutation(t.operation,"terminal",r),r}catch(r){throw await this.completeMutationFailure(t.operation,r,o),r}}async destroyConversation(t){yt(t.operation,{conversationId:t.conversationId,reasonDigest:R(t.reason)});let n=await this.reuseMutation(t.operation);if(n!==void 0)return n;let o=!1;try{let r=await this.writes.run(async()=>{if(this.assertOpen(),this.database.prepare("SELECT reason FROM braid_conversation_tombstones WHERE conversation_id = ?").get(t.conversationId))return{conversationId:t.conversationId,destroyed:!0,retainedCiphertext:!0};let a=this.database.prepare("SELECT credential_ref FROM braid_conversation_keys WHERE conversation_id = ?").get(t.conversationId);if(!a)throw new y("CONVERSATION_NOT_FOUND",`Conversation ${t.conversationId} was not found`);let s=ce(O(a.credential_ref,"credential_ref"));await this.stateSnapshots.destroyKeysBeforeMutation(),this.begin();try{this.database.prepare("UPDATE braid_journal_events SET redacted = 0 WHERE conversation_id = ?").run(t.conversationId),this.database.prepare("UPDATE braid_conversation_keys SET destroyed = 1 WHERE conversation_id = ?").run(t.conversationId),this.database.prepare(`INSERT INTO braid_conversation_tombstones(conversation_id, reason, deleted_at)
333
- VALUES (?, ?, ?)
334
- ON CONFLICT(conversation_id) DO UPDATE SET reason = excluded.reason, deleted_at = excluded.deleted_at`).run(t.conversationId,Fu(t.reason),Ae()),this.stateSnapshots.invalidateUnsafe(),this.writeProjection(this.buildProjection()),this.commit("destruction"),o=!0,await this.stateSnapshots.finishInvalidationUnsafe()}catch(d){throw this.rollback(),Q(d)}try{await this.credentials.remove(s)}catch(d){throw new y("CONTENT_KEY_DESTRUCTION_FAILED","Conversation content key destruction failed",{cause:d})}return{conversationId:t.conversationId,destroyed:!0,retainedCiphertext:!0}});return await this.completeMutation(t.operation,"terminal",r),r}catch(r){throw await this.completeMutationFailure(t.operation,r,o),r}}async compact(t){if(yt(t,{}),await this.reuseMutation(t)!==void 0)return;let o=!1;try{await this.writes.run(async()=>{this.assertOpen();try{this.database.pragma("wal_checkpoint(TRUNCATE)"),this.database.exec("VACUUM"),o=!0,await this.secureArtifacts()}catch(r){throw Q(r)}}),await this.completeMutation(t,"terminal",{completed:!0})}catch(r){throw await this.completeMutationFailure(t,r,o),r}}async reconcileNonTerminalRuns(){return this.assertOpen(),this.database.prepare("SELECT * FROM braid_run_cursors WHERE terminal = 0 ORDER BY run_id").all().map(n=>({runId:be(n.run_id),conversationId:G(n.conversation_id),lastSequence:n.last_sequence,lastCursor:n.last_cursor,missingHistory:Vo(n)}))}};var ly=class e extends Xd{constructor(t){super(t)}static async open(t){let n=sr.now(),o=n,r=ut(t.path,"SQLite path"),i=ut(t.workspaceRoot??BS(r),"Approved root"),a=t;for(let p of["databaseKey","key","encryptionKey","env","environmentVariable"])if(p in a)throw new y("HEADLESS_KEY_SOURCE_REQUIRED","Raw and environment key inputs are rejected");let s=t.busyTimeoutMs??5e3,d=t.maxEventsPerTransaction??256,c=t.maxPayloadBytesPerTransaction??4194304,u=t.maxQueuedTransactions??64;if(!Number.isInteger(s)||s<1||s>6e4)throw new y("STORAGE_OPTIONS","busyTimeoutMs must be between 1 and 60000");if(!Number.isInteger(d)||d<1)throw new y("STORAGE_OPTIONS","maxEvents must be positive");if(!Number.isInteger(c)||c<1024)throw new y("STORAGE_OPTIONS","maxPayloadBytes must be at least 1024");if(!Number.isInteger(u)||u<1)throw new y("STORAGE_OPTIONS","maxQueuedTransactions must be positive");await Uo(i),await gt(r,i,"SQLite path");let l=ut(t.backupDirectory??BS(r),"Backup directory");await gt(l,i,"Backup directory"),ar(t.startupObserver,"path-validation",o),o=sr.now();let f=await Pa(`${r}.exclusive.lock`);ar(t.startupObserver,"lock-acquire",o),o=sr.now();let g=!1;try{await wI(r,i),ar(t.startupObserver,"recovery-check",o),o=sr.now();let p=await ju(r);if(ar(t.startupObserver,"initialization-marker",o),p==="active")throw new y("STORAGE_INITIALIZING","Another process is initializing the encrypted database");ar(t.startupObserver,"path-lock",n),o=sr.now();let v=!1;try{v=await t.credentialStore.available()}catch(Ee){throw new y("CREDENTIAL_STORE_UNAVAILABLE","The operating-system credential facility is unavailable",{cause:Ee})}if(!v)throw new y("CREDENTIAL_STORE_UNAVAILABLE","The operating-system credential facility is unavailable");let w=t.databaseFactory??cI(),k=t.databaseKeyRef??kI("database",r),P=await ZO(t,k);ar(t.startupObserver,"credential",o),o=sr.now();let N,D=!1;try{N=Ea(r,w,s),D=N.newDatabase||p==="stale",D&&await hI(r),_a(N.database,P,{newDatabase:N.newDatabase}),Kn(N.database,s),ar(t.startupObserver,"cipher-open",o)}catch(Ee){try{N&&aI(N)}catch{}throw P.fill(0),D&&(N?.newDatabase&&await Uu(r),await $a(r)),Ee instanceof y?Ee:Q(Ee)}let W=new e({path:r,workspaceRoot:i,credentials:t.credentialStore,databaseKeyRef:k,databaseKey:P,databaseFactory:w,busyTimeoutMs:s,maxEvents:d,maxPayloadBytes:c,maxQueuedTransactions:u,backupDirectory:l,...t.migrationHooks===void 0?{}:{migrationHooks:t.migrationHooks},...t.durableBoundaryHook===void 0?{}:{durableBoundaryHook:t.durableBoundaryHook},...t.startupObserver===void 0?{}:{startupObserver:t.startupObserver},database:N.database,databaseFileDescriptor:N.fileDescriptor});P.fill(0);try{return await W.initialize(),D&&await $a(r),await f.release(),g=!0,W}catch(Ee){throw await W.close().catch(()=>{}),D&&(N?.newDatabase?(await Uu(r).catch(()=>{}),await $a(r).catch(()=>{})):await vI(r).catch(()=>{})),Ee}}finally{g||await f.release()}}};function ar(e,t,n){try{e?.({name:t,durationMs:sr.now()-n})}catch{}}async function ZO(e,t){if(e.databaseKeySource)return nI(e.databaseKeySource);let n;try{n=await e.credentialStore.resolve(t);let o=Buffer.from(n.read());if(o.length!==32)throw new y("SQLITE_KEY_INVALID","Stored SQLite key has invalid length");return o}catch(o){if(xr(o)!=="CREDENTIAL_NOT_FOUND")throw o;let r=HO(32);try{return await e.credentialStore.store({ref:t,value:r,label:"Braid database key"}),Buffer.from(r)}finally{r.fill(0),n?.dispose()}}finally{n?.dispose()}}function qS(e){return ly.open(e)}var Yd=class{now(){return new Date().toISOString()}};import{randomUUID as KO}from"node:crypto";var Qd=class{next(t){return`${t}-${KO()}`}};var ec="2026-08-09T00:00:00.000Z",WO=ta("connection-local-cli-bridge"),nF=Ao({name:"Release engineer",description:"Ships durable changes with concise, reproducible evidence",version:"1.0.0",tags:["coding","release"],harness:"pi",model:{default:"openai-codex/gpt-5.6-luna",provider:"openai-codex",reasoningEffort:"high"},prompt:{instructions:["Inspect the repository before changing it.","Run focused checks and report exact evidence."]},tools:{read:!0,write:!0,shell:!0},permissions:{read:"allow",write:"ask",shell:"ask"},resources:{skills:[{kind:"inline",name:"verify-before-ship",content:"Run the smallest relevant check before reporting a result."}]},metadata:{"braid.productDemo":!0}}),rF=Object.freeze({id:WO,kind:"cli-bridge",name:"Local CLI Bridge",endpoint:"http://127.0.0.1:3344/v1",credentialRef:Nh("credential-ref-local-subscription"),providerOptions:{transport:"local",capabilityHints:["streaming","usage","session-continuity"]},createdAt:ec,updatedAt:ec,lastHealth:{status:"healthy",checkedAt:ec},lastModelVerification:{model:"openai-codex/gpt-5.6-luna",status:"verified",checkedAt:ec}});import{randomUUID as ej}from"node:crypto";function FS(e){let{revision:t,sequence:n,appliedEvents:o,projectionChecksum:r,health:i,...a}=e;return R(a)}function tc(e,t){switch(t.kind){case"conversation.created":return{...e,conversationId:t.conversation.id,branchId:t.conversation.activeBranchId,conversations:x(e.conversations,t.conversation),...t.branch===void 0?{}:{branches:x(e.branches,t.branch)},...t.draft===void 0?{}:{drafts:x(e.drafts,t.draft)},...t.queue===void 0?{}:{queues:x(e.queues,t.queue)},graphNodes:Pe(e.graphNodes,t.graphNodes),graphEdges:Pe(e.graphEdges,t.graphEdges),...t.operation===void 0?{}:{operations:x(e.operations,t.operation)},draft:t.draft?.text??""};case"conversation.imported":return{...e,conversationId:t.conversation.id,branchId:t.conversation.activeBranchId,conversations:x(e.conversations,t.conversation),branches:Pe(e.branches,t.branches),drafts:Pe(e.drafts,t.drafts),queues:Pe(e.queues,t.queues),messages:Pe(e.messages,t.messages),messageParts:Pe(e.messageParts,t.messageParts),turns:Pe(e.turns,t.turns),runs:Pe(e.runs,t.runs),analyses:Pe(e.analyses,t.analyses),graphNodes:Pe(e.graphNodes,t.graphNodes),graphEdges:Pe(e.graphEdges,t.graphEdges),feedbackDecisions:Pe(e.feedbackDecisions,t.feedbackDecisions),operations:x(e.operations,t.operation),activeRunId:null,queuedInputs:[],draft:t.drafts.find(n=>n.branchId===t.conversation.activeBranchId)?.text??""};case"conversation.updated":return{...e,conversations:x(e.conversations,t.conversation),...t.operation===void 0?{}:{operations:x(e.operations,t.operation)}};case"conversation.selected":{let n=fe(e.conversations,t.conversationId,"Conversation"),o=t.conversation??n,r=t.branchId??o.activeBranchId;return fe(e.branches,r,"Branch"),{...e,conversationId:t.conversationId,branchId:r,conversations:x(e.conversations,o),draft:e.drafts.find(i=>i.branchId===r)?.text??"",...t.operation===void 0?{}:{operations:x(e.operations,t.operation)}}}case"conversation.deleted":return JO(e,t);case"branch.created":return{...e,branchId:t.branch.id,conversationId:t.branch.conversationId,branches:x(e.branches,t.branch),...t.conversation===void 0?{}:{conversations:x(e.conversations,t.conversation)},...t.draft===void 0?{}:{drafts:x(e.drafts,t.draft)},...t.queue===void 0?{}:{queues:x(e.queues,t.queue)},graphNodes:Pe(e.graphNodes,t.graphNodes),graphEdges:Pe(e.graphEdges,t.graphEdges),...t.operation===void 0?{}:{operations:x(e.operations,t.operation)},draft:t.draft?.text??""};case"branch.updated":return{...e,branches:x(e.branches,t.branch)};case"branch.selected":return fe(e.branches,t.branchId,"Branch"),{...e,conversationId:t.conversationId,branchId:t.branchId,draft:e.drafts.find(n=>n.branchId===t.branchId)?.text??"",...t.operation===void 0?{}:{operations:x(e.operations,t.operation)}}}}function JO(e,t){let n=t.conversation.id,o=new Set(e.branches.filter(p=>p.conversationId===n).map(p=>p.id)),r=new Set(e.turns.filter(p=>p.conversationId===n).map(p=>p.id)),i=new Set(e.runs.filter(p=>p.conversationId===n).map(p=>p.id)),a=new Set(e.messages.filter(p=>p.conversationId===n).map(p=>p.id)),s=new Set(e.analyses.filter(p=>p.source.conversationId===n).map(p=>p.id)),d=new Set(e.analysisAttachments.filter(p=>p.sourceConversationId===n||p.destinationConversationId===n).map(p=>p.id)),c=new Set(e.queues.filter(p=>o.has(p.branchId)).map(p=>p.id)),u=new Set(e.graphNodes.filter(p=>p.reference.kind==="conversation"?p.reference.id===n:p.reference.kind==="branch"?o.has(p.reference.id):p.reference.kind==="turn"?r.has(p.reference.id):p.reference.kind==="run"?i.has(p.reference.id):p.reference.kind==="message"?a.has(p.reference.id):p.reference.kind==="analysis"?s.has(p.reference.id):!1).map(p=>p.id)),l=new Set(e.operations.filter(p=>p.target?.kind==="conversation"?p.target.id===n:p.target?.kind==="branch"?o.has(p.target.id):p.target?.kind==="run"?i.has(p.target.id):p.target?.kind==="analysis"?s.has(p.target.id):!1).map(p=>p.id)),f=Pe(e.graphNodes.filter(p=>!u.has(p.id)),t.graphNodes),g=new Set(f.map(p=>p.id));return{...e,conversationId:t.selectedConversation.id,branchId:t.selectedConversation.activeBranchId,conversations:x(x(e.conversations.filter(p=>p.id!==t.selectedConversation.id),t.conversation),t.selectedConversation),branches:py(e.branches.filter(p=>!o.has(p.id)),t.replacementBranch),turns:e.turns.filter(p=>!r.has(p.id)),messages:e.messages.filter(p=>!a.has(p.id)),messageParts:e.messageParts.filter(p=>!a.has(p.messageId)),runs:e.runs.filter(p=>!i.has(p.id)),interactions:e.interactions.filter(p=>!i.has(p.runId)),analyses:e.analyses.filter(p=>!s.has(p.id)),analysisAttachments:e.analysisAttachments.filter(p=>!d.has(p.id)),drafts:py(e.drafts.filter(p=>!o.has(p.branchId)),t.replacementDraft),queues:py(e.queues.filter(p=>!o.has(p.branchId)),t.replacementQueue),queueEntries:e.queueEntries.filter(p=>!c.has(p.queueId)),bindings:e.bindings.filter(p=>(p.runId===void 0||!i.has(p.runId))&&(p.branchId===void 0||!o.has(p.branchId))),graphNodes:f,graphEdges:Pe(e.graphEdges.filter(p=>!u.has(p.source)&&!u.has(p.destination)&&g.has(p.source)&&g.has(p.destination)),t.graphEdges),operations:x(e.operations.filter(p=>!l.has(p.id)),t.operation),effects:e.effects.filter(p=>!l.has(p.operationId)),feedbackDecisions:e.feedbackDecisions.filter(p=>p.conversationId!==n),replayCursors:e.replayCursors.filter(p=>!i.has(p.runId)),missingHistory:e.missingHistory.filter(p=>!i.has(p.runId)),queuedInputs:e.queuedInputs.filter(p=>!i.has(p.runId)),activeRunId:e.activeRunId!==null&&i.has(e.activeRunId)?null:e.activeRunId,draft:t.replacementDraft?.text??e.drafts.find(p=>p.branchId===t.selectedConversation.activeBranchId)?.text??""}}function Pe(e,t){return t?.reduce((n,o)=>x(n,o),e)??e}function py(e,t){return t===void 0?e:x(e,t)}var Oi=["completed","failed","aborted","cancelled","blocked","expired","unknown"];function Nt(e){if(e)return{eventId:e.eventId,sequence:e.providerSequence,...e.cursor===void 0?{}:{cursor:e.cursor},...e.occurredAt===void 0?{}:{occurredAt:e.occurredAt}}}function Ne(e,t,n,o,r){let i="runId"in e?e.runId:"run-unknown";return{id:`${i}:${t}:${r?.eventId??"local"}:${n}`,runId:i,type:t,label:n,...o===void 0?{}:{detail:o},...r===void 0?{}:{source:r}}}function nc(e){switch(e){case"completed":return"complete";case"failed":return"failed";case"aborted":return"aborted";case"cancelled":return"cancelled";case"blocked":return"blocked";case"expired":return"expired";case"unknown":return"unknown";default:return e}}function mo(e){switch(e){case"completed":return"complete";case"failed":return"failed";case"aborted":case"cancelled":return"cancelled";case"blocked":case"expired":case"unknown":return"unknown";default:return e}}function Je(e,t){let n=e.runs.find(o=>o.id===t);if(!n)throw new Error(`Run ${t} is unknown`);return n}function le(e,t,n){return e.runs.map(o=>o.id===t?n(o):o)}function bt(e,t,n){return e.messages.map(o=>o.runId===t&&o.role==="assistant"?n(o):o)}function Jt(e,t,n){let o=e.parts.find(c=>c.id===t.id),r=o&&n!==void 0?{...t,text:t.text===`${o.text??""}${n}`?t.text:`${o.text??""}${n}`}:t,i=o?e.parts.map(c=>c.id===t.id?r:c):[...e.parts,r],a=i.length>512,s=a?i.slice(-512):i,d=r.kind==="text"?n===void 0?r.text??e.text:`${e.text}${n}`:e.text;return{...e,text:d,parts:s,...a?{partsTruncated:!0}:{}}}function De(e,t){if(!t||t.providerSequence<=e.lastProviderSequence)return e;let n=t.providerSequence>e.lastProviderSequence+1?{from:e.lastProviderSequence+1,to:t.providerSequence-1}:void 0;return{...e,lastProviderSequence:t.providerSequence,eventCount:e.eventCount+1,...t.cursor===void 0?{}:{lastCursor:t.cursor},...n===void 0?{}:{missingSequence:n}}}function Le(e,t){let n=[...e.activity,t];return{...e,activity:n.slice(-512),...n.length>512?{activityTruncated:!0}:{}}}function fy(e,t){if(Oi.includes(e)&&e!==t)throw new Error(`Run cannot transition from terminal ${e} to ${t}`)}function rc(e,t,n){let o=e.operationId===void 0?void 0:t.operations.find(r=>r.id===e.operationId);return e.correction==="cancellation-confirmed"&&o?.kind==="cancel-run"&&o.target?.kind==="run"&&o.target.id===e.runId&&e.from===n&&e.to!==void 0&&e.to===e.status&&(n==="failed"||n==="unknown")&&(e.to==="cancelled"||e.to==="aborted")}function oc(e,t,n){let o=e.runs.find(D=>D.id===t.runId);if(o===void 0)return e;let r={...De(o,t.provider),...t.controlRef===void 0?{}:{controlRef:structuredClone(t.controlRef)}},i=e.conversations.find(D=>D.id===o.conversationId)?.workspaceId??e.workspaceId,a=e.connections.find(D=>D.id===r.receipt.requested.connectionId)?.id,s=GO(r.receipt.materializationReceipt),d=r.connectionId??a??s??e.selectedConnectionId;if(i==null||d==null)return{...e,runs:x(e.runs,{...r,activity:[...r.activity,{id:`${o.id}:environment-unlinked`,runId:o.id,type:"environment-observation-unlinked",label:"Execution location could not be linked",detail:"The run has no workspace or connection identity",source:{eventId:t.provider.eventId,sequence:t.provider.providerSequence,...t.provider.occurredAt===void 0?{}:{occurredAt:t.provider.occurredAt}}}],updatedAt:n})};let c=t.observation,u=c.providerEnvironmentId??r.providerSessionId??String(r.id),l=Vh(`environment-${R({provider:c.provider,providerIdentity:u,connectionId:d}).slice(0,32)}`),f=e.environments.find(D=>D.id===l),g={id:l,workspaceId:i,connectionId:d,lifecycle:c.lifecycle,placement:{provider:c.provider,...c.region===void 0?{}:{region:c.region},...c.account?.billingOwnerId===void 0?{}:{account:c.account.billingOwnerId},confidentialRequested:!1,confidentialVerified:!1},kind:c.kind,...c.providerEnvironmentId===void 0?{}:{providerEnvironmentId:c.providerEnvironmentId},lifecycleMode:c.lifecycleMode,cleanup:c.cleanup,continuity:c.continuity,location:c.location,...c.runtimeEndpointHost===void 0?{}:{runtimeEndpointHost:c.runtimeEndpointHost},...c.machineId===void 0?{}:{machineId:c.machineId},...c.requestedRegion===void 0?{}:{requestedRegion:c.requestedRegion},...c.storagePersistence===void 0?{}:{storagePersistence:c.storagePersistence},...c.requestedResources===void 0?{}:{requestedResources:c.requestedResources},...c.resourceSample===void 0?{}:{resourceSample:c.resourceSample},...c.gpu===void 0?{}:{gpu:c.gpu},...c.account===void 0?{}:{accountUsage:c.account},unavailableTelemetry:c.unavailable,secretNames:f?.secretNames??[],createdAt:f?.createdAt??c.createdAt,...c.startedAt===void 0?{}:{startedAt:c.startedAt},...c.lastActivityAt===void 0?{}:{lastActivityAt:c.lastActivityAt},...c.expiresAt===void 0?{}:{expiresAt:c.expiresAt},updatedAt:c.observedAt},p={kind:"environment",id:l},v={kind:"run",id:r.id},w=e.graphNodes.find(D=>D.reference.kind==="environment"&&D.reference.id===l),k={...q(p,w?.createdAt??g.createdAt,`${c.provider} execution`),status:c.lifecycle,updatedAt:c.observedAt},P=e.graphNodes.find(D=>D.reference.kind==="run"&&D.reference.id===r.id)??q(v,r.startedAt,"Run"),N=re({kind:"attached",source:v,destination:p,at:g.createdAt});return{...e,runs:x(e.runs,{...r,environmentId:l,updatedAt:n}),environments:x(e.environments,g),graphNodes:x(x(e.graphNodes,P),k),graphEdges:x(e.graphEdges,N)}}function GO(e){let t=e?.connectionId;if(!(typeof t!="string"||t.trim().length===0))try{return ta(t)}catch{return}}function my(e,t,n){switch(t.kind){case"workspace.recorded":return{...e,workspace:t.workspace.root,workspaceId:t.workspace.id,workspaces:x(e.workspaces,t.workspace)};case"profile.registered":return{...e,profiles:x(e.profiles,t.profile)};case"profile.selected":{let o=fe(e.profiles,t.profileId,"Profile");return{...e,selectedProfileId:t.profileId,profile:o.profile}}case"profile.snapshot.created":return{...e,profileSnapshots:x(e.profileSnapshots,t.snapshot)};case"credential.reference.created":return{...e,credentials:x(e.credentials,t.credential)};case"connection.upserted":return{...e,connections:x(e.connections,t.connection)};case"connection.selected":return fe(e.connections,t.connectionId,"Connection"),{...e,selectedConnectionId:t.connectionId};case"connection.removed":{let o=fe(e.connections,t.connectionId,"Connection");if(t.operation.status!=="acknowledged"||t.operation.target?.kind!=="connection"||t.operation.target.id!==o.id)throw new ye(`Connection removal operation ${t.operation.id} does not acknowledge ${o.id}`);let r=yv(e,o.id);if(r.length>0)throw new ye(`Connection ${o.id} cannot be removed while ${r.map(i=>`${i.kind} ${i.id}`).join(", ")} remains`);return{...e,connections:e.connections.filter(i=>i.id!==o.id),operations:x(e.operations,t.operation)}}case"conversation.created":case"conversation.imported":case"conversation.updated":case"conversation.selected":case"conversation.deleted":case"branch.created":case"branch.updated":case"branch.selected":return tc(e,t);case"turn.created":return{...e,turns:x(e.turns,t.turn)};case"turn.updated":return{...e,turns:x(e.turns,t.turn)};case"message.created":return{...e,messages:x(e.messages,t.message)};case"message.part.updated":{let o=fe(e.messages,t.part.messageId,"Message"),r=o.partIds.includes(t.part.id)?o.partIds:[...o.partIds,t.part.id],i=t.part.kind==="text"?t.part.text:o.text;return{...e,messages:x(e.messages,{...o,partIds:r,text:i,updatedAt:n}),messageParts:x(e.messageParts,t.part)}}case"run.bound":{let o=fe(e.runs,t.runId,"Run");return{...e,runs:x(e.runs,{...o,bindingId:t.bindingId,updatedAt:n})}}case"run.status.changed":{let o=fe(e.runs,t.runId,"Run");return po(e,{...o,status:t.status,...t.error===void 0?{}:{error:t.error}},n)}case"run.reconciled":{let o=fe(e.runs,t.runId,"Run"),r=rc(t,e,o.status);if(t.correction!==void 0&&!r)throw new ye(`Run ${o.id} has invalid cancellation reconciliation evidence`);if(o.status!=="unknown"&&!r)throw new ye(`Run ${o.id} is not awaiting reconciliation`);return po(e,{...o,status:t.to??t.status},n)}case"run.environment.observed":return oc(e,t,n);case"history.missing":{let o=fe(e.runs,t.range.runId,"Run"),r=e.messages.map(i=>i.runId===o.id?{...i,complete:!1,status:"incomplete",missingHistory:t.range}:i);return{...e,runs:x(e.runs,{...o,complete:!1,updatedAt:n}),messages:r,missingHistory:[...e.missingHistory,t.range]}}case"interaction.requested":return{...e,interactions:x(e.interactions,t.interaction)};case"interaction.response.requested":{let o=fe(e.interactions,t.response.interactionId,"Interaction");if(o.status!=="pending"&&o.status!=="responding")throw new ye(`Interaction ${o.id} is not pending`);return{...e,interactions:x(e.interactions,{...o,status:"responding",updatedAt:n})}}case"interaction.resolved":{let o=fe(e.interactions,t.interactionId,"Interaction");if(t.resolution===void 0)throw new ye(`Interaction ${o.id} has no resolution`);let r=t.resolution.outcome==="accepted"?"resolved":t.resolution.outcome;return{...e,interactions:x(e.interactions,{...o,resolution:t.resolution,status:r,updatedAt:n})}}case"interaction.cancelled":{let o=fe(e.interactions,t.interactionId,"Interaction");return{...e,interactions:x(e.interactions,{...o,status:"cancelled",updatedAt:n})}}case"interaction.expired":{let o=fe(e.interactions,t.interactionId,"Interaction");return{...e,interactions:x(e.interactions,{...o,status:"expired",updatedAt:n})}}case"analysis.created":case"analysis.updated":case"analysis.completed":return{...e,analyses:x(e.analyses,t.analysis)};case"analysis.attachment.created":return{...e,analysisAttachments:x(e.analysisAttachments,t.attachment)};case"environment.upserted":return{...e,environments:x(e.environments,t.environment)};case"checkpoint.upserted":return{...e,checkpoints:x(e.checkpoints,t.checkpoint)};case"supervisor.upserted":return{...e,supervisors:x(e.supervisors,t.supervisor)};case"worker.upserted":return{...e,workers:x(e.workers,t.worker)};case"draft.recorded":return{...e,drafts:x(e.drafts,t.draft),draft:t.draft.branchId===e.branchId?t.draft.text:e.draft,...t.operation===void 0?{}:{operations:x(e.operations,t.operation)}};case"queue.upserted":return{...e,queues:x(e.queues,t.queue)};case"queue.entry.upserted":{let o=fe(e.queues,t.entry.queueId,"Queue"),r=o.entryIds.includes(t.entry.id)?o.entryIds:[...o.entryIds,t.entry.id];return{...e,queues:x(e.queues,{...o,entryIds:r,updatedAt:n}),queueEntries:x(e.queueEntries,t.entry)}}case"rule.upserted":return{...e,rules:x(e.rules,t.rule),...t.operation===void 0?{}:{operations:x(e.operations,t.operation)}};case"rule.deleted":return{...e,rules:e.rules.filter(o=>o.id!==t.ruleId),operations:x(e.operations,t.operation)};case"interaction.automation.audited":return e;case"binding.upserted":return{...e,bindings:x(e.bindings,t.binding)};case"graph.node.upserted":return{...e,graphNodes:x(e.graphNodes,t.node)};case"graph.edge.upserted":return{...e,graphEdges:x(e.graphEdges,t.edge)};case"operation.requested":case"operation.updated":return{...e,operations:x(e.operations,t.operation)};case"effect.upserted":return{...e,effects:x(e.effects,t.effect)};case"feedback.decision.recorded":return{...e,feedbackDecisions:x(e.feedbackDecisions,t.decision)};case"content.unavailable":return e;case"replay.cursor.advanced":{let o=fe(e.runs,t.runId,"Run"),r={runId:t.runId,cursor:t.cursor,committedSequence:e.sequence+1};return{...e,replayCursors:jd(e.replayCursors,i=>i.runId,r),runs:x(e.runs,{...o,replayCursor:t.cursor,updatedAt:n})}}case"unknown.event":return{...e,unknownEvents:x(e.unknownEvents,t.unknown)};default:return t}}function XO(e){let{inputTokens:t,outputTokens:n,tokensKnown:o,reasoningTokens:r,costUsd:i,usdKnown:a,estimatedCostUsd:s,promptCache:d,model:c,...u}=e;return u}function YO(e,t){if(e===void 0)return t;if(t===void 0)return e;let n={...e};for(let[o,r]of Object.entries(t))n[o]=(n[o]??0)+r;return Object.freeze(n)}function gy(e,t){return e===void 0?t:t===void 0?e:Math.max(e,t)}function QO(e,t){if(e===void 0)return t;if(t===void 0)return e;let n={...e};for(let[o,r]of Object.entries(t))n[o]=Math.max(n[o]??0,r);return Object.freeze(n)}function VS(e,t){let{tokensKnown:n,usdKnown:o,...r}=e,i=e.llmCalls??0,a=t.calls??1,s=i===0,d=t.tokensKnown!==!1&&(s||e.tokensKnown!==!1),c=t.usdKnown!==!1&&(s||e.usdKnown!==!1),u=(e.costUsd??0)+(t.costUsd??0),l=(e.estimatedCostUsd??0)+(t.estimatedCostUsd??0),f=YO(e.promptCache,t.promptCache);return{...r,inputTokens:e.inputTokens+t.input,outputTokens:e.outputTokens+t.output,...d?{}:{tokensKnown:!1},...t.reasoning===void 0?{}:{reasoningTokens:(e.reasoningTokens??0)+t.reasoning},...e.costUsd===void 0&&t.costUsd===void 0?{}:{costUsd:u},...c?{}:{usdKnown:!1},...e.estimatedCostUsd===void 0&&t.estimatedCostUsd===void 0?{}:{estimatedCostUsd:l},...f===void 0?{}:{promptCache:f},llmCalls:i+a,...t.latencyMs===void 0?{}:{llmLatencyMs:(e.llmLatencyMs??0)+t.latencyMs},...t.model===void 0?{}:{model:t.model}}}function ic(e,t){let n=XO(e),o=t.tokensKnown!==!1,r=t.usdKnown!==!1,i=o?t.input:Math.max(e.inputTokens,t.input),a=o?t.output:Math.max(e.outputTokens,t.output),s=o?t.reasoning:gy(e.reasoningTokens,t.reasoning),d=r?t.costUsd:gy(e.costUsd,t.costUsd),c=gy(e.estimatedCostUsd,t.estimatedCostUsd),u=o?t.promptCache??e.promptCache:QO(e.promptCache,t.promptCache);return{...n,inputTokens:i,outputTokens:a,...o?{}:{tokensKnown:!1},...s===void 0?{}:{reasoningTokens:s},...d===void 0?{}:{costUsd:d},...r?{}:{usdKnown:!1},...c===void 0?{}:{estimatedCostUsd:c},...u===void 0?{}:{promptCache:u},...t.calls===void 0?{}:{llmCalls:t.calls},...t.model===void 0?e.model===void 0?{}:{model:e.model}:{model:t.model}}}function Pi(e){return{input:e.inputTokens,output:e.outputTokens,...e.llmCalls===void 0?{}:{calls:e.llmCalls},...e.tokensKnown===!1?{tokensKnown:!1}:{},...e.reasoningTokens===void 0?{}:{reasoning:e.reasoningTokens},...e.costUsd===void 0?{}:{costUsd:e.costUsd},...e.usdKnown===!1?{usdKnown:!1}:{},...e.estimatedCostUsd===void 0?{}:{estimatedCostUsd:e.estimatedCostUsd},...e.promptCache===void 0?{}:{promptCache:e.promptCache},...e.llmLatencyMs===void 0?{}:{latencyMs:e.llmLatencyMs},...e.model===void 0?{}:{model:e.model}}}var ac=Object.freeze({input:0,output:0,tokensKnown:!1,usdKnown:!1});function sc(e,t){let n=fe(e.branches,t.run.branchId,"Branch"),o=fe(e.conversations,t.run.conversationId,"Conversation"),r={kind:"branch",id:n.id},i={kind:"turn",id:t.turn.id},a={kind:"message",id:t.userMessage.id},s={kind:"run",id:t.run.id},d={kind:"message",id:t.assistantMessage.id},c=[q(i,t.at,"Turn"),q(a,t.at,"User message"),q(s,t.at,"Run"),q(d,t.at,"Assistant message")],u={operationId:t.run.operationId},l=[re({kind:"continued",source:r,destination:i,at:t.at,provenance:u}),re({kind:"attached",source:i,destination:a,at:t.at,provenance:u}),re({kind:"attached",source:i,destination:s,at:t.at,provenance:u}),re({kind:"attached",source:s,destination:d,at:t.at,provenance:u})];return{...e,branches:x(e.branches,{...n,tipMessageId:t.assistantMessage.id,updatedAt:t.at}),conversations:x(e.conversations,{...o,activeBranchId:n.id,updatedAt:t.at}),graphNodes:c.reduce(x,e.graphNodes),graphEdges:l.reduce(x,e.graphEdges)}}function HS(e,t,n,o,r){return e.operations.find(a=>a.id===t)??{id:t,kind:r.kind,requestDigest:R(n),status:"pending",...r.target===void 0?{}:{target:r.target},createdAt:o,updatedAt:o}}function yy(e,t,n){let o=wS(n);switch(t.kind){case"workspace.opened":return RS(e,t.workspace,o);case"draft.changed":return{...e,draft:t.text,drafts:e.drafts.map(r=>r.branchId===e.branchId?{...r,text:t.text,updatedAt:o}:r)};case"run.requested":{let r=be(t.runId),i=na(t.turnId),a=we(t.operationId),s=nn(t.userMessageId),d=nn(t.assistantMessageId);if(e.activeRunId!==null)throw new ye(`Run ${e.activeRunId} is already active`);let c=lo(e,s,"user",t.text,r,i,"complete",o),u=lo(e,d,"assistant","",r,i,"streaming",o),l={id:i,conversationId:e.conversationId,branchId:e.branchId,userMessageId:s,runIds:[r],status:"running",createdAt:o,updatedAt:o},f={id:r,conversationId:e.conversationId,branchId:e.branchId,turnId:i,operationId:a,status:"streaming",inputTokens:0,outputTokens:0,tokensKnown:!1,usdKnown:!1,llmCalls:0,complete:!1,startedAt:o,updatedAt:o,...SS(e,t,o)},g=kS(e,a,r,t,o),p=[xn(c,o),xn(u,o)];return sc({...e,draft:"",drafts:e.drafts.map(v=>v.branchId===e.branchId?{...v,text:"",updatedAt:o}:v),activeRunId:r,lastError:null,messages:x(x(e.messages,c),u),messageParts:p.reduce(x,e.messageParts),turns:x(e.turns,l),runs:x(e.runs,f),operations:x(e.operations,g)},{run:f,turn:l,userMessage:c,assistantMessage:u,at:o})}case"run.text.delta":{let r=be(t.runId);if(e.activeRunId!==r)throw new ye(`Text arrived for inactive run ${r}`);return _S(e,r,t.text,o)}case"run.cancel.requested":{let r=be(t.runId),i=fe(e.runs,r,"Run"),a=Ud(i.status)?e:po(e,{...i,status:"cancelling"},o);return{...a,operations:x(a.operations,HS(a,we(t.operationId),t,o,{kind:"cancel-run",target:{kind:"run",id:r}}))}}case"application.shutdown.requested":return{...e,operations:x(e.operations,HS(e,we(t.operationId),t,o,{kind:"custom"}))};case"run.finished":{let r=be(t.runId),i=fe(e.runs,r,"Run"),a=t.status,s=a==="completed"?"complete":a==="unknown"?"incomplete":a,d=po(e,{...ic(i,t.usage),status:a,...t.error===void 0?{}:{error:t.error},complete:!0},o);d=xS(d,r,t.finalText,s,mo(t.status),o);let c=d.turns.find(l=>l.id===i.turnId);c&&(d={...d,turns:x(d.turns,{...c,status:a==="completed"?"completed":a==="aborted"||a==="cancelled"?"cancelled":a==="failed"?"failed":"unknown",selectedRunId:r,updatedAt:o})});let u=d.operations.find(l=>l.id===i.operationId);return u&&(d={...d,operations:x(d.operations,{...u,status:a==="completed"?"terminal":a==="unknown"?"unknown":"failed",terminalOutcome:a==="aborted"||a==="cancelled"?"cancelled":a==="blocked"?"failed":a,updatedAt:o})}),{...d,lastError:t.error??null}}default:return t}}var eP=512*1024,tP="\u2026 [truncated]";function Ge(e,t){let n=Math.max(0,eP-(e.contentBytes??0)),o=nP(t,n),r=Buffer.byteLength(o,"utf8");return{value:o,run:{...e,contentBytes:(e.contentBytes??0)+r,...o.length!==t.length?{contentTruncated:!0}:{}}}}function go(e,t){let n=J(t),o=Ge(e,n);return o.value===n?{run:o.run,value:t}:{run:o.run,value:tP}}function nP(e,t){if(t<=0)return"";if(Buffer.byteLength(e,"utf8")<=t)return e;let n="",o=0;for(let r of e){let i=Buffer.byteLength(r,"utf8");if(o+i>t)break;n+=r,o+=i}return n}function ZS(e,t,n){switch(t.kind){case"run.text.delta":{let o=Je(e,t.runId),r=Nt(t.provider),i=Ge(o,t.text),a={...e,...n,messages:bt(e,t.runId,s=>Jt(s,{id:`${t.runId}:text`,kind:"text",text:i.value,...r===void 0?{}:{source:r}},i.value)),runs:le(e,t.runId,s=>De({...i.run,status:s.status==="starting"?"streaming":s.status},t.provider))};return o.status==="cancelling",a}case"run.part.updated":return Je(e,t.runId),{...rP(e,t),...n};case"run.reasoning.delta":{let o=Je(e,t.runId),r=Nt(t.provider),i=Ge(o,t.text);return{...e,...n,messages:bt(e,t.runId,a=>Jt(a,{id:t.partId,kind:"reasoning",text:i.value,status:"running",...r===void 0?{}:{source:r}},i.value)),runs:le(e,t.runId,()=>De(i.run,t.provider))}}case"run.tool.call":{let o=Je(e,t.runId),r=Nt(t.provider),i=t.input===void 0?{run:o,value:void 0}:go(o,t.input);return{...e,...n,messages:bt(e,t.runId,a=>Jt(a,{id:t.partId,kind:"tool-call",status:"running",toolName:t.toolName,...t.callId===void 0?{}:{callId:t.callId},...t.input===void 0?{}:{input:i.value},...r===void 0?{}:{source:r}})),runs:le(e,t.runId,()=>Le(De(i.run,t.provider),Ne(t,"tool",t.toolName,"started",r)))}}case"run.tool.result":{let o=Je(e,t.runId),r=Nt(t.provider),i=t.result===void 0?{run:o,value:void 0}:go(o,t.result),a=t.error===void 0?void 0:Ge(i.run,t.error);return{...e,...n,messages:bt(e,t.runId,s=>Jt(s,{...s.parts.find(d=>d.id===t.partId),id:t.partId,kind:"tool-result",status:a===void 0?"complete":"failed",toolName:t.toolName,...t.callId===void 0?{}:{callId:t.callId},...t.result===void 0?{}:{result:i.value},...a===void 0?{}:{error:a.value},...r===void 0?{}:{source:r}})),runs:le(e,t.runId,()=>Le(De(a?.run??i.run,t.provider),Ne(t,"tool",t.toolName,a?.value??"completed",r)))}}case"run.artifact":case"run.proposal":case"run.warning":case"run.error":{let o=Nt(t.provider),r=Je(e,t.runId),i,a,s,d;if(t.kind==="run.artifact"){if(t.name!==void 0){let l=Ge(r,t.name);r=l.run,i=l.value}if(t.uri!==void 0){let l=Ge(r,t.uri);r=l.run,s=l.value}if(t.metadata!==void 0){let l=go(r,t.metadata);r=l.run,d=l.value}}else if(t.kind==="run.proposal"){let l=Ge(r,t.title);r=l.run,i=l.value}else{let l=Ge(r,t.message);r=l.run,a=l.value}let c=t.kind==="run.artifact"?{id:t.artifactId,kind:"artifact",artifactId:t.artifactId,...i===void 0?{}:{title:i},...t.mimeType===void 0?{}:{mimeType:t.mimeType},...s===void 0?{}:{uri:s},...d===void 0?{}:{metadata:d},...o===void 0?{}:{source:o}}:t.kind==="run.proposal"?{id:t.proposalId,kind:"proposal",title:i??"",...t.status===void 0?{}:{status:t.status},...o===void 0?{}:{source:o}}:t.kind==="run.warning"?{id:`${t.runId}:warning:${t.provider.eventId}`,kind:"warning",text:a??"",status:t.code,...o===void 0?{}:{source:o}}:{id:`${t.runId}:error:${t.provider.eventId}`,kind:"error",text:a??"",status:t.recoverable?"recoverable":"terminal",...o===void 0?{}:{source:o}},u=t.kind==="run.artifact"?"artifact":t.kind==="run.proposal"?"proposal":t.kind==="run.warning"?t.code:"error";return{...e,...n,messages:bt(e,t.runId,l=>Jt(l,c)),lastError:t.kind==="run.error"?a??"":e.lastError,runs:le(e,t.runId,()=>Le(De(r,t.provider),Ne(t,t.kind,u,t.kind==="run.error"?a:void 0,o)))}}case"run.usage":return{...e,...n,runs:le(e,t.runId,o=>{let r=De(o,t.provider);return VS(r,t.usage)})};case"run.cost":return{...e,...n,runs:le(e,t.runId,o=>{let{usdKnown:r,...i}=De(o,t.provider);return{...i,costUsd:t.costUsd}})};default:return t}}function rP(e,t){let n=Nt(t.provider),o=Je(e,t.runId),r=t.part,i=t.delta;if(i!==void 0){let a=Ge(o,i);o=a.run,i=a.value}else if(r.text!==void 0){let a=Ge(o,r.text);o=a.run,r={...r,text:a.value}}if(r.input!==void 0){let a=go(o,r.input);o=a.run,r={...r,input:a.value}}if(r.result!==void 0){let a=go(o,r.result);o=a.run,r={...r,result:a.value}}return r=n===void 0?r:{...r,source:n},{...e,messages:bt(e,t.runId,a=>Jt(a,r,i)),runs:le(e,t.runId,a=>De({...a,...o.contentBytes===void 0?{}:{contentBytes:o.contentBytes},...o.contentTruncated===void 0?{}:{contentTruncated:o.contentTruncated}},t.provider))}}function hy(e,t,n){switch(t.kind){case"run.interaction":{let o=Nt(t.provider)??{},r={request:t.request,responseBinding:t.responseBinding,runId:t.runId,source:o,status:"pending"},i=[...e.runs.find(a=>a.id===t.runId)?.interactions??[],r];return{...e,...n,runs:le(e,t.runId,a=>Le({...De(a,t.provider),status:"waiting",interactions:i.slice(-256),...i.length>256?{interactionsTruncated:!0}:{}},Ne(t,"interaction",t.request.kind,t.request.title,o)))}}case"run.interaction.cancelled":return{...e,...n,runs:le(e,t.runId,o=>({...De(o,t.provider),interactions:o.interactions.map(r=>r.request.id===t.interactionId?JS(r,"cancelled"):r)}))};case"run.interaction.response.requested":return{...e,...n,runs:le(e,t.runId,o=>({...o,interactions:o.interactions.map(r=>r.request.id===t.interactionId?{...r,status:"responding",responseOperation:{operationId:Xe(t.operationId),outcome:t.outcome,...t.dataDigest===void 0?{}:{dataDigest:t.dataDigest},containsSecret:t.containsSecret,...t.automationRule===void 0?{}:{automationRule:t.automationRule}}}:r)}))};case"run.interaction.responded":return{...e,...n,lastError:t.outcome==="unknown"?t.detail??"Interaction response is unknown":e.lastError,runs:le(e,t.runId,o=>({...o,interactions:o.interactions.map(r=>r.request.id===t.interactionId?JS(r,t.outcome==="accepted"?"resolved":t.outcome==="unknown"?"unknown":t.outcome):r)}))};case"run.status.changed":{let o=Je(e,t.runId);return fy(o.status,t.status),{...e,...n,activeRunId:t.status==="detached"||Oi.includes(t.status)?e.activeRunId===t.runId?null:e.activeRunId:t.runId,runs:le(e,t.runId,r=>Le({...De({...r,status:t.status},t.provider)},Ne(t,"status",t.status,t.detail)))}}case"run.provider.event":return{...e,...n,runs:le(e,t.runId,o=>({...De(o,t.provider),...t.envelope.event.type==="session.updated"?{providerSessionId:t.envelope.event.sessionId}:{},eventDetails:[...o.eventDetails,{eventId:t.envelope.eventId,sequence:t.envelope.sequence,type:t.envelope.event.type,...t.envelope.cursor===void 0?{}:{cursor:t.envelope.cursor},...t.envelope.occurredAt===void 0?{}:{occurredAt:t.envelope.occurredAt}}].slice(-512),...o.eventDetails.length+1>512?{eventDetailsTruncated:!0}:{}}))};case"run.finished":return oP(e,t,n);default:return t}}function JS(e,t){let{responseOperation:n,...o}=e;return{...o,status:t}}function oP(e,t,n){let o=Je(e,t.runId),r=Ge(o,t.finalText),i=t.error===void 0?void 0:Ge(r.run,t.error),a=t.reason===void 0?void 0:Ge(i?.run??r.run,t.reason),s=a?.run??i?.run??r.run;fy(o.status,t.status==="unknown"?"unknown":t.status);let d=e.missingHistory.some(u=>u.runId===t.runId),c=d?"incomplete":nc(t.status);return{...e,...n,activeRunId:e.activeRunId===t.runId?null:e.activeRunId,lastError:i?.value??(t.status==="failed"?e.lastError:null),messages:bt(e,t.runId,u=>{let l=Nt(t.provider),f=u.parts.find(p=>p.kind==="text"),g=t.finalText?Jt(u,{id:f?.id??`${t.runId}:text`,kind:"text",text:r.value,...l===void 0?{}:{source:l}}):u;return{...g,text:r.value||g.text,status:c,complete:t.status!=="unknown"&&!d,parts:g.parts.map(p=>p.status==="running"?{...p,status:mo(t.status)}:p)}}),runs:le(e,t.runId,u=>{let l=De({...u,...s.contentBytes===void 0?{}:{contentBytes:s.contentBytes},...s.contentTruncated===void 0?{}:{contentTruncated:s.contentTruncated}},t.provider);return{...ic(l,t.usage),status:t.status,...i===void 0?{}:{error:i.value},...a===void 0?{}:{terminalReason:a.value},complete:t.status!=="unknown"&&!d}})}}function vy(e,t,n,o){switch(t.kind){case"run.requested":return iP(e,t,n,o);case"run.control.requested":return Je(e,t.runId),{...e,...n,runs:le(e,t.runId,r=>Le({...r,status:t.control==="cancel"&&!Oi.includes(r.status)?"cancelling":r.status},Ne(t,"control",t.control,t.text??t.reason)))};case"run.control.acknowledged":return Je(e,t.runId),{...e,...n,runs:le(e,t.runId,r=>Le(r,Ne(t,"control.ack",t.control,t.outcome)))};case"run.queue.added":return{...e,...n,queuedInputs:[...e.queuedInputs,{operationId:t.operationId,runId:t.runId,text:t.text,position:t.position}],runs:le(e,t.runId,r=>Le(r,Ne(t,"queue",`position ${t.position}`)))};case"run.queue.removed":return{...e,...n,queuedInputs:e.queuedInputs.filter(r=>r.operationId!==t.operationId).map((r,i)=>({...r,position:i+1}))};case"run.detached":return{...e,...n,activeRunId:e.activeRunId===t.runId?null:e.activeRunId,runs:le(e,t.runId,r=>Le({...r,status:"detached",...t.cursor===void 0?{}:{lastCursor:t.cursor}},Ne(t,"lifecycle","detached",t.detail)))};case"run.reconnecting":return{...e,...n,activeRunId:t.runId,runs:le(e,t.runId,r=>Le({...r,status:"reconnecting"},Ne(t,"lifecycle","reconnecting",t.after)))};case"run.reconciled":{let r=Je(e,t.runId);if(t.from!==void 0&&t.from!==r.status)throw new Error(`Run ${t.runId} reconciliation evidence is stale`);if(!t.evidence)throw new Error(`Run ${t.runId} reconciliation requires provider evidence`);let i=rc(t,e,r.status);if(t.correction!==void 0&&!i)throw new Error(`Run ${t.runId} has invalid cancellation reconciliation evidence`);if(["completed","failed","aborted","cancelled","blocked","expired"].includes(r.status)&&!i)throw new Error(`Run ${t.runId} cannot be reconciled after a proven terminal state`);let a=t.from??r.status,s=t.to??t.status;if(i&&(s==="cancelled"||s==="aborted")){let d=e.missingHistory.some(u=>u.runId===t.runId),c=d?"incomplete":nc(s);return{...e,...n,activeRunId:e.activeRunId===t.runId?null:e.activeRunId,lastError:null,messages:bt(e,t.runId,u=>({...u,status:c,complete:!d,parts:u.parts.map(l=>l.status==="running"?{...l,status:mo(s)}:l)})),runs:le(e,t.runId,u=>{let{error:l,terminalReason:f,...g}=u;return Le({...g,status:s,...t.detail===void 0?{}:{terminalReason:t.detail},complete:!d},Ne(t,"reconciliation",`${a} \u2192 ${s}`,t.detail))})}}return{...e,...n,activeRunId:GS(s)&&e.activeRunId===t.runId?null:GS(s)?e.activeRunId:t.runId,runs:le(e,t.runId,d=>Le({...d,status:s},Ne(t,"reconciliation",`${a} \u2192 ${s}`,t.detail)))}}case"run.unknown":return{...e,...n,activeRunId:e.activeRunId===t.runId?null:e.activeRunId,messages:e.messages.map(r=>r.runId===t.runId&&r.role==="assistant"?{...r,status:"incomplete",complete:!1}:r),runs:le(e,t.runId,r=>Le({...r,status:"unknown"},Ne(t,"lifecycle","unknown",t.detail))),lastError:t.detail};default:return t}}function iP(e,t,n,o){if(e.activeRunId)throw new Error(`Run ${e.activeRunId} is already active`);let r=be(t.runId),i=na(t.turnId),a=nn(t.userMessageId),s=nn(t.assistantMessageId),d=t.receipt??_t({runId:t.runId,turnId:t.turnId,operationId:t.operationId,conversationId:e.conversationId,branchId:e.branchId,admittedAt:o,profile:e.profile,text:t.text,capabilities:Ai}),c=lo(e,a,"user",t.text,r,i,"complete",o),u={...lo(e,s,"assistant","",r,i,"streaming",o),parts:[]},l={id:i,conversationId:e.conversationId,branchId:e.branchId,userMessageId:a,runIds:[r],status:"running",createdAt:o,updatedAt:o},f=e.connections.find(v=>v.id===d.requested.connectionId)?.id,g=e.environments.find(v=>v.id===d.environmentId)?.id,p={id:r,conversationId:e.conversationId,branchId:e.branchId,turnId:i,operationId:t.operationId,status:"streaming",receipt:d,capabilities:d.capabilities,...f===void 0?{}:{connectionId:f},...g===void 0?{}:{environmentId:g},...d.requested.model===void 0?{}:{model:d.requested.model},...d.providerSessionId===void 0?{}:{providerSessionId:d.providerSessionId},inputTokens:0,outputTokens:0,tokensKnown:!1,usdKnown:!1,complete:!1,startedAt:o,updatedAt:o,lastProviderSequence:0,eventCount:0,interactions:[],activity:[Ne(t,"admission","admitted",`profile ${d.profileDigest}`)],eventDetails:[]};return sc({...e,...n,draft:"",drafts:e.drafts.map(v=>v.branchId===e.branchId?{...v,text:"",updatedAt:o}:v),activeRunId:t.runId,lastError:null,messages:[...e.messages,c,u],messageParts:[xn(c,o),xn(u,o)].reduce(x,e.messageParts),turns:x(e.turns,l),runs:x(e.runs,p)},{run:p,turn:l,userMessage:c,assistantMessage:u,at:o})}function GS(e){return e==="completed"||e==="failed"||e==="aborted"||e==="cancelled"||e==="blocked"||e==="expired"}function Iy(e,t){let n={revision:t.revision,sequence:t.sequence},o=t.event;if(!dc(o))return e;let r=(()=>{switch(o.kind){case"run.requested":case"run.control.requested":case"run.control.acknowledged":case"run.queue.added":case"run.queue.removed":case"run.detached":case"run.reconnecting":case"run.unknown":return vy(e,o,n,t.occurredAt);case"run.text.delta":case"run.part.updated":case"run.reasoning.delta":case"run.tool.call":case"run.tool.result":case"run.artifact":case"run.proposal":case"run.warning":case"run.error":case"run.usage":case"run.cost":return ZS(e,o,n);case"run.interaction":case"run.interaction.cancelled":case"run.interaction.response.requested":case"run.interaction.responded":case"run.provider.event":case"run.finished":return hy(e,o,n);case"run.environment.observed":return oc(e,o,t.occurredAt);case"run.status.changed":return hy(e,o,n);case"run.reconciled":return vy(e,o,n,t.occurredAt);default:return o}})();if(!("provider"in o)||!o.provider)return r;let i=o.runId,a=o.provider.providerSequence,s=r.missingHistory.flatMap(l=>{let f=l.toSequence??l.fromSequence;return l.runId!==i||a<l.fromSequence?[l]:a>f?[l]:l.fromSequence===f?[]:a===l.fromSequence?[{...l,fromSequence:a+1}]:a===f?[{...l,toSequence:a-1}]:[{...l,toSequence:a-1},{...l,fromSequence:a+1}]}),d=s.length===r.missingHistory.length?r:{...r,missingHistory:s},c=new Set(s.map(l=>l.runId)),u=new Set(d.runs.filter(l=>!l.complete&&l.status!=="unknown"&&["completed","failed","aborted","cancelled","blocked","expired"].includes(l.status)&&!c.has(l.id)).map(l=>l.id));return u.size===0?d:{...d,messages:d.messages.map(l=>l.runId&&u.has(l.runId)&&l.role==="assistant"?{...l,complete:!0,status:d.runs.find(f=>f.id===l.runId)?.status==="completed"?"complete":d.runs.find(f=>f.id===l.runId)?.status==="failed"?"failed":l.status}:l),runs:d.runs.map(l=>u.has(l.id)?{...l,complete:!0}:l)}}function dc(e){switch(e.kind){case"run.requested":return e.receipt!==void 0;case"run.text.delta":return e.provider!==void 0;case"run.finished":return e.provider!==void 0||e.reason!==void 0||e.status==="cancelled";case"run.status.changed":return"provider"in e||"detail"in e;case"run.reconciled":return"from"in e||"to"in e;case"run.part.updated":case"run.reasoning.delta":case"run.tool.call":case"run.tool.result":case"run.artifact":case"run.proposal":case"run.warning":case"run.usage":case"run.cost":case"run.error":case"run.interaction":case"run.interaction.cancelled":case"run.interaction.response.requested":case"run.interaction.responded":case"run.provider.event":case"run.environment.observed":case"run.control.requested":case"run.control.acknowledged":case"run.queue.added":case"run.queue.removed":case"run.detached":case"run.reconnecting":case"run.unknown":return!0;default:return!1}}var aP=256;function XS(e){return e.slice(-aP)}function YS(e,t,n,o,r={}){let i={...t,revision:e.revision,sequence:e.sequence,appliedEvents:r.appliedEvents??XS([...t.appliedEvents,{id:n,sequence:e.sequence,revision:e.revision,digest:o}])},a=pa(e.event);if(e.cursor!==void 0&&a!==void 0){let s=on(e.cursor),d=i.runs.find(c=>c.id===a);i={...i,replayCursors:jd(i.replayCursors,c=>c.runId,{runId:a,cursor:s,committedSequence:e.sequence}),...d===void 0?{}:{runs:x(i.runs,{...d,replayCursor:s,updatedAt:e.occurredAt})}}}return r.finalize!==!1?i=QS(i):Zt(i),i}function QS(e){let t=Ld(e),n={...t,projectionChecksum:FS(t)};return Zt(n),n}var sP=["workspace.opened","draft.changed","run.requested","run.text.delta","run.cancel.requested","run.finished","application.shutdown.requested"];function eE(e){return sP.includes(e.kind)}function cc(e,t){if(!Y(t.occurredAt))throw new ye("Event occurredAt is not a canonical ISO date");let n=t.eventId??St(`event-${t.sequence}`),o=R({event:t.event,cursor:t.cursor??null,occurredAt:t.occurredAt});if(t.sequence!==e.sequence+1||t.revision!==e.revision+1){let i=e.appliedEvents.find(a=>a.id===n);if(i!==void 0){if(i.sequence!==t.sequence||i.revision!==t.revision||i.digest!==o)throw new uo(n);return e}throw new co(e,t)}let r=dc(t.event)?Iy(e,t):eE(t.event)?yy(e,t.event,t):my(e,t.event,t.occurredAt);return YS(t,r,n,o)}function Ni(e,t){if(t.length===0)return e;let n=new Map(e.appliedEvents.map(i=>[i.id,i])),o=[],r=e;for(let i of t){if(!Y(i.occurredAt))throw new ye("Event occurredAt is not a canonical ISO date");let a=i.eventId??St(`event-${i.sequence}`),s=R({event:i.event,cursor:i.cursor??null,occurredAt:i.occurredAt}),d=n.get(a);if(d!==void 0){if(d.sequence!==i.sequence||d.revision!==i.revision||d.digest!==s)throw new uo(a);continue}if(i.sequence!==r.sequence+1||i.revision!==r.revision+1)throw new co(r,i);let c=dc(i.event)?Iy(r,i):eE(i.event)?yy(r,i.event,i):my(r,i.event,i.occurredAt),u={id:a,sequence:i.sequence,revision:i.revision,digest:s};o.push(u),n.set(a,u),r=YS(i,c,a,s,{appliedEvents:e.appliedEvents,finalize:!1})}return QS({...r,appliedEvents:XS([...e.appliedEvents,...o])})}function tE(e){if(e!==null&&typeof e=="object"&&!Object.isFrozen(e)){for(let t of Object.values(e))tE(t);Object.freeze(e)}return e}function dP(e){return e===void 0?void 0:tE(structuredClone(e))}function by(e){let t=Te(e.profile),n=dP(e.connection),o=n?.id??e.connectionId,r=t.model?.default?.trim();return Object.freeze({profile:t,...e.profileId===void 0?{}:{profileId:e.profileId},profileDigest:Qh($e(t)),...n===void 0?{}:{connection:n},...o===void 0?{}:{connectionId:o},...n===void 0?{}:{connectionDigest:R(n)},...r===void 0||r.length===0?{}:{model:r},...t.harness===void 0?{}:{runner:t.harness}})}function uc(e){let t=e.selectedConnectionId===null?void 0:e.connections.find(n=>n.id===e.selectedConnectionId);return by({profile:e.profile,...e.selectedProfileId===null?{}:{profileId:e.selectedProfileId},...t===void 0?{}:{connection:t},...e.selectedConnectionId===null?{}:{connectionId:e.selectedConnectionId}})}var lc=class{#e=Promise.resolve();run(t){let n=this.#e.then(t);return this.#e=n.then(()=>{},()=>{}),n}},pc=class{#e=new Map;run(t,n){let r=(this.#e.get(t)??Promise.resolve()).then(n),i=r.then(()=>{},()=>{});return this.#e.set(t,i),i.then(()=>{this.#e.get(t)===i&&this.#e.delete(t)}),r}async whenIdle(){for(;this.#e.size>0;)await Promise.all(this.#e.values())}};function mc(e,t,n){if(fa(t.request))return{status:"none",matchingRules:[],skippedRules:[],detail:"AUTOMATION_SECRET_FORBIDDEN"};let o=[],r=[];for(let l of e){let f=l;if(cP(f.matcher,t.request,n)){if(!f.enabled){r.push({rule:f,reason:"disabled"});continue}if(uP(f,n.now)){r.push({rule:f,reason:"expired"});continue}if(f.maximumUses!==void 0&&f.uses>=f.maximumUses){r.push({rule:f,reason:"use-limit"});continue}o.push(f)}}if(o.length===0){let l=r[0]?.reason;return{status:l??"none",matchingRules:[],skippedRules:r,...l===void 0?{}:{detail:`AUTOMATION_RULE_${l.toUpperCase()}`}}}let i=[...o].sort(lP),a=fc(i[0]?.matcher??{}),s=i.filter(l=>fc(l.matcher)===a),d=new Set(s.map(l=>R(l.answer))),c=new Set(s.map(l=>l.responseScope));if(d.size>1||c.size>1)return{status:"conflict",matchingRules:i,skippedRules:r,detail:"AUTOMATION_RULE_CONFLICT"};let u=i[0];return u===void 0?{status:"none",matchingRules:[],skippedRules:r,detail:"AUTOMATION_RULE_NONE"}:{status:"eligible",rule:u,matchingRules:i,skippedRules:r}}function ji(e){let t=e.subject;if(t!==void 0)switch(t.type){case"tool":return t.toolName;case"command":return t.command;case"file":return t.path;case"resource":return t.uri;default:return t}}function nE(e,t){return new Set(e.responseScopes??["interaction"]).has(t==="once"?"interaction":t)}function Ui(e){return R(e.answer)}function cP(e,t,n){return!(e.interactionKind!==void 0&&e.interactionKind!==t.kind||e.subjectType!==void 0&&e.subjectType!==t.subject?.type||e.subjectValue!==void 0&&e.subjectValue!==ji(t)||!Di(e.profileDigest,n.profileDigest)||!Di(e.connectionId,n.connectionId)||!Di(e.runner,n.runner)||!Di(e.workspaceId,n.workspaceId)||!Di(e.providerSessionId,n.providerSessionId))}function Di(e,t){return e===void 0||t!==void 0&&e===t}function uP(e,t){return e.expiresAt!==void 0&&Date.parse(t)>=Date.parse(e.expiresAt)}function fc(e){return Object.values(e).filter(t=>t!==void 0).length}function lP(e,t){let n=fc(t.matcher)-fc(e.matcher);return n!==0?n:e.id<t.id?-1:e.id>t.id?1:0}function wy(e){let t={...e,requestDigest:vv(e)},n=mu.safeParse(t);if(!n.success)throw new TypeError("Interaction request material is invalid");return oE(n.data)}function gc(e){let t=mu.safeParse(e);return t.success?oE(t.data):void 0}function rE(e,t=e.binding){return iE(e,t)}function Ry(e){return{...e.binding,requestDigest:e.requestDigest}}function oE(e){return{...iE(e,e.binding),requestDigest:e.requestDigest}}function iE(e,t){return{id:e.id,kind:e.kind,title:e.title,...e.body===void 0?{}:{body:e.body},...e.subject===void 0?{}:{subject:structuredClone(e.subject)},answerSpec:structuredClone(e.answerSpec),...e.responseScopes===void 0?{}:{responseScopes:[...e.responseScopes]},...e.allowedOutcomes===void 0?{}:{allowedOutcomes:[...e.allowedOutcomes]},...e.default===void 0?{}:{default:structuredClone(e.default)},...e.timeoutMs===void 0?{}:{timeoutMs:e.timeoutMs},...e.onTimeout===void 0?{}:{onTimeout:e.onTimeout},binding:{...t}}}function yc(e){let t=dr(e.operationId),n=pP(e.request);hc(n);let o=yo(e.ruleId);fP(n,e.responseScope,e.confirmPersistent===!0);let r=vr(n,{id:n.id,outcome:"accepted",data:e.answer});if(r.containsSecret||r.publicData===void 0)throw new m("AUTOMATION_SECRET_FORBIDDEN","Automation is unavailable for interactions containing secret answers");let i=e.now?.()??new Date().toISOString();Ey(e.expiresAt,i),_y(e.maximumUses);let a=gP(n,e.matcher,e.context,e.responseScope);mP(e.responseScope,a);let s={id:o,enabled:!0,matcher:a,answer:structuredClone(r.publicData),responseScope:e.responseScope,createdAt:i,...e.expiresAt===void 0?{}:{expiresAt:e.expiresAt},...e.maximumUses===void 0?{}:{maximumUses:e.maximumUses},uses:0,...e.creationSource===void 0&&e.context?.providerSessionId===void 0?{}:{automationMetadata:{...e.creationSource===void 0?{}:{creationSource:e.creationSource},...e.context?.providerSessionId===void 0?{}:{providerSessionId:e.context.providerSessionId}}}},d=pt(n),c=R({kind:"automation.rule.create",ruleId:o,requestDigest:d,matcher:a,answerDigest:Ui(s),responseScope:s.responseScope,expiresAt:s.expiresAt??null,maximumUses:s.maximumUses??null});return{operationId:t,ruleId:o,rule:s,digest:c,now:i}}function hc(e){if(fa(e))throw new m("AUTOMATION_SECRET_FORBIDDEN","Automation is unavailable for interactions containing secret answers")}function Gt(e,t,n){if(e.requestDigest!==t)throw new m("OPERATION_CONFLICT",`Operation ${n} has different input`)}function dr(e){if(!e)throw new m("INVALID_OPERATION_ID","Automation operationId is required");try{Xe(e)}catch{throw new m("INVALID_OPERATION_ID","Automation operationId is invalid")}return e}function yo(e){try{return Jh(e)}catch{throw new m("INVALID_AUTOMATION_RULE","Automation rule id is invalid")}}function Sy(e,t){return{...e,now:t}}function pt(e){return R({id:e.id,kind:e.kind,title:e.title,body:e.body??null,subject:e.subject===void 0?null:{type:e.subject.type,value:ji(e)??null},answerSpec:e.answerSpec,responseScopes:e.responseScopes??["interaction"],timeoutMs:e.timeoutMs??null,onTimeout:e.onTimeout??null})}function pP(e){let t=gc(e);if(t===void 0)throw new m("INVALID_INTERACTION_REQUEST","Interaction request is invalid");return t}function fP(e,t,n){if(!nE(e,t))throw new m("AUTOMATION_SCOPE_UNSUPPORTED",`The interaction does not offer ${t} responses`);if(t==="persistent"&&!n)throw new m("AUTOMATION_CONFIRMATION_REQUIRED","Persistent automation requires explicit confirmation of its scope")}function mP(e,t){if(e==="session"&&t.providerSessionId===void 0)throw new m("AUTOMATION_SCOPE_CONTEXT_REQUIRED","Session automation requires an exact provider session binding");if(e==="persistent"&&t.profileDigest===void 0&&t.connectionId===void 0&&t.runner===void 0&&t.workspaceId===void 0)throw new m("AUTOMATION_SCOPE_CONTEXT_REQUIRED","Persistent automation requires an explicit profile, connection, runner, or workspace scope")}function Ey(e,t){if(e===void 0)return;let n=Date.parse(e);if(!Number.isFinite(n)||n<=Date.parse(t))throw new m("AUTOMATION_EXPIRY_INVALID","Automation expiry must be in the future")}function _y(e){if(e!==void 0&&(!Number.isInteger(e)||e<1||e>1e6))throw new m("AUTOMATION_USE_LIMIT_INVALID","Automation use limit must be a positive integer")}function gP(e,t,n,o){let r=ji(e);return yP(e,t),{...{interactionKind:e.kind,...e.subject===void 0?{}:{subjectType:e.subject.type},...r===void 0?{}:{subjectValue:r},...n?.profileDigest===void 0?{}:{profileDigest:n.profileDigest},...n?.connectionId===void 0?{}:{connectionId:n.connectionId},...n?.runner===void 0?{}:{runner:n.runner},...n?.workspaceId===void 0?{}:{workspaceId:n.workspaceId},...o==="session"&&n?.providerSessionId===void 0?{}:o==="session"?{providerSessionId:n?.providerSessionId}:{}},...t?.profileDigest===void 0&&n?.profileDigest===void 0?{}:{profileDigest:t?.profileDigest??n?.profileDigest},...t?.connectionId===void 0&&n?.connectionId===void 0?{}:{connectionId:t?.connectionId??n?.connectionId},...t?.runner===void 0&&n?.runner===void 0?{}:{runner:t?.runner??n?.runner},...t?.workspaceId===void 0&&n?.workspaceId===void 0?{}:{workspaceId:t?.workspaceId??n?.workspaceId}}}function yP(e,t){if(t?.interactionKind!==void 0&&t.interactionKind!==e.kind)throw new m("AUTOMATION_MATCHER_CONFLICT","An automation matcher cannot target another interaction kind");let n=e.subject;if(t?.subjectType!==void 0&&t.subjectType!==n?.type)throw new m("AUTOMATION_MATCHER_CONFLICT","An automation matcher cannot target another subject type");let o=ji(e);if(t?.subjectValue!==void 0&&t.subjectValue!==o)throw new m("AUTOMATION_MATCHER_CONFLICT","An automation matcher cannot target another subject value")}async function ft(e,t){let n=e.commitAndWait(t);n!==void 0&&await n}function kn(e,t,n){return{id:Xe(e),kind:"custom",requestDigest:t,status:"terminal",createdAt:n,updatedAt:n}}function An(e,t){for(let n of e){let o=n.event;if(o.kind==="rule.upserted"&&o.operation?.id===t||o.kind==="rule.deleted"&&o.operation.id===t)return o.operation}}function Li(e,t){for(let n=e.length-1;n>=0;n-=1){let o=e[n]?.event;if(o?.kind==="rule.upserted"&&o.operation?.id===t)return o.rule}}async function xy(e){let t=yc(e),n=An(e.events(),t.operationId);if(n!==void 0){Gt(n,t.digest,t.operationId);let o=Li(e.events(),t.operationId);if(o===void 0)throw new m("OPERATION_REQUIRES_RECONCILIATION","The rule write needs reconciliation");return{operationId:t.operationId,ruleId:o.id,rule:o,replayed:!0,revision:e.state().revision}}return await ft(e,{kind:"rule.upserted",rule:t.rule,operation:kn(t.operationId,t.digest,t.now)}),{operationId:t.operationId,ruleId:t.ruleId,rule:t.rule,replayed:!1,revision:e.state().revision}}async function ky(e){return await hP(e,!1)}async function Ay(e){let t=dr(e.operationId),n=yo(e.ruleId),o=R({kind:"automation.rule.delete",ruleId:n}),r=An(e.events(),t);if(r!==void 0)return Gt(r,o,t),{operationId:t,ruleId:n,replayed:!0,revision:e.state().revision};if(!e.state().rules.some(a=>a.id===n))throw new m("AUTOMATION_RULE_NOT_FOUND","The automation rule does not exist");let i=e.now?.()??new Date().toISOString();return await ft(e,{kind:"rule.deleted",ruleId:n,operation:kn(t,o,i)}),{operationId:t,ruleId:n,replayed:!1,revision:e.state().revision}}async function aE(e,t,n,o){let r=sE(n,t.id),i=R({kind:"automation.rule.use",operationId:n,ruleId:t.id,uses:t.uses+1}),a=An(e.events(),r);if(a!==void 0)return Gt(a,i,n),!1;let s={...t,uses:t.uses+1};return await ft(e,{kind:"rule.upserted",rule:s,operation:kn(r,i,o)}),!0}function ho(e,t){for(let n=e.length-1;n>=0;n-=1){let o=e[n]?.event;if(o?.kind!=="rule.upserted"||o.operation===void 0)continue;let r=o.rule;if(o.operation.id!==sE(t,r.id))continue;let i=R({kind:"automation.rule.use",operationId:t,ruleId:r.id,uses:r.uses});return Gt(o.operation,i,t),r}}function sE(e,t){return`operation-${R({kind:"automation.rule.use",operationId:e,ruleId:t}).slice(0,48)}`}async function hP(e,t){let n=dr(e.operationId),o=yo(e.ruleId),r=e.state().rules.find(c=>c.id===o);if(r===void 0)throw new m("AUTOMATION_RULE_NOT_FOUND","The automation rule does not exist");let i=R({kind:"automation.rule.disable",ruleId:o,enabled:t}),a=An(e.events(),n);if(a!==void 0)return Gt(a,i,n),{operationId:n,ruleId:o,rule:r,replayed:!0,revision:e.state().revision};let s=e.now?.()??new Date().toISOString(),d={...r,enabled:t};return await ft(e,{kind:"rule.upserted",rule:d,operation:kn(n,i,s)}),{operationId:n,ruleId:o,rule:d,replayed:!1,revision:e.state().revision}}async function Cy(e){let t=dr(e.operationId);hc(e.interaction.request);let n=Sy(e.context,e.now?.()??new Date().toISOString()),o=R({kind:"automation.rule.dry-run",interaction:pt(e.interaction.request),context:n}),r=dE(e.events(),t);if(r!==void 0){if(r.requestDigest!==o)throw new m("OPERATION_CONFLICT",`Operation ${t} has different input`);return{operationId:t,replayed:!0,evaluation:cE(e.state(),e.interaction,n,r),revision:e.state().revision}}let i=mc(e.state().rules,e.interaction,n),a=$y({operationId:t,interaction:e.interaction,requestDigest:o,outcome:i.status==="eligible"?"dry-run":uE(i),...i.rule===void 0?{}:{ruleId:i.rule.id},...i.detail===void 0?{}:{detail:i.detail},createdAt:n.now});return await ft(e,{kind:"interaction.automation.audited",audit:a}),{operationId:t,replayed:!1,evaluation:i,revision:e.state().revision}}async function Oy(e){let t=dr(e.operationId);hc(e.interaction.request);let n=Sy(e.context,e.now?.()??new Date().toISOString()),o=pt(e.interaction.request),r=ho(e.events(),t)??vP(e.interaction,t),i=dE(e.events(),t);if(i!==void 0){if(i.requestDigest!==o)throw new m("OPERATION_CONFLICT",`Operation ${t} has different input`);return{operationId:t,replayed:!0,evaluation:r===void 0?cE(e.state(),e.interaction,n,i):Ty(r),revision:e.state().revision}}let a=r===void 0?mc(e.state().rules,e.interaction,n):Ty(r);if(a.status!=="eligible"||a.rule===void 0)return await ft(e,{kind:"interaction.automation.audited",audit:$y({operationId:t,interaction:e.interaction,requestDigest:o,outcome:uE(a),...a.rule===void 0?{}:{ruleId:a.rule.id},...a.detail===void 0?{}:{detail:a.detail},createdAt:n.now})}),{operationId:t,replayed:!1,evaluation:a,revision:e.state().revision};let s=a.rule,d=vr(e.interaction.request,{id:e.interaction.request.id,outcome:"accepted",data:s.answer});if(d.containsSecret||d.publicData===void 0)throw new m("AUTOMATION_SECRET_FORBIDDEN","Automation is unavailable for interactions containing secret answers");if(r===void 0)if(await aE(e,s,t,n.now))s=ho(e.events(),t)??{...s,uses:s.uses+1};else{let f=ho(e.events(),t);if(f===void 0)throw new m("OPERATION_REQUIRES_RECONCILIATION","The automation response reservation needs reconciliation");a=Ty(f),s=f}let c=await e.respond(d.response,{automated:!0,rule:s});await c.completion;let u=c.acknowledgement.outcome==="accepted"||c.acknowledgement.outcome==="already-applied";return await ft(e,{kind:"interaction.automation.audited",audit:$y({operationId:t,interaction:e.interaction,requestDigest:o,outcome:u?"applied":"matched",ruleId:s.id,...d.dataDigest===void 0?{}:{responseDigest:d.dataDigest},responseScope:s.responseScope,...c.acknowledgement.detail===void 0?{}:{detail:c.acknowledgement.detail},createdAt:n.now})}),{operationId:t,replayed:c.replayed,evaluation:a,response:c,revision:e.state().revision}}function vP(e,t){let n=e.responseOperation;if(!(n?.operationId!==t||n.automationRule===void 0))return n.automationRule}function Ty(e){return{status:"eligible",rule:e,matchingRules:[e],skippedRules:[]}}function $y(e){return{id:ra(`feedback-${R({operationId:e.operationId??null,runId:e.interaction.runId,interactionId:e.interaction.request.id,requestDigest:e.requestDigest,ruleId:e.ruleId??null,outcome:e.outcome}).slice(0,48)}`),runId:e.interaction.runId,interactionId:e.interaction.request.id,...e.ruleId===void 0?{}:{ruleId:e.ruleId},...e.operationId===void 0?{}:{operationId:Xe(e.operationId)},requestDigest:e.requestDigest,...e.responseDigest===void 0?{}:{responseDigest:e.responseDigest},...e.responseScope===void 0?{}:{responseScope:e.responseScope},outcome:e.outcome,...e.detail===void 0?{}:{detail:IP(e.detail)},createdAt:e.createdAt}}function IP(e){return/^AUTOMATION_[A-Z0-9_]{1,96}$/u.test(e)?e:"AUTOMATION_RESPONSE_RESULT"}function dE(e,t){for(let n=e.length-1;n>=0;n-=1){let o=e[n]?.event;if(o?.kind==="interaction.automation.audited"&&o.audit.operationId===t)return o.audit}}function cE(e,t,n,o){let r=mc(e.rules,t,n);if(o.outcome!=="dry-run"){let a=bP(o.outcome);if(a===void 0)return r;let{rule:s,...d}=r;return{...d,status:a}}if(o.ruleId===void 0)return r;let i=e.rules.find(a=>a.id===o.ruleId);return i===void 0?r:{...r,status:"eligible",rule:i}}function bP(e){switch(e){case"skipped":return"none";case"conflict":return"conflict";case"expired":return"expired";case"use-limit":return"use-limit";case"disabled":return"disabled";default:return}}function uE(e){switch(e.status){case"expired":return"expired";case"use-limit":return"use-limit";case"disabled":return"disabled";case"conflict":return"conflict";case"eligible":return"matched";case"none":return"skipped";default:return e.status}}async function Py(e){let t=yo(e.ruleId),n=e.state().rules.find(l=>l.id===t);if(n===void 0)throw new m("AUTOMATION_RULE_NOT_FOUND","The automation rule does not exist");if(e.request===void 0){if(e.answer!==void 0||e.responseScope!==void 0)throw new m("AUTOMATION_REQUEST_REQUIRED","Updating an answer or response scope requires the matching interaction request");return await wP(e,n,t)}let o=e.responseScope??n.responseScope,r={...e.context??{},...e.context?.providerSessionId===void 0&&n.matcher.providerSessionId!==void 0?{providerSessionId:n.matcher.providerSessionId}:{}},i=e.now?.()??new Date().toISOString(),a=e.expiresAt??(n.expiresAt!==void 0&&Date.parse(n.expiresAt)>Date.parse(i)?n.expiresAt:void 0),s=yc({...e,ruleId:t,request:e.request,answer:e.answer??n.answer,responseScope:o,matcher:e.matcher??n.matcher,context:r,...a===void 0?{}:{expiresAt:a},...e.maximumUses===void 0&&n.maximumUses===void 0?{}:{maximumUses:e.maximumUses??n.maximumUses},confirmPersistent:e.confirmPersistent??(n.responseScope==="persistent"&&o==="persistent"),now:()=>i}),d=R({kind:"automation.rule.update",ruleId:t,requestDigest:pt(e.request),matcher:s.rule.matcher,answerDigest:Ui(s.rule),responseScope:o,expiresAt:e.expiresAt??n.expiresAt??null,maximumUses:s.rule.maximumUses??null}),c=An(e.events(),s.operationId);if(c!==void 0){Gt(c,d,s.operationId);let l=Li(e.events(),s.operationId);if(l===void 0)throw new m("OPERATION_REQUIRES_RECONCILIATION","The rule write needs reconciliation");return{operationId:s.operationId,ruleId:t,rule:l,replayed:!0,revision:e.state().revision}}let u={...s.rule,enabled:n.enabled,createdAt:n.createdAt,uses:n.uses,...e.expiresAt===void 0&&n.expiresAt!==void 0?{expiresAt:n.expiresAt}:{},...n.automationMetadata===void 0&&s.rule.automationMetadata===void 0?{}:{automationMetadata:{...n.automationMetadata??{},...s.rule.automationMetadata??{}}}};return await ft(e,{kind:"rule.upserted",rule:u,operation:kn(s.operationId,d,i)}),{operationId:s.operationId,ruleId:t,rule:u,replayed:!1,revision:e.state().revision}}async function wP(e,t,n){let o=e.now?.()??new Date().toISOString();Ey(e.expiresAt,o),_y(e.maximumUses);let r={...t.matcher,...e.matcher??{},...e.context?.profileDigest===void 0?{}:{profileDigest:e.context.profileDigest},...e.context?.connectionId===void 0?{}:{connectionId:e.context.connectionId},...e.context?.runner===void 0?{}:{runner:e.context.runner},...e.context?.workspaceId===void 0?{}:{workspaceId:e.context.workspaceId},...e.context?.providerSessionId===void 0?{}:{providerSessionId:e.context.providerSessionId}},i={...t.automationMetadata??{},...e.creationSource===void 0?{}:{creationSource:e.creationSource},...e.context?.providerSessionId===void 0?{}:{providerSessionId:e.context.providerSessionId}},a=R({kind:"automation.rule.update",ruleId:n,requestDigest:null,matcher:r,answerDigest:Ui(t),responseScope:t.responseScope,expiresAt:e.expiresAt??t.expiresAt??null,maximumUses:e.maximumUses??t.maximumUses??null,automationMetadata:i}),s=An(e.events(),e.operationId);if(s!==void 0){Gt(s,a,e.operationId);let c=Li(e.events(),e.operationId);if(c===void 0)throw new m("OPERATION_REQUIRES_RECONCILIATION","The rule write needs reconciliation");return{operationId:e.operationId,ruleId:n,rule:c,replayed:!0,revision:e.state().revision}}let d={...t,matcher:r,...Object.keys(i).length===0?{}:{automationMetadata:i},...e.expiresAt===void 0?{}:{expiresAt:e.expiresAt},...e.maximumUses===void 0?{}:{maximumUses:e.maximumUses}};return await ft(e,{kind:"rule.upserted",rule:d,operation:kn(e.operationId,a,o)}),{operationId:e.operationId,ruleId:n,rule:d,replayed:!1,revision:e.state().revision}}function lE(e){let t=new lc,n=()=>({state:e.state,events:e.events,commitAndWait:e.commitAndWait,now:e.now});return{create:async o=>{let r=await t.run(async()=>{let i=vc(e.state(),o.runId,o.interactionId),a=RP(i,o.request);return xy({...n(),...o,request:a,context:Ic(e.state(),i,o.context)})});return await e.reconcilePending?.(),r},update:async o=>{let r=await t.run(async()=>{let i=vc(e.state(),o.runId,o.interactionId),a=o.request??i?.request;return Py({...n(),...o,...a===void 0?{}:{request:a},context:Ic(e.state(),i,o.context)})});return await e.reconcilePending?.(),r},dryRun:o=>t.run(async()=>{let r=e.state(),i=vc(r,o.runId,o.interactionId);if(i===void 0)throw new m("UNKNOWN_INTERACTION","The interaction is no longer available");return Cy({...n(),operationId:o.operationId,interaction:i,context:Ic(r,i,o.context)})}),apply:o=>t.run(async()=>{if(!e.canRespond())throw new m("CAPABILITY_UNAVAILABLE","The current runtime cannot acknowledge interaction responses");let r=e.state(),i=vc(r,o.runId,o.interactionId);if(i===void 0)throw new m("UNKNOWN_INTERACTION","The interaction is no longer available");return Oy({...n(),operationId:o.operationId,interaction:i,context:Ic(r,i,void 0),respond:(a,{rule:s})=>e.respond({operationId:o.operationId,runId:o.runId,interactionId:o.interactionId,response:a,automationRule:s})})}),disable:async o=>{let r=await t.run(()=>ky({...n(),...o}));return await e.reconcilePending?.(),r},delete:async o=>{let r=await t.run(()=>Ay({...n(),...o}));return await e.reconcilePending?.(),r},list:()=>structuredClone(e.state().rules)}}function vc(e,t,n){if(t===void 0&&n===void 0)return;if(t===void 0||n===void 0)throw new m("INVALID_PARAMS","Automation commands require both runId and interactionId when targeting a pending interaction");let r=e.runs.find(i=>i.id===t)?.interactions.find(i=>i.request.id===n);if(r===void 0)throw new m("UNKNOWN_INTERACTION","The interaction is no longer available");return r}function RP(e,t){if(e!==void 0&&t!==void 0){if(pt(e.request)!==pt(t))throw new m("INTERACTION_BINDING_MISMATCH","The automation request belongs to a different interaction");return e.request}if(e!==void 0)return e.request;if(t!==void 0)return t;throw new m("AUTOMATION_INTERACTION_REQUIRED","Automation create or update requires an interaction target or request")}function Ic(e,t,n){let o=t===void 0?void 0:e.runs.find(i=>i.id===t.runId),r=o?.providerSessionId??t?.responseBinding.sessionId;return{...e.workspaceId===null?{}:{workspaceId:e.workspaceId},...o?.receipt.profileDigest===void 0?{}:{profileDigest:o.receipt.profileDigest},...o?.connectionId===void 0&&o?.receipt.requested.connectionId===void 0?{}:{connectionId:o.connectionId??o.receipt.requested.connectionId},...o?.receipt.requested.runner===void 0?{}:{runner:o.receipt.requested.runner},...r===void 0?{}:{providerSessionId:r},...n??{}}}function SP(e,t,n=[]){return Xe(`operation-automation-interaction-${R({runId:e,interactionRequestDigest:pt(t),policyDigest:EP(n)}).slice(0,48)}`)}function EP(e){return R([...e].sort((t,n)=>t.id<n.id?-1:t.id>n.id?1:0).map(({uses:t,...n})=>n))}var bc=class{#e;#t=new Map;#n=Promise.resolve();constructor(t){this.#e=t}schedule(t){let n=pE(t,this.#e.state(),this.#e.events());if(n===void 0)return Promise.resolve();let o=_P(t.runId,t.request.id,n),r=this.#t.get(o);if(r!==void 0)return r;let i=this.#n.then(()=>this.#r(t,n));return this.#n=i.catch(()=>{}),this.#t.set(o,i),i.then(()=>this.#i(o,i),()=>this.#i(o,i)),i}async reconcile(){let t=this.#e.state().runs.flatMap(n=>n.interactions);await Promise.all(t.map(n=>this.schedule(n)))}async whenIdle(){await this.#n}async#r(t,n){let o=t;try{let r=xP(this.#e.state(),t.runId,t.request.id);if(r===void 0)return;let i=pE(r,this.#e.state(),this.#e.events());if(i!==n){i!==void 0&&this.schedule(r);return}o=r,await this.#e.apply({operationId:n,runId:o.runId,interactionId:o.request.id})}catch(r){await this.#o(r,o)}}async#o(t,n){if(this.#e.onError!==void 0)try{await this.#e.onError(t,n)}catch{}}#i(t,n){this.#t.get(t)===n&&this.#t.delete(t)}};function _P(e,t,n){return`${e}\0${t}\0${n}`}function xP(e,t,n){return e.runs.find(r=>r.id===t)?.interactions.find(r=>r.request.id===n)}function pE(e,t,n){if(e.status==="pending")return SP(e.runId,e.request,t.rules);if(e.status!=="responding")return;if(e.responseOperation?.automationRule!==void 0)return e.responseOperation.operationId;let o=kP(n,e);if(!(o===void 0||ho(n,o)===void 0))return Xe(o)}function kP(e,t){for(let n=e.length-1;n>=0;n-=1){let o=e[n]?.event;if(o?.kind==="run.interaction.response.requested"&&o.runId===t.runId&&o.interactionId===t.request.id)return o.operationId}}var cr=class extends Error{code;constructor(t,n,o){super(n,o),this.name="EffectCoordinatorError",this.code=t}};function Ny(e){return R({effectKind:e.effectKind,request:e.request})}var gE=/(secret|password|passphrase|token|bearer|authorization|credential|private(?:[_-]?key)?|api[-_]?key)\s*[:=]/iu,AP=/^[A-Za-z][A-Za-z0-9._:-]{0,127}$/u,TP=/^[A-Za-z0-9][A-Za-z0-9._:/-]{0,255}$/u;function fE(e,t){if(e===void 0)return;let n=e.trim();return AP.test(n)&&!gE.test(n)?n:t}function mE(e){if(e===void 0)return;let t=e.trim();return TP.test(t)&&!gE.test(t)?t:void 0}var wc=class{#e;#t;#n=new Map;#r=new Map;#o;constructor(t,n,o={}){this.#e=t,this.#t=n,this.#o=o.onRecord}current(t){let n=this.#e.current(t);return n===void 0?void 0:structuredClone(n)}settle(t,n,o){let r=this.#e.current(t);if(r===void 0||r.requestDigest!==n)return;if(r.status!=="pending"&&r.status!=="unknown")return structuredClone(r);let i=fE(o.detail,`EFFECT_${o.status.toUpperCase()}`),a=mE(o.externalReference);return r.status===o.status&&r.detail===i&&r.externalReference===a?structuredClone(r):this.#u(r,o)}start(t,n){let o=this.#i(t),r=t.metadata??{};if(!ja(r))throw new cr("EFFECT_METADATA_UNSAFE","Effect metadata must contain only bounded public strings");let i=this.#t.now(),a={operationId:t.operationId,effectKind:t.effectKind,requestDigest:o,status:"pending",attempt:1,createdAt:i,updatedAt:i,metadata:structuredClone(r)},s;try{s=this.#e.reserveEffect(a),s.created&&this.#o?.(structuredClone(s.record))}catch(l){throw new cr("EFFECT_INTENT_NOT_DURABLE",`Could not atomically admit effect ${t.operationId} before dispatch`,{cause:l})}let d=s.record;if(!s.created&&d.status==="conflict"&&this.#o?.(structuredClone(d)),!s.created&&d.status!=="pending"&&!(d.status==="unknown"&&n.reconcile!==void 0))return this.#g(t,o,d,!0);if(!s.created){let l=this.#v(t.operationId,o),f=this.#n.get(l);if(f!==void 0)return{operationId:t.operationId,requestDigest:o,replayed:!0,record:structuredClone(d),completion:f.completion};if(n.reconcile===void 0)return this.#g(t,o,d,!0);let g=this.#y(l,t.serializationKey??"default",()=>this.#a(t,o,d,n));return{operationId:t.operationId,requestDigest:o,replayed:!0,record:structuredClone(d),completion:g}}let c=this.#v(t.operationId,o),u=this.#y(c,t.serializationKey??"default",()=>this.#s(t,a,n));return{operationId:t.operationId,requestDigest:o,replayed:!1,record:structuredClone(a),completion:u}}async execute(t,n){return this.start(t,n).completion}#i(t){if(!t.operationId)throw new cr("OPERATION_ID_REQUIRED","Effect operationId is required");if(!t.effectKind)throw new cr("EFFECT_KIND_REQUIRED","Effect effectKind is required");if(t.requestDigest!==void 0){if(!/^[0-9a-f]{64}$/u.test(t.requestDigest))throw new cr("EFFECT_INTENT_NOT_DURABLE","Effect request fingerprint must be a 256-bit hexadecimal value");return t.requestDigest}return Ny(t)}async#s(t,n,o){let r;try{r=await o.dispatch(this.#c(t,n.requestDigest))}catch{r={status:"unknown",detail:"EFFECT_DISPATCH_UNKNOWN"}}return this.#u(n,r)}async#a(t,n,o,r){let i;try{i=await r.reconcile?.(this.#c(t,n))}catch{i={status:"unknown",detail:"EFFECT_RECONCILIATION_UNKNOWN"}}return i===void 0?structuredClone(o):this.#u(o,i)}#u(t,n){let o=fE(n.detail,`EFFECT_${n.status.toUpperCase()}`),r=mE(n.externalReference),i={...t,status:n.status,updatedAt:this.#t.now(),...o===void 0?{}:{detail:o},...r===void 0?{}:{externalReference:r}};try{return this.#e.appendEffect(i),this.#o?.(structuredClone(i)),structuredClone(i)}catch{let s={...t,status:"unknown",updatedAt:this.#t.now(),detail:"EFFECT_OUTCOME_NOT_DURABLE"};try{this.#e.appendEffect(s);try{this.#o?.(structuredClone(s))}catch{}}catch{}return structuredClone(s)}}#c(t,n){return{operationId:t.operationId,effectKind:t.effectKind,requestDigest:n,request:t.request,...t.signal===void 0?{}:{signal:t.signal}}}#g(t,n,o,r){return{operationId:t.operationId,requestDigest:n,replayed:r,record:structuredClone(o),completion:Promise.resolve(structuredClone(o))}}#v(t,n){return`${t}\0${n}`}#y(t,n,o){let r=this.#l(n,o),i={key:t,completion:r};return this.#n.set(t,i),r.then(()=>this.#p(t,r),()=>this.#p(t,r)),r}#p(t,n){this.#n.get(t)?.completion===n&&this.#n.delete(t)}#l(t,n){let o=this.#r.get(t)??Promise.resolve(),r,i=new Promise(a=>{r=a});return this.#r.set(t,i),o.then(n).finally(()=>{r(),this.#r.get(t)===i&&this.#r.delete(t)})}};async function hE(e){let{request:t}=e,o=await e.effects.start({operationId:t.operationId,effectKind:"interaction.respond",request:t,serializationKey:`run:${t.binding.runId}:interaction`,metadata:{runId:t.binding.runId,interactionId:t.binding.interactionId,owner:e.owner}},{dispatch:async()=>yE(e.execution,t,e.timeoutMs),reconcile:async()=>yE(e.execution,t,e.timeoutMs)}).completion;return await e.whenDurable(),o.status==="acknowledged"||o.status==="terminal"?{operationId:t.operationId,outcome:o.status==="terminal"?"already-applied":"accepted",...o.detail===void 0?{}:{detail:o.detail}}:o.status==="failed"?{operationId:t.operationId,outcome:"rejected",detail:"INTERACTION_RESPONSE_REJECTED"}:{operationId:t.operationId,outcome:"unknown",detail:Dy(o.detail,"INTERACTION_RESPONSE_UNKNOWN")}}async function yE(e,t,n){if(!e.respondInteraction)return{status:"unknown",detail:"INTERACTION_RESPONSE_UNAVAILABLE"};try{let o=new AbortController,r=await $P(e.respondInteraction({command:t,signal:o.signal}),o,t.operationId,n);return r.outcome==="accepted"||r.outcome==="already-applied"?{status:"acknowledged",detail:r.detail??"INTERACTION_RESPONSE_ACCEPTED"}:r.outcome==="rejected"?{status:"failed",detail:Dy(r.detail,"INTERACTION_RESPONSE_REJECTED")}:{status:"unknown",detail:Dy(r.detail,"INTERACTION_RESPONSE_UNKNOWN")}}catch{return{status:"unknown",detail:"INTERACTION_RESPONSE_UNKNOWN"}}}async function $P(e,t,n,o){let r,i=new Promise(a=>{r=setTimeout(()=>{t.abort(new Error("Interaction response acknowledgement deadline elapsed")),a({operationId:n,outcome:"unknown",detail:"INTERACTION_RESPONSE_TIMEOUT"})},o)});try{return await Promise.race([e,i])}finally{r!==void 0&&clearTimeout(r)}}function Dy(e,t){return e!==void 0&&/^INTERACTION_[A-Z0-9_]{1,96}$/u.test(e)?e:t}function vE(e,t){let n,o;for(let r of e){let i=r.event;if(!(i.kind!=="run.interaction.response.requested"&&i.kind!=="run.interaction.responded"||i.operationId!==t))if(i.kind==="run.interaction.response.requested"){if(n!==void 0&&(n.runId!==i.runId||n.interactionId!==i.interactionId))return{conflict:`Operation ${t} was used for two interactions`};n=i}else{if(o!==void 0&&(o.runId!==i.runId||o.interactionId!==i.interactionId))return{conflict:`Operation ${t} was used for two interactions`};o=i}}return{...n===void 0?{}:{requested:n},...o===void 0?{}:{responded:o}}}function IE(e,t,n){for(let o=e.length-1;o>=0;o-=1){let r=e[o]?.event;if(r?.kind==="run.interaction.response.requested"&&r.runId===t&&r.interactionId===n)return r.operationId}}function jy(e,t,n){if(e.outcome!==t.response.outcome||(e.dataDigest??void 0)!==(t.dataDigest??void 0))throw new m("OPERATION_CONFLICT",`Operation ${n} has different input`)}function Uy(e,t,n,o){if(e.runId!==t||e.interactionId!==n)throw new m("OPERATION_CONFLICT",`Operation ${o} was used for another interaction`)}function bE(e,t,n){if(e.outcome!==t.response.outcome||(e.dataDigest??void 0)!==(t.dataDigest??void 0)||e.containsSecret!==t.containsSecret)throw new m("OPERATION_CONFLICT",`Operation ${n} has different input`)}function wE(e,t){let n=e.currentState().runs.find(o=>o.id===t);if(!n)throw new m("UNKNOWN_RUN",`Run ${t} is unknown`);return n}function Tn(e){return e==="completed"||e==="failed"||e==="aborted"||e==="cancelled"||e==="blocked"||e==="expired"||e==="unknown"}async function CP(e,t){let n=e.ledger.operationForRun(t);return n&&await n.completion,structuredClone(e.currentState())}async function RE(e){await Promise.resolve();let t=e.currentState().activeRunId;if(!t)return structuredClone(e.currentState());let n=e.ledger.controlForRun(t);return n&&(await n.acknowledgement,!e.currentState().activeRunId)||await CP(e,t),structuredClone(e.currentState())}async function SE(e){let t=wE(e.state,e.runId),n=t.interactions.find(v=>v.request.id===e.interactionId);if(!n)throw new m("UNKNOWN_INTERACTION","The interaction is no longer available");let o=vr(n.request,e.response),r=Iv(n.responseBinding,e.operationId,o.response),i=Ny({effectKind:"interaction.respond",request:r});OP(e,t,n.responseBinding);let a=vE(e.events(),e.operationId);if(a.conflict)throw new m("OPERATION_CONFLICT",a.conflict);a.requested!==void 0&&Uy(a.requested,e.runId,e.interactionId,e.operationId),a.responded!==void 0&&Uy(a.responded,e.runId,e.interactionId,e.operationId);let s=e.ledger.getInteraction(e.operationId);if(s){if(s.digest!==i)throw new m("OPERATION_CONFLICT",`Operation ${e.operationId} has different input`);return{operationId:e.operationId,runId:e.runId,interactionId:e.interactionId,replayed:!0,acknowledgement:{operationId:e.operationId,outcome:"already-applied"},completion:s.completion}}let d=e.effects.current(e.operationId);if(d&&d.requestDigest!==i)throw new m("OPERATION_CONFLICT",`Operation ${e.operationId} has different input`);if(a.responded!==void 0){jy(a.responded,o,e.operationId);let v=Promise.resolve(e.state.currentState());return e.ledger.setInteraction(e.operationId,{digest:i,completion:v}),{operationId:e.operationId,runId:e.runId,interactionId:e.interactionId,replayed:!0,acknowledgement:a.responded.outcome==="unknown"?{operationId:e.operationId,outcome:"unknown",detail:a.responded.detail??"INTERACTION_RESPONSE_REQUIRES_RECONCILIATION"}:{operationId:e.operationId,outcome:"already-applied"},completion:v}}if(e.execution.respondInteraction===void 0)throw new m("CAPABILITY_UNAVAILABLE","The current runtime cannot acknowledge interaction responses");let c=n.responseOperation;c!==void 0&&c.operationId===e.operationId&&bE(c,o,e.operationId);let u=a.requested!==void 0||c?.operationId===e.operationId;a.requested!==void 0&&jy(a.requested,o,e.operationId),PP(e,t,n.status);let l=c?.operationId??IE(e.events(),e.runId,e.interactionId);if(l!==void 0&&l!==e.operationId)throw new m("INTERACTION_RESPONSE_IN_PROGRESS",`Interaction ${e.interactionId} already has a response operation`);u||await e.commitAndWait({kind:"run.interaction.response.requested",runId:e.runId,interactionId:e.interactionId,operationId:e.operationId,outcome:o.response.outcome,...o.dataDigest===void 0?{}:{dataDigest:o.dataDigest},containsSecret:o.containsSecret,...e.automationRule===void 0?{}:{automationRule:e.automationRule}});let f=hE({effects:e.effects,execution:e.execution,request:r,owner:e.owner,timeoutMs:e.responseTimeoutMs,whenDurable:e.whenDurable}),g=f.then(async v=>(await e.commitAndWait({kind:"run.interaction.responded",runId:e.runId,interactionId:e.interactionId,operationId:e.operationId,outcome:v.outcome==="accepted"||v.outcome==="already-applied"?o.response.outcome:"unknown",...o.dataDigest===void 0?{}:{dataDigest:o.dataDigest},containsSecret:o.containsSecret,...v.detail===void 0?{}:{detail:v.detail}}),(v.outcome==="accepted"||v.outcome==="already-applied")&&!o.containsSecret&&await e.commitAndWait({kind:"feedback.decision.recorded",decision:jP(e,t,o.response,o.dataDigest)}),structuredClone(e.state.currentState())));e.ledger.setInteraction(e.operationId,{digest:i,completion:g});let p=await f;return{operationId:e.operationId,runId:e.runId,interactionId:e.interactionId,replayed:d!==void 0||u,acknowledgement:p,completion:g}}function OP(e,t,n){if(n.runId!==e.runId||n.interactionId!==e.interactionId||t.providerSessionId!==void 0&&n.sessionId!==t.providerSessionId||t.environmentId!==void 0&&n.environmentId!==t.environmentId||t.receipt.provider!==void 0&&n.provider!==t.receipt.provider||e.providerSessionId!==void 0&&n.sessionId!==e.providerSessionId)throw new m("INTERACTION_BINDING_MISMATCH","The response belongs to a different run, provider session, or environment")}function PP(e,t,n){if(DP(e,t))throw new m("INTERACTION_EXPIRED","The interaction response window has expired");if(n!=="pending"&&n!=="responding")throw new m("INTERACTION_STALE",`The interaction is already ${n}`);if(t.status==="unknown"||t.status==="expired"||t.status==="cancelled")throw new m("INTERACTION_STALE","The run can no longer accept an interaction response")}function NP(e,t,n){let o=n.request.timeoutMs;if(o===void 0)return!1;let r=n.source.occurredAt??t.startedAt,i=e.now?.()??new Date().toISOString(),a=Date.parse(r),s=Date.parse(i);return Number.isFinite(a)&&Number.isFinite(s)&&s>=a+o}function DP(e,t){let n=t.interactions.find(o=>o.request.id===e.interactionId);return n===void 0?!1:NP(e,t,n)}function jP(e,t,n,o){return{id:ra(`feedback-${R(e.operationId).slice(0,48)}`),conversationId:t.conversationId,category:n.outcome==="accepted"?"approval":"rejection",chosenOption:UP(n),...o===void 0?{}:{feedback:`answer-digest:${o}`},automated:e.automationRule!==void 0,createdAt:e.now?.()??new Date().toISOString()}}function UP(e){if(e.outcome!=="accepted")return e.outcome;let t=e.data?.grant;if(Array.isArray(t)&&t.length===1){let n=t[0];if(n==="allow_once")return"allow_once";if(n==="allow_session")return"allow_session";if(n==="allow_always")return"allow_always";if(n==="deny")return"deny"}return"accepted"}var LP=5e3,Rc=class{automation;#e;#t=new pc;#n;constructor(t){this.#e=t,this.automation=lE({state:t.state,events:t.events,commitAndWait:t.commitAndWait,now:t.now,respond:n=>this.respond(n),reconcilePending:()=>this.reconcile(),canRespond:()=>this.canRespond()}),this.#n=new bc({state:t.state,events:t.events,apply:n=>this.automation.apply(n)})}canRespond(){return this.#e.execution.respondInteraction!==void 0}acceptRuntimeEvent(t,n){if(!n.accepted||t.event.type!=="interaction"||!this.canRespond())return;let o=t.event.request.id,r=this.#e.state().runs.find(i=>i.id===t.runId)?.interactions.find(i=>i.request.id===o);r!==void 0&&this.#n.schedule(r)}respond(t){return this.#t.run(`${t.runId}\0${t.interactionId}`,()=>{let n=this.#e.ports();return SE({operationId:Mn(t.operationId,"respond-interaction"),runId:t.runId,interactionId:t.interactionId,response:t.response,...t.automationRule===void 0?{}:{automationRule:t.automationRule},state:n.state,events:this.#e.events,commitAndWait:n.journal.commitAndWait,ledger:this.#e.ledger,effects:this.#e.effects,execution:this.#e.execution,owner:this.#e.owner,responseTimeoutMs:this.#e.responseTimeoutMs??LP,whenDurable:this.#e.whenDurable})})}reconcile(){return this.canRespond()?this.#n.reconcile():Promise.resolve()}async whenIdle(){await this.#n.whenIdle(),await this.#t.whenIdle()}};var Sc=class{#e=!0;#t=!1;#n=new Map;#r=new Map;#o;acceptsAdmission(){return this.#e}isClosed(){return this.#t}registerAdmission(t){let n=new AbortController,o,r={runId:t,signal:n.signal,release:()=>{this.#r.get(t)===o&&this.#r.delete(t)}};return o={controller:n,registration:r},this.#e?this.#r.set(t,o):n.abort(new Error("Application is closing")),r}track(t){this.#t||this.#n.has(t.runId)||(this.#n.set(t.runId,t.completion),t.completion.then(()=>this.#n.delete(t.runId),()=>this.#n.delete(t.runId)))}activeOperations(){return[...this.#n.entries()].map(([t,n])=>({runId:t,completion:n}))}close(t){return this.#o!==void 0?this.#o:(this.#e=!1,this.#i(),this.#o=Promise.resolve().then(t).finally(()=>{this.#t=!0,this.#n.clear()}),this.#o)}async settleActive(t){this.#i();let n=Date.now()+Math.max(0,t.timeoutMs),o=[...new Set([...t.runIds,...this.#n.keys()])];await Ly(Promise.allSettled(o.map(d=>t.cancel(d))),n);let r=this.activeOperations();if(r.length===0)return[];let i=new Set(r.map(d=>d.runId)),a=r.map(d=>d.completion.then(()=>i.delete(d.runId),()=>i.delete(d.runId)));await Ly(Promise.all(a).then(()=>{}),n);let s=[...i];return await Ly(Promise.allSettled(s.map(d=>t.markUnknown(d))).then(()=>{}),n),s}#i(){for(let t of this.#r.values())t.controller.signal.aborted||t.controller.abort(new Error("Application is closing"))}};async function Ly(e,t){let n=Math.max(0,t-Date.now());if(n===0)return;let o,r=new Promise(i=>{o=setTimeout(()=>i(void 0),n)});try{return await Promise.race([e,r])}finally{o!==void 0&&clearTimeout(o)}}function EE(e,t){return Ce(e,t)}function Me(e,t=""){return typeof e=="string"?me(e):t}function Xt(e){return aa(e,void 0,{maxDepth:6,maxItems:128,maxBytes:32*1024})}function MP(e,t){let n=gc(e);if(n===void 0||n.binding.runId!==t)return My(t);let o=Xt(rE(n));if(o===null||typeof o!="object"||Array.isArray(o))return My(t);try{return{request:wy({...o,binding:{...n.binding}}),responseBinding:Ry(n)}}catch{return My(t)}}function My(e){let t=U(e)??"run-invalid",n=`${t}:interaction:invalid`,o=wy({id:n,kind:"provider.invalid.interaction",title:"Provider interaction unavailable",answerSpec:{fields:[]},allowedOutcomes:["cancelled"],onTimeout:"fail",binding:{runId:t,provider:"braid",environmentId:"environment-invalid",sessionId:"session-invalid",executionId:t,interactionId:n}});return{request:o,responseBinding:Ry(o)}}function zP(e){let t=e?.tokenUsage&&typeof e.tokenUsage=="object"?e.tokenUsage:{},n=_e(t.input)??_e(t.inputTokens),o=_e(t.output)??_e(t.outputTokens),r=n??0,i=o??0,a=e?.tokensKnown!==!1&&n!==void 0&&o!==void 0,s=typeof e?.reasoningTokens=="number"?e.reasoningTokens:typeof t.reasoningTokens=="number"?t.reasoningTokens:void 0,d=_e(typeof e?.costUsd=="number"?e.costUsd:t.cost),c=e?.usdKnown!==!1&&d!==void 0,u=_e(e?.estimatedCostUsd),l=_E(e?.promptCache),f=_e(e?.latencyMs),g=qP(e?.llmCalls),p=U(e?.model);return{input:r,output:i,...g===void 0?{}:{calls:g},...a?{}:{tokensKnown:!1},...s===void 0?{}:{reasoning:s},...d===void 0?{}:{costUsd:d},...c?{}:{usdKnown:!1},...u===void 0?{}:{estimatedCostUsd:u},...l===void 0?{}:{promptCache:l},...f===void 0?{}:{latencyMs:f},...p===void 0?{}:{model:p}}}function BP(e){let t=_e(e.costUsd),n=e.tokensKnown!==!1&&e.tokensIn!==void 0&&e.tokensOut!==void 0,o=e.usdKnown!==!1&&t!==void 0,r=_e(e.estimatedCostUsd),i=_E(e.promptCache),a=_e(e.latencyMs),s=U(e.model);return{input:an(e.tokensIn),output:an(e.tokensOut),calls:1,...n?{}:{tokensKnown:!1},...t===void 0?{}:{costUsd:t},...o?{}:{usdKnown:!1},...r===void 0?{}:{estimatedCostUsd:r},...i===void 0?{}:{promptCache:i},...a===void 0?{}:{latencyMs:a},...s===void 0?{}:{model:s}}}function qP(e){return typeof e=="number"&&Number.isSafeInteger(e)&&e>=0?e:void 0}function _E(e){if(e===null||typeof e!="object"||Array.isArray(e))return;let t={};for(let[n,o]of Object.entries(e).slice(0,32)){let r=U(n),i=_e(o);r!==void 0&&i!==void 0&&(t[r]=i)}return Object.keys(t).length===0?void 0:Object.freeze(t)}function xE(e,t,n,o){let r="timestamp"in n&&typeof n.timestamp=="string"?n.timestamp:void 0;return zy({eventId:U(e)??`event-${t}`,providerSequence:t,...r===void 0?{}:{occurredAt:r},receivedAt:o},t)}function zy(e,t){let n=e.cursor===void 0?void 0:U(e.cursor),o=e.occurredAt!==void 0&&Y(e.occurredAt)?e.occurredAt:void 0,r=e.receivedAt!==void 0&&Y(e.receivedAt)?e.receivedAt:void 0;return{eventId:U(e.eventId)??`event-${t}`,providerSequence:Number.isSafeInteger(e.providerSequence)&&e.providerSequence>0?e.providerSequence:t,...n===void 0?{}:{cursor:n},...o===void 0?{}:{occurredAt:o},...r===void 0?{}:{receivedAt:r}}}function FP(e){switch(e){case"completed":case"failed":case"aborted":case"blocked":case"cancelled":case"expired":case"unknown":return e;default:return"failed"}}function VP(e,t){let n={eventId:t.eventId,sequence:t.providerSequence,...t.cursor===void 0?{}:{cursor:t.cursor},...t.occurredAt===void 0?{}:{occurredAt:t.occurredAt}};switch(e.type){case"text":return{id:U(e.id)??"part-text",kind:"text",text:Me(e.text),source:n};case"reasoning":return{id:U(e.id)??"part-reasoning",kind:"reasoning",text:Me(e.text),source:n};case"tool":{let o=e.state;return{id:U(e.id)??"part-tool",kind:o.status==="completed"||o.status==="error"||o.status==="failed"?"tool-result":"tool-call",toolName:U(e.tool)??"tool",...e.callID===void 0?{}:{callId:U(e.callID)??"call"},status:o.status,input:Xt(o.input),..."output"in o&&o.output!==void 0?{result:Xt(o.output)}:{},..."error"in o&&o.error!==void 0?{error:Ce(o.error,"RUNTIME_TOOL_ERROR")}:{},source:n}}case"file":return{id:U(e.id)??"part-artifact",kind:"artifact",...e.filename===void 0?{}:{title:Me(e.filename)},...e.mediaType===void 0?{}:{mimeType:Me(e.mediaType)},...e.url===void 0?{}:{uri:Me(e.url)},source:n};case"subtask":return{id:U(e.id)??"part-subtask",kind:"system",title:Me(e.description),text:Me(e.prompt),metadata:{agent:U(e.agent)??"agent"},source:n};default:return e}}function HP(e){switch(e){case"started":return"starting";case"processing":return"streaming";case"completed":return"running";case"failed":return"failed";default:return e}}function kE(e,t,n){let o=t.type==="raw"?{type:"raw",event:{redacted:!0}}:t.type==="unknown"?{type:"unknown",payload:{redacted:!0}}:t;switch(t.type){case"text_delta":return{kind:"run.text.delta",runId:e,text:Me(t.text),provider:n};case"reasoning_delta":return{kind:"run.reasoning.delta",runId:e,partId:`${e}:reasoning`,text:Me(t.text),provider:n};case"tool_call":return{kind:"run.tool.call",runId:e,partId:U(t.toolCallId??`${e}:tool:${n.eventId}`)??`${e}:tool`,toolName:U(t.toolName)??"tool",...t.toolCallId===void 0?{}:{callId:U(t.toolCallId)??"call"},...t.args===void 0?{}:{input:Xt(t.args)},provider:n};case"tool_result":return{kind:"run.tool.result",runId:e,partId:U(t.toolCallId??`${e}:tool:${n.eventId}`)??`${e}:tool`,toolName:U(t.toolName)??"tool",...t.toolCallId===void 0?{}:{callId:U(t.toolCallId)??"call"},...t.result===void 0?{}:{result:Xt(t.result)},provider:n};case"llm_call":return{kind:"run.usage",runId:e,usage:BP(t),provider:n};case"artifact":return{kind:"run.artifact",runId:e,artifactId:U(t.artifactId)??`${e}:artifact`,...t.name===void 0?{}:{name:Me(t.name)},...t.mimeType===void 0?{}:{mimeType:Me(t.mimeType)},...t.uri===void 0?{}:{uri:Me(t.uri)},...t.metadata===void 0?{}:{metadata:Xt(t.metadata)},provider:n};case"proposal_created":return{kind:"run.proposal",runId:e,proposalId:U(t.proposalId)??`${e}:proposal`,title:Me(t.title),...t.status===void 0?{}:{status:t.status},provider:n};case"backend_error":return{kind:"run.error",runId:e,message:Ce(t.message,"RUNTIME_BACKEND_ERROR"),recoverable:t.recoverable,provider:n};case"final":return{kind:"run.finished",runId:e,status:FP(t.status),finalText:Me(t.text),usage:zP(t.metadata),...t.error===void 0?{}:{error:Dn(t.error.message,"RUNTIME_FINAL_ERROR")},...t.reason===void 0?{}:{reason:Mv(t.reason)??Ce(t.reason,"RUNTIME_FINAL_REASON")},provider:n};case"message.part.updated":{let r=VP(t.part,n);return{kind:"run.part.updated",runId:e,part:r,...t.delta===void 0?{}:{delta:Me(t.delta)},provider:n}}case"interaction":return{kind:"run.interaction",runId:e,...MP(t.request,e),provider:n};case"interaction.cancel":return{kind:"run.interaction.cancelled",runId:e,interactionId:U(t.id)??`${e}:interaction`,...t.reason===void 0?{}:{reason:Me(t.reason)},provider:n};case"warning":return{kind:"run.warning",runId:e,code:Ce(t.code,"RUNTIME_WARNING"),message:Ce(t.message,"RUNTIME_WARNING"),provider:n};case"status":return{kind:"run.status.changed",runId:e,status:HP(t.status),...t.detail===void 0?{}:{detail:Ce(t.detail,"RUNTIME_STATUS")},provider:n};case"braid.execution.observed":return{kind:"run.environment.observed",runId:e,observation:Xt(t.observation),...t.controlRef===void 0?{}:{controlRef:structuredClone(t.controlRef)},provider:n};case"unknown":return{kind:"run.provider.event",runId:e,envelope:{runId:e,eventId:n.eventId,sequence:n.providerSequence,receivedAt:n.receivedAt??new Date().toISOString(),event:Xt(o)},provider:n};default:return{kind:"run.provider.event",runId:e,envelope:{runId:e,eventId:n.eventId,sequence:n.providerSequence,...n.cursor===void 0?{}:{cursor:n.cursor},...n.occurredAt===void 0?{}:{occurredAt:n.occurredAt},receivedAt:n.receivedAt??new Date().toISOString(),event:Xt(o)},provider:n}}}function AE(e,t,n){return t.type==="message.part.updated"?`${e}:part:${t.part.id}:${n}`:t.type==="session.updated"?`${e}:session:${t.sessionId}:${n}`:t.type==="interaction"?`${e}:interaction:${t.request.id}`:t.type==="interaction.cancel"?`${e}:interaction-cancel:${t.id}`:`${e}:runtime:${n}`}function CE(e,t){if(!U(t.eventId)||!Number.isSafeInteger(t.sequence)||t.sequence<1||t.sequence>1e9||!Y(t.receivedAt)||t.cursor!==void 0&&!U(t.cursor)||t.occurredAt!==void 0&&!Y(t.occurredAt))throw new m("INVALID_PROVIDER_EVENT","Provider event identity or timestamp is invalid");let n=`${t.runId}:${t.eventId}`;if(e.ledger.hasProviderEvent(n))return{accepted:!1,duplicate:!0};let o=e.findRun(t.runId),r=o.lastProviderSequence+1;if(t.sequence<r)return e.currentState().missingHistory.some(a=>a.runId===o.id&&t.sequence>=a.fromSequence&&t.sequence<=(a.toSequence??a.fromSequence))?TE(e.commitAndWait($E(t)),{accepted:!0,duplicate:!1}):{accepted:!1,duplicate:!0};if(t.sequence>r){let i={from:r,to:t.sequence-1},a=[];return e.currentState().missingHistory.some(s=>s.runId===o.id&&s.fromSequence<=i.to&&(s.toSequence??s.fromSequence)>=i.from)||a.push(e.commitAndWait({kind:"history.missing",range:{runId:o.id,fromSequence:i.from,toSequence:i.to,reason:"gap"}})),o.status!=="reconnecting"&&a.push(e.commitAndWait({kind:"run.reconnecting",runId:o.id,...o.lastCursor===void 0?{}:{after:o.lastCursor}})),ZP(a,{accepted:!1,duplicate:!1,sequenceGap:i})}return TE(e.commitAndWait($E(t)),{accepted:!0,duplicate:!1})}function TE(e,t){return OE(e)?e.then(()=>t):t}function ZP(e,t){let n=e.filter(OE);return n.length===0?t:Promise.all(n).then(()=>t)}function OE(e){return typeof e=="object"&&e!==null&&"then"in e&&typeof e.then=="function"}function $E(e){let t=zy({eventId:e.eventId,providerSequence:e.sequence,...e.cursor===void 0?{}:{cursor:e.cursor},...e.occurredAt===void 0?{}:{occurredAt:e.occurredAt},receivedAt:e.receivedAt},e.sequence);return kE(e.runId,e.event,t)}function By(e){return typeof e=="string"?me(e):""}function Dt(e,t){return Ce(e,t)}function qy(e,t){if(e===void 0)return t;let n=_e(e.reasoning),o=typeof e.calls=="number"&&Number.isSafeInteger(e.calls)&&e.calls>=0?e.calls:void 0,r=_e(e.costUsd),i=_e(e.estimatedCostUsd),a=_e(e.latencyMs),s=Object.fromEntries(Object.entries(e.promptCache??{}).filter(([,c])=>Number.isFinite(c)&&c>=0)),d=U(e.model);return{input:an(e.input),output:an(e.output),...o===void 0?{}:{calls:o},...e.tokensKnown===!1?{tokensKnown:!1}:{},...n===void 0?{}:{reasoning:n},...r===void 0?{}:{costUsd:r},...e.usdKnown===!1?{usdKnown:!1}:{},...i===void 0?{}:{estimatedCostUsd:i},...Object.keys(s).length===0?{}:{promptCache:Object.freeze(s)},...a===void 0?{}:{latencyMs:a},...d===void 0?{}:{model:d}}}async function ur(e,t){let n=e.findRun(t.runId);if(e.isTerminal(n.status)&&n.status!=="unknown")return structuredClone(e.currentState());if(!n.capabilities.streaming.replay||!n.capabilities.events.cursor||!e.execution.reconnect)throw new m("CAPABILITY_UNAVAILABLE","The selected execution path does not report replay with a stable cursor");await e.commitAndWait({kind:"run.reconnecting",runId:n.id,...n.lastCursor===void 0?{}:{after:n.lastCursor}});let o=e.ledger.getAbort(n.id)??new AbortController;e.ledger.setAbort(n.id,o),e.ledger.clearDetached(n.id);try{let r=!1;for await(let i of e.execution.reconnect({runId:n.id,...n.lastCursor===void 0?{}:{after:n.lastCursor},afterSequence:n.lastProviderSequence,...n.providerSessionId===void 0?{}:{providerSessionId:n.providerSessionId},...n.controlRef===void 0?{}:{controlRef:n.controlRef},signal:o.signal}))(await e.ingestRuntimeEvent(i)).accepted&&i.event.type==="final"&&(r=!0);!r&&!e.isTerminal(e.findRun(n.id).status)&&await Fy(e,{runId:n.id,operationId:t.operationId})}catch(r){e.isTerminal(e.findRun(n.id).status)||await e.commitAndWait({kind:"run.unknown",runId:n.id,detail:Dt(r instanceof Error?r.message:r,"RUNTIME_RECONCILIATION_ERROR")})}return structuredClone(e.currentState())}async function Fy(e,t){let n=e.findRun(t.runId);if(!n.capabilities.controls.status||!e.execution.status)return e.isTerminal(n.status)||await e.commitAndWait({kind:"run.unknown",runId:n.id,detail:"The execution path cannot reconcile provider state"}),structuredClone(e.currentState());let o;try{o=await e.execution.status({runId:n.id,...n.providerSessionId===void 0?{}:{providerSessionId:n.providerSessionId},...n.controlRef===void 0?{}:{controlRef:n.controlRef}})}catch(i){return e.isTerminal(n.status)||await e.commitAndWait({kind:"run.unknown",runId:n.id,detail:Dt(i instanceof Error?i.message:i,"RUNTIME_STATUS_ERROR")}),structuredClone(e.currentState())}if(!o)return(!e.isTerminal(n.status)||n.status==="unknown")&&await e.commitAndWait({kind:"run.unknown",runId:n.id,detail:"The provider returned no run record"}),structuredClone(e.currentState());if(o.runId!==n.id||n.providerSessionId!==void 0&&o.sessionId!==n.providerSessionId)return(!e.isTerminal(n.status)||n.status==="unknown")&&await e.commitAndWait({kind:"run.unknown",runId:n.id,detail:"Provider reconciliation returned no matching run identity"}),structuredClone(e.currentState());if(e.isTerminal(n.status)&&n.status!=="unknown")return structuredClone(e.currentState());await e.commitAndWait({kind:"run.reconnecting",runId:n.id,...n.lastCursor===void 0?{}:{after:n.lastCursor}});let r=e.findRun(n.id).status;return o.status==="unknown"?(!e.isTerminal(n.status)||n.status==="unknown")&&await e.commitAndWait({kind:"run.unknown",runId:n.id,detail:Dt(o.detail,"RUNTIME_PROVIDER_STATE_UNKNOWN")}):e.isTerminal(o.status)?n.status==="unknown"?(await e.commitAndWait({kind:"run.reconciled",runId:n.id,status:o.status,from:r,to:o.status,evidence:R({runId:n.id,sessionId:o.sessionId??null,cursor:o.cursor??null,status:o.status}),...o.detail===void 0?{}:{detail:Dt(o.detail,"RUNTIME_RECONCILIATION_STATUS")}}),await e.commitAndWait({kind:"run.finished",runId:n.id,status:o.status,finalText:By(o.finalText),usage:qy(o.usage,{input:n.inputTokens,output:n.outputTokens}),...o.error===void 0?{}:{error:Dt(o.error,"RUNTIME_RECONCILIATION_ERROR")},...o.detail===void 0?{}:{reason:Dt(o.detail,"RUNTIME_RECONCILIATION_STATUS")}})):await e.commitAndWait({kind:"run.finished",runId:n.id,status:o.status,finalText:By(o.finalText),usage:qy(o.usage,{input:n.inputTokens,output:n.outputTokens}),...o.error===void 0?{}:{error:Dt(o.error,"RUNTIME_RECONCILIATION_ERROR")},...o.detail===void 0?{}:{reason:Dt(o.detail,"RUNTIME_RECONCILIATION_STATUS")}}):o.status!==r&&await e.commitAndWait({kind:"run.reconciled",runId:n.id,status:o.status,from:r,to:o.status,evidence:R({runId:n.id,sessionId:o.sessionId??null,cursor:o.cursor??null,status:o.status}),...o.detail===void 0?{}:{detail:Dt(o.detail,"RUNTIME_RECONCILIATION_STATUS")}}),structuredClone(e.currentState())}function PE(e){let t={...e.state,...e.journal,execution:e.execution},n={...e.state,...e.journal},o={...e.state,...e.journal,execution:e.execution,ledger:e.ledger,executeControl:e.executeControl,currentEffect:l=>e.effects.current(l)},r={...e.state,...e.journal,ledger:e.ledger},a={...r,ingestRuntimeEvent:l=>{let f=CE(r,l);return KP(f)?f.then(g=>(e.afterRuntimeEvent?.(l,g),g)):(e.afterRuntimeEvent?.(l,f),f)}},s={...e.state,...e.journal,execution:e.execution,ledger:e.ledger,ingestRuntimeEvent:a.ingestRuntimeEvent},d={...e.state,ledger:e.ledger},c={...e.state,...e.journal,flush:e.flush,storageFailure:e.storageFailure,clock:e.clock,execution:e.execution,ledger:e.ledger,ingestRuntimeEvent:a.ingestRuntimeEvent,reconnectRun:l=>ur(s,l),send:e.send},u={...e.state,...e.journal,clock:e.clock,ids:e.ids,execution:e.execution,ledger:e.ledger,admitPersistedSend:e.admitPersistedSend,fingerprint:e.fingerprint,startRun:(l,f,g,p)=>e.startRun(c,l,f,g,p)};return{state:e.state,journal:e.journal,restart:t,queue:n,control:o,ingestion:a,replay:s,status:d,executionRun:c,admission:u,asyncAdmission:{...u,flush:e.flush},nativeContinuation:{...e.state,execution:e.execution,send:e.send}}}function KP(e){return"then"in e}var Mi="Cancelled by user";function zi(e,t,n){return R({control:"cancel",runId:e,providerSessionId:n??null,reason:t,text:null,cursor:null})}function Ec(){return R({command:"shutdown"})}var lr="run.execute";function $n(e){return{conversationId:e.conversationId,branchId:e.branchId,text:e.text,profile:e.profile,connectionId:e.connectionId??null,...e.workspaceRoot===void 0?{}:{workspaceRoot:e.workspaceRoot},...e.sessionId===void 0?{}:{sessionId:e.sessionId},...e.contextPlan===void 0?{}:{contextPlan:e.contextPlan},...e.contextTransfer===void 0?{}:{contextTransfer:e.contextTransfer},...e.nativeContextBoundaryProof===void 0?{}:{nativeContextBoundaryProof:e.nativeContextBoundaryProof}}}function Vy(e,t,n,o){return R({effectKind:lr,request:{conversationId:t,branchId:n,text:e.text,profile:Te(e.profile),connectionId:e.connectionId??null,...e.sessionId===void 0?{}:{sessionId:e.sessionId},...o===void 0?{}:{contextPlan:o}}})}function NE(e){if(e.conversationId!==e.state.conversationId||e.branchId!==e.state.branchId)return;let t=e.state.runs.filter(i=>i.conversationId===e.conversationId&&i.branchId===e.branchId).at(-1);if(t===void 0||t.status!=="completed"||!t.complete||t.providerSessionId===void 0||!t.capabilities.sessions.continue)return;let n=e.state.messages.at(-1);if(n===void 0||n.conversationId!==e.conversationId||n.branchId!==e.branchId||n.runId!==t.id||!n.complete||(t.connectionId??t.receipt.requested.connectionId??void 0)!==e.connectionId)return;let r=$e(e.profile);if(t.receipt.profileDigest===r)return t.providerSessionId}function DE(e){return e.state.messages.some(t=>t.conversationId===e.conversationId&&t.branchId===e.branchId)}function vo(e,t){if(!t.nativeContextBoundaryProof){if(t.sessionId!==void 0&&t.sessionSource!=="continuation")throw new m("NATIVE_CONTINUATION_UNVERIFIED","A caller-supplied provider session requires a valid native context boundary proof");return}let n=t.nativeContextBoundaryProof,o=e.currentState().runs.find(a=>a.id===n.runId);if(!o||!t.sessionId||o.providerSessionId!==n.providerSessionId||t.sessionId!==n.providerSessionId||!o.capabilities.sessions.continue)throw new m("NATIVE_CONTINUATION_UNVERIFIED","The native continuation proof is not bound to a recorded provider session");let r=e.currentState(),i=o.connectionId??o.receipt.requested.connectionId;if(o.conversationId!==r.conversationId||o.branchId!==r.branchId||i!==t.connectionId||o.receipt.profileDigest!==_c(t.profile))throw new m("NATIVE_CONTINUATION_UNVERIFIED","The native continuation proof is bound to a different profile, connection, or branch");if(o.lastCursor!==void 0&&n.boundary!==o.lastCursor)throw new m("NATIVE_BOUNDARY_MISMATCH","The native continuation proof does not end at the recorded Braid boundary")}function Hy(e){if(e.contextPlan&&e.contextPlan.digest!==R({...e.contextPlan,digest:void 0}))throw new m("CONTEXT_DIGEST_INVALID","The portable context plan digest is invalid");if(e.contextTransfer&&e.contextPlan&&e.contextTransfer.planDigest!==e.contextPlan.digest)throw new m("CONTEXT_RECEIPT_CONFLICT","The context transfer receipt does not match the accepted plan")}function Zy(e,t,n){if(!(n?.materializationReceipt?.portableContext!=="unavailable"||t.sessionId!==void 0&&t.contextBoundary===void 0||!DE({state:e,conversationId:e.conversationId,branchId:e.branchId})))throw new m("CONTEXT_TRANSFER_UNAVAILABLE","This provider cannot transfer the existing branch history across its current environment; select a supported continuation or start a new branch")}function Ky(e){try{Te(e)}catch(t){throw new m("PROFILE_INVALID",t instanceof Error?t.message:"The selected profile is invalid")}}function _c(e){return $e(e)}function Wy(e,t,n,o){if(t){if(t.requestDigest!==void 0&&t.requestDigest!==n)throw new m("ADMISSION_DIGEST_MISMATCH","Provider request digest did not match admission");if(t.profileDigest!==void 0&&t.profileDigest!==o)throw new m("ADMISSION_DIGEST_MISMATCH","Provider profile digest did not match admission");if(t.capabilitiesDigest!==void 0&&t.capabilitiesDigest!==e.capabilitiesDigest)throw new m("ADMISSION_DIGEST_MISMATCH","Provider capability digest did not match admission");if(t.materializationDigest!==void 0&&t.materializationDigest!==e.materializationDigest)throw new m("ADMISSION_DIGEST_MISMATCH","Provider materialization digest did not match admission")}}function jE(e,t){let n=e.execution.admit?.(t);if(qE(n))throw new m("ASYNC_ADMISSION_REQUIRED","Run admission must be awaited before dispatch");return n}async function UE(e,t){return e.execution.admit?await e.execution.admit(t):void 0}function LE(e,t){let n=e.execution.capabilities,o=typeof n=="function"?n(t):n===void 0?ot:BE(n);if(qE(o))throw new m("ASYNC_ADMISSION_REQUIRED","Provider capabilities must be awaited before dispatch");return o?(zE(o),o):ot}async function ME(e,t){let n=e.execution.capabilities,o=typeof n=="function"?await n(t):n===void 0?ot:BE(n);return o?(zE(o),o):ot}function zE(e){if(typeof e!="object"||e===null||typeof e.streaming?.live!="boolean"||typeof e.streaming?.replay!="boolean"||typeof e.controls?.cancel!="boolean"||typeof e.controls?.queue!="boolean"||typeof e.events?.sequence!="boolean")throw new m("ADMISSION_UNAVAILABLE","Provider capabilities were malformed")}function BE(e){return{...br,controls:{...br.controls,cancel:e.cancel}}}function qE(e){return!!(e&&typeof e.then=="function")}function Bi(e,t,n,o,r,i,a,s,d){Ky(t.profile);let u=jE(e,t)??{};Zy(e.currentState(),t,u);let l=u.capabilities??LE(e,t),f=_t({runId:t.runId,turnId:i??e.ids.next("receipt"),operationId:t.operationId,conversationId:n,branchId:o,admittedAt:e.clock.now(),profile:t.profile,...t.connectionId===void 0?{}:{connectionId:t.connectionId},text:t.text,...t.sessionId===void 0?{}:{sessionId:t.sessionId},capabilities:l,...u.provider===void 0?{}:{provider:u.provider},...u.environmentId===void 0?{}:{environmentId:u.environmentId},...u.providerSessionId===void 0?{}:{providerSessionId:u.providerSessionId},...u.materializationReceipt===void 0?{}:{materializationReceipt:u.materializationReceipt},...d===void 0?{}:{contextPlan:d},...a===void 0?{}:{contextPlanDigest:a},...r===void 0?{}:{contextTransfer:r},...s===void 0?{}:{nativeContextBoundaryProof:s}});return Wy(f,u,Vy(t,n,o,d),_c(t.profile)),f}async function Jy(e,t,n,o,r,i,a,s,d){Ky(t.profile);let c=await UE(e,t);Zy(e.currentState(),t,c);let u=c?.capabilities??await ME(e,t),l=_t({runId:t.runId,turnId:i??e.ids.next("receipt"),operationId:t.operationId,conversationId:n,branchId:o,admittedAt:e.clock.now(),profile:t.profile,...t.connectionId===void 0?{}:{connectionId:t.connectionId},text:t.text,...t.sessionId===void 0?{}:{sessionId:t.sessionId},capabilities:u,...c?.provider===void 0?{}:{provider:c.provider},...c?.environmentId===void 0?{}:{environmentId:c.environmentId},...c?.providerSessionId===void 0?{}:{providerSessionId:c.providerSessionId},...c?.materializationReceipt===void 0?{}:{materializationReceipt:c.materializationReceipt},...d===void 0?{}:{contextPlan:d},...a===void 0?{}:{contextPlanDigest:a},...r===void 0?{}:{contextTransfer:r},...s===void 0?{}:{nativeContextBoundaryProof:s},...c?.warnings===void 0?{}:{warnings:c.warnings}});return Wy(l,c,Vy(t,n,o,d),_c(t.profile)),l}function Gy(e,t,n){return _t({runId:t,turnId:n,operationId:e.operationId,conversationId:e.conversationId,branchId:e.branchId,admittedAt:new Date(0).toISOString(),profile:e.profile,...e.connectionId===void 0?{}:{connectionId:e.connectionId},text:e.text,capabilities:ot,admissionStatus:"pending"})}function Xy(e,t){let n=e.currentState();if(n.workspace===null)throw new m("NOT_INITIALIZED","Initialize a workspace before sending");if(!t.operationId)throw new m("OPERATION_ID_REQUIRED","send requires operationId");if(!t.text.trim())throw new m("EMPTY_MESSAGE","Message must not be empty");let o=t.conversationId,r=t.branchId;if(o!==n.conversationId||r!==n.branchId)throw new m("UNKNOWN_BRANCH","The requested conversation branch is not open");vo(e,t);let i=$n(t),a=e.fingerprint({effectKind:lr,request:i}),s=e.admitPersistedSend(t.operationId,a);if(s)return s;if(n.activeRunId)throw new m("RUN_ACTIVE",`Run ${n.activeRunId} is still active; queue the next input explicitly`);Hy(t);let d=e.ids.next("run"),c=e.ids.next("turn");if(t.contextTransfer&&t.contextTransfer.destinationRunId!==d)throw new m("CONTEXT_RECEIPT_CONFLICT","The context transfer receipt names a different destination run");let u=Bi(e,{operationId:t.operationId,runId:d,text:t.text,profile:t.profile,...t.connectionId===void 0?{}:{connectionId:t.connectionId},...t.workspaceRoot===void 0?{}:{workspaceRoot:t.workspaceRoot},signal:new AbortController().signal,...t.sessionId===void 0?{}:{sessionId:t.sessionId},...t.contextPlan===void 0?{}:{contextBoundary:t.contextPlan.digest}},o,r,t.contextTransfer,c,t.contextPlan?.digest,t.nativeContextBoundaryProof,t.contextPlan);n.draft!==t.text&&e.commit({kind:"draft.changed",text:t.text}),e.commit({kind:"run.requested",operationId:t.operationId,runId:d,turnId:c,userMessageId:e.ids.next("message"),assistantMessageId:e.ids.next("message"),text:t.text,requestDigest:a,receipt:u});let l=new AbortController,f={digest:a,runId:d,admission:u,completion:Promise.resolve()};return e.ledger.setOperation(f),e.ledger.setAbort(d,l),f.completion=e.startRun(t,u,l,a),{operationId:t.operationId,runId:d,revision:e.currentState().revision,replayed:!1,admission:u,completion:f.completion.then(()=>structuredClone(e.currentState()))}}async function Yy(e,t,n,o=new AbortController().signal){xc(o);let r=e.currentState();if(r.workspace===null)throw new m("NOT_INITIALIZED","Initialize a workspace before sending");if(!t.operationId)throw new m("OPERATION_ID_REQUIRED","send requires a valid operationId");let i=t.conversationId,a=t.branchId;if(i!==r.conversationId||a!==r.branchId)throw new m("UNKNOWN_BRANCH","The requested conversation branch is not open");vo(e,t),Hy(t);let s=$n(t),d=e.fingerprint({effectKind:lr,request:s}),c=e.admitPersistedSend(t.operationId,d);if(c)return c;if(r.activeRunId)throw new m("RUN_ACTIVE",`Run ${r.activeRunId} is still active; queue the next input explicitly`);if(t.contextTransfer&&t.contextTransfer.destinationRunId!==n.runId)throw new m("CONTEXT_RECEIPT_CONFLICT","The context transfer receipt names a different destination run");let u=await Jy(e,{operationId:t.operationId,runId:n.runId,text:t.text,profile:t.profile,...t.connectionId===void 0?{}:{connectionId:t.connectionId},...t.workspaceRoot===void 0?{}:{workspaceRoot:t.workspaceRoot},signal:o,...t.sessionId===void 0?{}:{sessionId:t.sessionId},...t.contextPlan===void 0?{}:{contextBoundary:t.contextPlan.digest}},i,a,t.contextTransfer,n.turnId,t.contextPlan?.digest,t.nativeContextBoundaryProof,t.contextPlan);xc(o),r.draft!==t.text&&await e.commitAndWait({kind:"draft.changed",text:t.text}),xc(o),await e.commitAndWait({kind:"run.requested",operationId:t.operationId,runId:n.runId,turnId:n.turnId,userMessageId:e.ids.next("message"),assistantMessageId:e.ids.next("message"),text:t.text,requestDigest:d,receipt:u}),xc(o);let l=new AbortController,f={digest:d,runId:n.runId,admission:u,completion:Promise.resolve()};return e.ledger.setOperation(f),e.ledger.setAbort(n.runId,l),f.completion=e.startRun(t,u,l,d),{operationId:t.operationId,runId:n.runId,revision:e.currentState().revision,replayed:!1,admission:u,completion:f.completion.then(()=>structuredClone(e.currentState()))}}function xc(e){if(e.aborted)throw new m("APPLICATION_CLOSING","Braid is closing and cannot materialize a run")}async function Qy(e,t){let n=e.findRun(t.runId??e.currentState().runs.at(-1)?.id??""),o=n.providerSessionId;if(!o||!n.capabilities.sessions.continue||!e.execution.nativeBoundary)throw new m("NATIVE_CONTINUATION_UNVERIFIED","The provider cannot prove a native session boundary for this run");let r=await e.execution.nativeBoundary({runId:n.id,sessionId:o});if(!r)throw new m("NATIVE_CONTINUATION_UNVERIFIED","The provider did not return a native session boundary proof");let i={runId:n.id,providerSessionId:o,boundary:r.boundary,digest:r.digest,...r.revision===void 0?{}:{revision:r.revision}};if(n.lastCursor!==void 0&&i.boundary!==n.lastCursor)throw new m("NATIVE_BOUNDARY_MISMATCH","The provider session no longer ends at the recorded Braid boundary");return e.send({operationId:t.operationId,text:t.text,sessionId:o,nativeContextBoundaryProof:i})}function FE(e){return typeof e=="object"&&e!==null&&"runId"in e&&"eventId"in e&&"sequence"in e&&"event"in e}async function VE(e,t,n,o){let r=!1,i=0;try{let a=e.currentState().runs.find(d=>d.id===n.runId),s={operationId:t.operationId,runId:n.runId,text:t.text,profile:t.profile,...t.connectionId===void 0?{}:{connectionId:t.connectionId},...t.workspaceRoot===void 0?{}:{workspaceRoot:t.workspaceRoot},signal:o.signal,...t.sessionId===void 0?{}:{sessionId:t.sessionId},...a?.lastCursor===void 0?{}:{after:a.lastCursor},...a===void 0?{}:{afterSequence:a.lastProviderSequence},...t.contextPlan===void 0?{}:{contextBoundary:t.contextPlan.digest}};if(e.ledger.isDetached(n.runId))return;for await(let d of e.execution.streamTurn(s)){if(e.ledger.isDetached(n.runId)||e.isTerminal(e.findRun(n.runId).status)||r)break;if(FE(d)){(await e.ingestRuntimeEvent(d)).accepted&&d.event.type==="final"&&(r=!0,await e.flush());continue}i+=1;let c=e.clock.now(),u=AE(n.runId,d,i),l=xE(u,i,d,c);(await e.ingestRuntimeEvent({runId:n.runId,eventId:u,sequence:i,receivedAt:c,...l.occurredAt===void 0?{}:{occurredAt:l.occurredAt},event:d})).accepted&&d.type==="final"&&(r=!0,await e.flush())}if(e.ledger.isDetached(n.runId))return;r||await WP(e,t,n,o)}catch(a){if(e.ledger.isDetached(n.runId))return;let s=EE(a instanceof Error?a.message:String(a),"RUNTIME_EXECUTION_ERROR");if(r)throw a;r||await JP(e,t,n,o,s)}finally{e.ledger.deleteAbort(n.runId),e.ledger.clearExplicitlyCancelled(n.runId);let a=e.findRun(n.runId);e.isTerminal(a.status)&&(a.status!=="unknown"||a.capabilities.controls.cancel&&e.execution.cancelRun===void 0)&&!e.currentState().missingHistory.some(s=>s.runId===a.id)&&await GP(e)}}async function WP(e,t,n,o){if(!e.isTerminal(e.findRun(n.runId).status)){if(!o.signal.aborted&&n.capabilities.streaming.replay&&n.capabilities.events.cursor&&e.execution.reconnect){await ur(e,{operationId:`${t.operationId}:reconnect`,runId:n.runId});return}if(o.signal.aborted||e.ledger.isExplicitlyCancelled(n.runId)){let r=e.ledger.controlForRun(n.runId,"cancel");if(r){let a=await r.acknowledgement;if(a.outcome==="accepted"||a.outcome==="already-applied")return;e.isTerminal(e.findRun(n.runId).status)||await qi(e,{kind:"run.unknown",runId:n.runId,detail:a.detail??"Cancellation outcome is unknown"});return}let i=e.ledger.getCancelStatus(n.runId)??"cancelled";await qi(e,{kind:"run.finished",runId:n.runId,status:o.signal.aborted&&!e.ledger.isExplicitlyCancelled(n.runId)?"aborted":i,finalText:"",usage:ac,error:o.signal.reason instanceof Error?o.signal.reason.message:"Cancelled by user"})}else await e.commitAndWait({kind:"run.unknown",runId:n.runId,detail:"The normalized event stream ended without a terminal event"})}}async function JP(e,t,n,o,r){if(!e.isTerminal(e.findRun(n.runId).status)){if(!o.signal.aborted&&n.capabilities.streaming.replay&&n.capabilities.events.cursor&&e.execution.reconnect){await ur(e,{operationId:`${t.operationId}:reconnect`,runId:n.runId});return}if(o.signal.aborted||e.ledger.isExplicitlyCancelled(n.runId)){let i=e.ledger.controlForRun(n.runId,"cancel");if(i){let s=await i.acknowledgement;if(s.outcome==="accepted"||s.outcome==="already-applied")return;e.isTerminal(e.findRun(n.runId).status)||await qi(e,{kind:"run.unknown",runId:n.runId,detail:s.detail??"Cancellation outcome is unknown"});return}let a=e.ledger.getCancelStatus(n.runId)??"cancelled";await qi(e,{kind:"run.finished",runId:n.runId,status:o.signal.aborted&&!e.ledger.isExplicitlyCancelled(n.runId)?"aborted":a,finalText:"",usage:ac,error:r})}else await qi(e,{kind:"run.finished",runId:n.runId,status:"failed",finalText:"",usage:ac,error:r})}}async function qi(e,t){let o=(e.commitAndWaitRecovery??e.commitAndWait)(t);o!==void 0&&await o}async function GP(e){let t=e.currentState().queuedInputs[0];if(!t||e.currentState().activeRunId||e.currentState().missingHistory.some(o=>o.runId===t.runId))return;let n=e.findRun(t.runId);if(!(n.status==="unknown"&&(!n.capabilities.controls.cancel||e.execution.cancelRun!==void 0)||!e.isTerminal(n.status))&&e.ledger.claimQueueDrain(t.operationId))try{let o=e.send({operationId:t.operationId,text:t.text});o.admissionReady!==void 0&&await o.admissionReady;let r=e.commitAndWait({kind:"run.queue.removed",runId:t.runId,operationId:t.operationId});r!==void 0&&await r}finally{e.ledger.releaseQueueDrain(t.operationId)}}function HE(e){let t=$n(e.runInput);return e.effects.start({operationId:e.runInput.operationId,effectKind:lr,request:t,requestDigest:e.requestDigest,serializationKey:`run:${e.admission.runId}:execution`,signal:e.abort.signal,metadata:{runId:e.admission.runId}},{dispatch:async()=>(await e.context.flush(),await VE(e.context,e.runInput,e.admission,e.abort),XP(e.context,e.admission.runId))}).completion.then(async o=>{try{await e.context.flush()}catch(r){if(e.context.storageFailure?.()===void 0)throw r;return{status:"unknown",detail:"RUN_DURABILITY_UNKNOWN"}}return{status:o.status==="pending"||o.status==="conflict"?"unknown":o.status,...o.detail===void 0?{}:{detail:o.detail}}})}function XP(e,t){let n=e.currentState().runs.find(o=>o.id===t);return n?n.status==="completed"?{status:"terminal",detail:"completed"}:n.status==="unknown"?{status:"unknown",detail:n.error??"unknown"}:n.status==="failed"?{status:"failed",detail:"failed"}:n.status==="aborted"||n.status==="cancelled"?{status:"failed",detail:n.status}:{status:"unknown",detail:"RUN_NOT_TERMINAL"}:{status:"unknown",detail:"RUN_STATE_MISSING"}}function ZE(e,t){let n=new Map;for(let o of e){let r=o.event;if(r.kind==="run.requested"&&r.receipt){let i=t.state().runs.find(a=>a.id===r.runId);i&&(t.ledger.setOperation({digest:r.requestDigest??R({command:"send",conversationId:r.receipt.conversationId,branchId:r.receipt.branchId,text:r.text,profile:r.receipt.requested.profile,connectionId:r.receipt.requested.connectionId??null}),runId:i.id,admission:r.receipt,completion:Promise.resolve()}),nh(i.status)||t.ledger.setAbort(i.id,new AbortController))}else if(r.kind==="run.cancel.requested"){let i=t.state().runs.find(a=>a.id===r.runId);t.ledger.setControl(r.operationId,{digest:zi(r.runId,r.reason??Mi,i?.providerSessionId),runId:r.runId,control:"cancel",acknowledgement:Promise.resolve({operationId:r.operationId,outcome:"unknown",detail:"Cancellation was requested before the provider acknowledged it"}),completion:Promise.resolve(t.state()),...i?.providerSessionId===void 0?{}:{providerSessionId:i.providerSessionId},...r.reason===void 0?{}:{reason:r.reason}})}else if(r.kind==="run.control.requested"){let i=t.state().runs.find(s=>s.id===r.runId),a=r.control==="cancel"?zi(r.runId,r.reason??Mi,i?.providerSessionId):r.digest;t.ledger.setControl(r.operationId,{digest:a,runId:r.runId,control:r.control,acknowledgement:Promise.resolve({operationId:r.operationId,outcome:"unknown",detail:"Control acknowledgement requires provider reconciliation"}),completion:Promise.resolve(t.state()),...i?.providerSessionId===void 0?{}:{providerSessionId:i.providerSessionId},...r.reason===void 0?{}:{reason:r.reason},...r.text===void 0?{}:{text:r.text}})}else r.kind==="application.shutdown.requested"?t.ledger.setShutdown(r.operationId,{digest:Ec(),completion:Promise.resolve(t.state())}):r.kind==="run.control.acknowledged"&&n.set(r.operationId,{operationId:r.operationId,outcome:r.outcome,...r.detail===void 0?{}:{detail:r.detail}})}for(let[o,r]of n){let i=t.ledger.getControl(o);i&&t.ledger.setControl(o,{...i,acknowledgement:Promise.resolve(r)})}}function KE(e){let t=e.currentState().activeRunId;if(!t)return Promise.resolve();let n=e.currentState().runs.find(o=>o.id===t);if(!n||eN(n.status))return Promise.resolve();if(!e.execution.status){let o=e.commitAndWait({kind:"run.finished",runId:t,status:"unknown",finalText:"",usage:Pi(n),error:"The execution path cannot reconcile provider state after restart"});return Promise.resolve(o)}return YP(e,t)}async function YP(e,t){let n=e.execution.status;if(!n)return;let o;try{let i=e.findRun(t);o=await n({runId:t,...i.providerSessionId===void 0?{}:{providerSessionId:i.providerSessionId},...i.controlRef===void 0?{}:{controlRef:i.controlRef}})}catch{await pr(e,{kind:"run.reconnecting",runId:t,...e.findRun(t).lastCursor===void 0?{}:{after:e.findRun(t).lastCursor}}),await pr(e,{kind:"run.unknown",runId:t,detail:"Provider reconciliation failed after restart"});return}let r=e.findRun(t);if(!o||o.runId!==t||r.providerSessionId!==void 0&&o.sessionId!==r.providerSessionId){await pr(e,{kind:"run.reconnecting",runId:t,...r.lastCursor===void 0?{}:{after:r.lastCursor}}),await pr(e,{kind:"run.unknown",runId:t,detail:"Provider reconciliation returned no matching run identity"});return}await pr(e,{kind:"run.reconnecting",runId:t,...r.lastCursor===void 0?{}:{after:r.lastCursor}}),await QP(e,t,o)}async function QP(e,t,n){let o=e.currentState().runs.find(i=>i.id===t);if(!o)return;let r=R({runId:t,sessionId:n.sessionId??null,cursor:n.cursor??null,status:n.status,detail:n.detail??null});await pr(e,{kind:"run.reconciled",runId:t,status:n.status,from:o.status,to:n.status,evidence:r,...n.detail===void 0?{}:{detail:n.detail}}),nh(n.status)&&await pr(e,{kind:"run.finished",runId:t,status:n.status,finalText:n.finalText??"",usage:n.usage??Pi(o),...n.error===void 0?{}:{error:Ce(n.error,"RUNTIME_RECONCILIATION_ERROR")},...n.detail===void 0?{}:{reason:Ce(n.detail,"RUNTIME_RECONCILIATION_STATUS")}})}async function pr(e,t){let n=e.commitAndWait(t);n!==void 0&&await n}function eh(e){let t=e.state(),n=e.effects.current(e.operationId);if(n&&n.requestDigest!==e.digest)throw e.effects.start({operationId:e.operationId,effectKind:"run.execute",request:{digest:e.digest}},{dispatch:async()=>({status:"failed",detail:"OPERATION_CONFLICT"})}),new m("OPERATION_CONFLICT",`Operation ${e.operationId} was already used with different input`);if(n&&(n.status==="pending"||n.status==="conflict"))throw new m("OPERATION_REQUIRES_RECONCILIATION",`Operation ${e.operationId} needs provider reconciliation before it can be retried`);let o=e.operations.getOperation(e.operationId);if(o){if(o.digest!==e.digest)throw new m("OPERATION_CONFLICT",`Operation ${e.operationId} was already used with different input`);return{operationId:e.operationId,runId:o.runId,revision:t.revision,replayed:!0,admission:o.admission,completion:o.completion.then(()=>e.state())}}let r=t.runs.find(i=>i.operationId===e.operationId);if(n&&r)return{operationId:e.operationId,runId:r.id,revision:t.revision,replayed:!0,admission:r.receipt,completion:Promise.resolve(e.state())};if(n)throw new m("OPERATION_REQUIRES_RECONCILIATION",`Operation ${e.operationId} needs provider reconciliation before it can be retried`)}function WE(e){let t=Ln(e.event);if(t&&e.providerEventKeys.hasProviderEvent(t))return e.state;let n=cu(e.event),o=e.journal.envelope?e.journal.envelope(e.state,n):{sequence:e.state.sequence+1,revision:e.state.revision+1,occurredAt:e.clock.now(),event:n},r=e.journal.append(o);if(r!==void 0&&typeof r.then=="function")throw new m("ASYNC_COMMIT_REQUIRED","This journal requires an awaited durable transition");if(r?.appended===!1)return e.state;let a=cc(e.state,o);t&&e.providerEventKeys.addProviderEvent(t);for(let s of e.subscribers)try{s(structuredClone(a),structuredClone(o))}catch{}return a}async function th(e){let t=Ln(e.event);if(t&&e.providerEventKeys.hasProviderEvent(t))return e.state;let n=cu(e.event),o=e.journal.envelope?e.journal.envelope(e.state,n):{sequence:e.state.sequence+1,revision:e.state.revision+1,occurredAt:e.clock.now(),event:n},r=cc(e.state,o);if((e.journal.appendWithState?await e.journal.appendWithState(o,r):await e.journal.append(o))?.appended===!1)return e.state;t&&e.providerEventKeys.addProviderEvent(t);for(let a of e.subscribers)try{a(structuredClone(r),structuredClone(o))}catch{}return r}function JE(e){if(!e||typeof e!="object")return!1;let t=e;return typeof t.reserveEffect=="function"&&typeof t.current=="function"&&typeof t.latest=="function"&&typeof t.appendEffect=="function"&&typeof t.history=="function"}function nh(e){return e==="completed"||e==="failed"||e==="aborted"||e==="cancelled"||e==="blocked"||e==="expired"||e==="unknown"}function eN(e){return nh(e)&&e!=="unknown"}function GE(e){let t={currentState:e.currentState,profile:e.profile,findRun:o=>{let r=e.currentState().runs.find(i=>i.id===o);if(!r)throw new Error(`Run ${o} is unknown`);return r},isTerminal:o=>o==="completed"||o==="failed"||o==="aborted"||o==="cancelled"||o==="blocked"||o==="expired"||o==="unknown"},n={commit:e.commit,commitAndWait:e.commitAndWait,commitBatchAndWait:e.commitBatchAndWait,commitAndWaitRecovery:e.commitAndWaitRecovery};return PE({state:t,journal:n,execution:e.execution,ledger:e.ledger,effects:e.effects,clock:e.clock,ids:e.ids,flush:e.flush,storageFailure:e.storageFailure,executeControl:e.executeControl,admitPersistedSend:e.admitPersistedSend,fingerprint:e.fingerprint,startRun:(o,r,i,a,s)=>HE({effects:e.effects,journal:e.journal,context:o,runInput:r,admission:i,abort:a,requestDigest:s}),send:e.send,...e.afterRuntimeEvent===void 0?{}:{afterRuntimeEvent:e.afterRuntimeEvent}})}function kc(e,t){YE(e,t,!1)}function rh(e,t){YE(e,t,!0)}function YE(e,t,n){if(!n&&e.storageFailure()!==void 0)throw new m("STORAGE_FAILURE","Durable storage is unavailable; reopen Braid to continue");if(e.asynchronous){oh(e,t,n).catch(()=>{});return}try{e.setState(WE({state:e.state(),event:t,journal:e.journal,clock:e.clock,providerEventKeys:e.providerEventKeys,subscribers:e.subscribers}))}catch(o){throw e.markStorageFailure(o),o}}function QE(e,t){return oh(e,t,!1)}function e_(e,t){return oh(e,t,!0)}function Ac(e,t,n){if(t.length===0)return Promise.resolve();if(XE(e.state(),n),!e.asynchronous){for(let a of t)kc(e,a);return Promise.resolve()}let r=e.transitionTail().then(async()=>{let a=e.storageFailure();if(a!==void 0)throw a;XE(e.state(),n);for(let s of t)e.setState(await th({state:e.state(),event:s,journal:e.journal,clock:e.clock,providerEventKeys:e.providerEventKeys,subscribers:e.subscribers}))}),i=r.catch(a=>{tN(a)||e.markStorageFailure(a)});return e.setTransitionTail(i),r}function XE(e,t){if(t!==void 0){if(!Number.isInteger(t)||t<0)throw new m("INVALID_EXPECTED_REVISION","expectedRevision must be a non-negative integer");if(e.revision!==t)throw new m("STALE_REVISION",`The application changed at revision ${e.revision}; expected ${t}`)}}function tN(e){return e instanceof m&&(e.code==="STALE_REVISION"||e.code==="INVALID_EXPECTED_REVISION")}function oh(e,t,n){if(!e.asynchronous)return n?rh(e,t):kc(e,t),Promise.resolve();let r=(n?e.transitionTail().catch(()=>{}):e.transitionTail()).then(async()=>{let a=e.storageFailure();if(!n&&a!==void 0)throw a;e.setState(await th({state:e.state(),event:t,journal:e.journal,clock:e.clock,providerEventKeys:e.providerEventKeys,subscribers:e.subscribers}))}),i=r.catch(a=>{throw e.markStorageFailure(a),a});return e.setTransitionTail(i),r}function t_(e){let t={state:e.currentState,setState:e.setState,journal:e.journal,clock:e.clock,providerEventKeys:e.ledger,subscribers:e.subscribers,asynchronous:e.asynchronousJournal,transitionTail:e.transitionTail,setTransitionTail:e.setTransitionTail,storageFailure:e.storageFailure,markStorageFailure:e.markStorageFailure};return{ports:GE({currentState:e.currentState,profile:e.profile,commit:e.commit,commitAndWait:e.commitAndWait,commitBatchAndWait:o=>Ac(t,o),commitAndWaitRecovery:e.commitAndWaitRecovery,execution:e.execution,ledger:e.ledger,clock:e.clock,ids:e.ids,effects:e.effects,journal:e.journal,flush:e.flush,storageFailure:e.storageFailure,executeControl:e.executeControl,admitPersistedSend:e.admitPersistedSend,fingerprint:e.fingerprint,send:e.send,...e.afterRuntimeEvent===void 0?{}:{afterRuntimeEvent:e.afterRuntimeEvent}}),transition:t}}async function r_(e){let{request:t}=e,n,o=!1,r=e.effects.start({operationId:t.operationId,effectKind:`run.control.${t.control}`,request:{...t,providerSessionId:t.providerSessionId??null,reason:t.reason??null,text:t.text??null,cursor:t.cursor??null},serializationKey:`run:${t.runId}:control`,metadata:{runId:t.runId,control:t.control,owner:e.owner,leaseExpiresAt:new Date(Date.now()+e.timeoutMs).toISOString()}},{dispatch:async()=>{let a=new AbortController;n=nN(e.execution,t,a.signal);let s=await aN(n,a,e.timeoutMs);return o=s.timedOut,n_(s.acknowledgement)},reconcile:async()=>rN(e.execution,t)}),i=await r.completion;return await e.whenDurable(),o&&n!==void 0&&e.onLateSettlement!==void 0&&n.then(async s=>{e.canSettleLate?.()===!1||(e.effects.settle(r.operationId,r.requestDigest,n_(s))!==void 0&&await e.whenDurable(),e.canSettleLate?.()===!1)||await e.onLateSettlement?.(s)}).catch(()=>{}),oN(t.operationId,i.status,i.detail)}async function nN(e,t,n){try{return t.control==="cancel"?e.cancelRun?iN(t.operationId,await e.cancelRun({runId:t.runId,operationId:t.operationId,...t.providerSessionId===void 0?{}:{providerSessionId:t.providerSessionId},...t.controlRef===void 0?{}:{controlRef:t.controlRef},signal:n,...t.reason===void 0?{}:{reason:t.reason}})):Tc(t.operationId,"CONTROL_CANCELLATION_UNCONFIRMED"):t.control==="steer"?e.steerRun?e.steerRun({runId:t.runId,operationId:t.operationId,text:t.text??"",signal:n}):Tc(t.operationId,"CONTROL_STEERING_UNCONFIRMED"):e.detachRun?e.detachRun({runId:t.runId,operationId:t.operationId,...t.providerSessionId===void 0?{}:{providerSessionId:t.providerSessionId},...t.controlRef===void 0?{}:{controlRef:t.controlRef},signal:n,...t.cursor===void 0?{}:{cursor:t.cursor}}):Tc(t.operationId,"CONTROL_DETACH_UNCONFIRMED")}catch{return Tc(t.operationId,"CONTROL_DISPATCH_UNKNOWN")}}async function rN(e,t){if(t.control==="steer"||!e.status)return;let n;try{n=await e.status({runId:t.runId,...t.providerSessionId===void 0?{}:{providerSessionId:t.providerSessionId},...t.controlRef===void 0?{}:{controlRef:t.controlRef}})}catch{return}if(!(!n||n.runId!==t.runId||t.providerSessionId!==void 0&&n.sessionId!==t.providerSessionId)&&!(t.control==="cancel"&&!["aborted","cancelled"].includes(n.status))&&!(t.control==="detach"&&n.status!=="detached")&&sN(n.status))return{status:"terminal",detail:"CONTROL_RECONCILED_TERMINAL"}}function n_(e){return e.outcome==="accepted"?{status:"acknowledged",detail:Dn(e.detail,"CONTROL_ACKNOWLEDGED")}:e.outcome==="already-applied"?{status:"terminal",detail:"CONTROL_ALREADY_APPLIED"}:e.outcome==="rejected"?{status:"failed",detail:"CONTROL_REJECTED"}:{status:"unknown",detail:"CONTROL_OUTCOME_UNKNOWN"}}function oN(e,t,n){return t==="acknowledged"?{operationId:e,outcome:"accepted",...n?{detail:n}:{}}:t==="terminal"?{operationId:e,outcome:"already-applied",...n?{detail:n}:{}}:t==="failed"?{operationId:e,outcome:"rejected",detail:"CONTROL_REJECTED"}:{operationId:e,outcome:"unknown",detail:"CONTROL_OUTCOME_UNKNOWN"}}function iN(e,t){return"outcome"in t?{operationId:e,outcome:t.outcome,...t.detail===void 0?{}:{detail:Dn(t.detail,"CONTROL_DETAIL")}}:t.status==="cancelled"?{operationId:e,outcome:"accepted"}:{operationId:e,outcome:"unknown",detail:Dn(t.reason,"CONTROL_OUTCOME_UNKNOWN")}}function Tc(e,t){return{operationId:e,outcome:"unknown",detail:t}}async function aN(e,t,n){let o,r=!1,i=new Promise(s=>{o=setTimeout(()=>{r=!0,t.abort(new Error("Control acknowledgement deadline elapsed")),s({operationId:"unknown",outcome:"unknown",detail:"CONTROL_ACKNOWLEDGEMENT_TIMEOUT"})},n)}),a=await Promise.race([e,i]);return o!==void 0&&clearTimeout(o),{acknowledgement:a,timedOut:r}}function sN(e){return["completed","failed","aborted","cancelled","blocked","expired"].includes(e)}var dN=new Set(["none","minimal","low","medium","high","xhigh","ultracode"]);function o_(e){let t;if(e.effort!==void 0){if(!dN.has(e.effort))throw new m("INVALID_EFFORT",`Unknown reasoning effort ${e.effort}`);t=e.effort}return{...e.inherited??{},...e.runner===void 0?{}:{runner:me(e.runner,256)},...e.model===void 0?{}:{model:me(e.model,512)},...t===void 0?{}:{effort:t}}}function ih(e,t,n,o=""){return{id:e,branchId:t,text:me(o),updatedAt:n}}function ah(e,t,n){return{id:e,branchId:t,entryIds:[],createdAt:n,updatedAt:n}}function Fi(e){let t={id:e.conversationId,workspaceId:e.workspaceId,title:e.title,activeBranchId:e.branchId,...e.profileId===void 0?{}:{profileId:e.profileId},createdAt:e.at,updatedAt:e.at,archived:!1,retention:{}},n={id:e.branchId,conversationId:e.conversationId,...e.source===void 0?{}:{source:e.source},...e.profileId===void 0?{}:{profileId:e.profileId},...e.connectionId===void 0?{}:{connectionId:e.connectionId},overrides:e.overrides??{},...e.environmentId===void 0?{}:{environmentId:e.environmentId},draftId:e.draftId,queueId:e.queueId,status:"active",createdAt:e.at,updatedAt:e.at},o=ih(e.draftId,e.branchId,e.at),r=ah(e.queueId,e.branchId,e.at),i=q({kind:"workspace",id:e.workspaceId},e.at),a=q({kind:"conversation",id:e.conversationId},e.at,e.title),s=q({kind:"branch",id:e.branchId},e.at,"Main"),d=[re({kind:"attached",source:i.reference,destination:a.reference,at:e.at,provenance:{operationId:e.operationId}}),re({kind:"attached",source:a.reference,destination:s.reference,at:e.at,provenance:{operationId:e.operationId}})],c=[i,a,s];if(e.sourceNode!==void 0&&e.sourceEdgeKind!==void 0){let u=q(e.sourceNode,e.at);c.push(u),d.push(re({kind:e.sourceEdgeKind,source:u.reference,destination:a.reference,at:e.at,provenance:{operationId:e.operationId}}))}return{conversation:t,branch:n,draft:o,queue:r,graphNodes:c,graphEdges:d}}var $c=class{#e;constructor(t){this.#e=t}async create(t){return je(this.#e,"branch",t,()=>this.#t(t))}async#t(t){let n=this.#e.state();sn(n,"Creating a branch");let o=sh(n,t),r=Be(t.operationId,"branch"),i=i_(o,t),a=ze("branch",i),s=Ye(n,r,"branch-create",a);if(s)return cN(n,s);let d=gu(r,a),c=this.#e.now(),u=ih(d.draftId,d.branchId,c,t.text),l=ah(d.queueId,d.branchId,c),f={id:d.branchId,conversationId:o.conversation.id,source:{conversationId:o.conversation.id,branchId:o.branch.id,...o.through===void 0?{}:{throughMessageId:o.through.id},...o.through?.turnId===void 0?{}:{throughTurnId:o.through.turnId}},...o.branch.profileId===void 0?{}:{profileId:o.branch.profileId},...o.branch.profileSnapshotId===void 0?{}:{profileSnapshotId:o.branch.profileSnapshotId},...o.branch.connectionId===void 0?{}:{connectionId:o.branch.connectionId},overrides:o_({inherited:o.branch.overrides,...t.runner===void 0?{}:{runner:t.runner},...t.model===void 0?{}:{model:t.model},...t.effort===void 0?{}:{effort:t.effort}}),...o.branch.environmentId===void 0?{}:{environmentId:o.branch.environmentId},draftId:u.id,queueId:l.id,...o.through===void 0?{}:{tipMessageId:o.through.id},status:"active",createdAt:c,updatedAt:c},g={...o.conversation,activeBranchId:f.id,updatedAt:c},p=o.through?{kind:"message",id:o.through.id}:{kind:"branch",id:o.branch.id},v=q(p,c),w=q({kind:"branch",id:f.id},c,"Branch");return await this.#e.commit({kind:"branch.created",branch:f,conversation:g,draft:u,queue:l,graphNodes:[v,w],graphEdges:[re({kind:"branched_at",source:v.reference,destination:w.reference,at:c,provenance:{operationId:r}})],operation:Qe({id:r,kind:"branch-create",digest:a,at:c,target:{kind:"branch",id:f.id}})}),f}async clone(t){return je(this.#e,"clone",t,()=>this.#n(t))}async#n(t){let n=this.#e.state(),o=Bn(n);sn(n,"Cloning a conversation");let r=sh(n,t),i=Be(t.operationId,"clone"),a=zt(t.title,`${r.conversation.title} copy`),s=ze("clone",{conversationId:r.conversation.id,branchId:r.branch.id,throughMessageId:r.through?.id??null,title:a}),d=Ye(n,i,"conversation-clone",s);if(d)return uN(n,d);let c=$o(i,s,"clone"),u=this.#e.now(),l=Fi({workspaceId:o,...c,title:a,at:u,operationId:i,...r.branch.profileId===void 0?{}:{profileId:r.branch.profileId},...r.branch.connectionId===void 0?{}:{connectionId:r.branch.connectionId},source:{conversationId:r.conversation.id,branchId:r.branch.id,...r.through===void 0?{}:{throughMessageId:r.through.id},...r.through?.turnId===void 0?{}:{throughTurnId:r.through.turnId}},sourceNode:{kind:"branch",id:r.branch.id},sourceEdgeKind:"cloned_from",overrides:r.branch.overrides,...r.branch.environmentId===void 0?{}:{environmentId:r.branch.environmentId}});return await this.#e.commit({kind:"conversation.created",...l,operation:Qe({id:i,kind:"conversation-clone",digest:s,at:u,target:{kind:"conversation",id:l.conversation.id}})}),l.conversation}plan(t){let n=this.#e.state(),o=sh(n,t),r=Be(t.operationId,"plan_fork"),i=i_(o,t),a=ze("branch",i),s=gu(r,a).branchId,d=t.kind??"conversation",c=bv(n,{branchId:o.branch.id,...o.through===void 0?{}:{throughMessageId:o.through.id},...t.runner===void 0?{}:{destinationRunner:t.runner}}),u=lN(n,o.branch),l=d==="conversation",f={kind:d,operationId:r,sourceConversationId:o.conversation.id,sourceBranchId:o.branch.id,...o.through===void 0?{}:{throughMessageId:o.through.id},destinationBranchId:s,context:c,environment:d==="conversation"?"shared":u?"new":"unavailable",providerSession:"new",checkpoint:d==="conversation"?"none":u?"required":"unavailable",allowed:l,...l?{}:{reason:u?"The current runtime does not expose retry-safe environment fork execution to Braid":"The selected run does not report retry-safe checkpoint and environment fork support"}};return{...f,digest:R(f)}}async execute(t){return je(this.#e,"execute_fork",t,()=>this.#r(t))}async#r(t){let n=this.plan(t);if(n.digest!==t.planDigest)throw new m("FORK_PLAN_CONFLICT","The accepted fork plan no longer matches the source");if(!n.allowed)throw new m("CAPABILITY_UNAVAILABLE",n.reason??"Workspace fork is unavailable");let o=await this.#t(t);if(o.id!==n.destinationBranchId)throw new m("FORK_PLAN_CONFLICT","Fork execution produced an unexpected branch");return o}};function sh(e,t){let n=G(t.conversationId??e.conversationId),o=e.conversations.find(c=>c.id===n&&c.deletedAt===void 0);if(!o)throw new m("UNKNOWN_CONVERSATION",`Conversation ${n} is unavailable`);let r=hr(t.branchId??o.activeBranchId),i=e.branches.find(c=>c.id===r&&c.conversationId===n);if(!i)throw new m("UNKNOWN_BRANCH",`Branch ${r} does not belong to ${n}`);let a=zn(e,r),s=t.throughMessageId??i.tipMessageId??a.at(-1)?.id,d=s===void 0?void 0:a.find(c=>c.id===nn(s));if(s!==void 0&&d===void 0)throw new m("UNKNOWN_MESSAGE_BOUNDARY",`Message ${s} is not visible on ${r}`);return{conversation:o,branch:i,...d===void 0?{}:{through:d}}}function i_(e,t){return{conversationId:e.conversation.id,branchId:e.branch.id,throughMessageId:e.through?.id??null,text:t.text??"",runner:t.runner??e.branch.overrides.runner??null,model:t.model??e.branch.overrides.model??null,effort:t.effort??e.branch.overrides.effort??null}}function cN(e,t){if(t.target?.kind!=="branch")throw new m("OPERATION_INCOMPLETE",`Operation ${t.id} has no branch result`);let n=e.branches.find(o=>o.id===t.target?.id);if(!n)throw new m("OPERATION_INCOMPLETE",`Operation ${t.id} has no durable result`);return n}function uN(e,t){if(t.target?.kind!=="conversation")throw new m("OPERATION_INCOMPLETE",`Operation ${t.id} has no conversation result`);let n=e.conversations.find(o=>o.id===t.target?.id);if(!n)throw new m("OPERATION_INCOMPLETE",`Operation ${t.id} has no durable result`);return n}function lN(e,t){if(t.environmentId===void 0)return!1;let o=e.runs.filter(r=>r.branchId===t.id).at(-1)?.capabilities.environment?.branching;return!!(o?.checkpoint&&o.fork&&o.retrySafe&&o.lookup&&o.cleanup)}var a_=1024*1024,Cc=class{#e;constructor(t){this.#e=t}async set(t){return je(this.#e,"set-draft",t,()=>this.#t(t))}async#t(t){if(Buffer.byteLength(t.text,"utf8")>a_)throw new m("DRAFT_TOO_LARGE","Draft exceeds 1 MiB");let n=this.#e.state(),o=G(t.conversationId??n.conversationId),r=n.conversations.find(p=>p.id===o&&p.deletedAt===void 0);if(!r)throw new m("UNKNOWN_CONVERSATION",`Conversation ${o} is unavailable`);let i=hr(t.branchId??r.activeBranchId),a=n.branches.find(p=>p.id===i&&p.conversationId===o);if(!a)throw new m("UNKNOWN_BRANCH",`Branch ${i} is unavailable`);let s=n.drafts.find(p=>p.id===a.draftId);if(!s)throw new m("DRAFT_MISSING",`Branch ${i} has no draft record`);let d=me(t.text,a_),c=Be(t.operationId,"set-draft"),u=ze("set-draft",{conversationId:o,branchId:i,text:d});if(Ye(n,c,"draft-update",u))return{draft:s,replayed:!0};let f=this.#e.now(),g={...s,text:d,updatedAt:f};return await this.#e.commit({kind:"draft.recorded",draft:g,operation:Qe({id:c,kind:"draft-update",digest:u,at:f,target:{kind:"branch",id:i}})}),{draft:g,replayed:!1}}};import{resolve as pN}from"node:path";var Yt=2*1024*1024,Pc=1e5,Oc=class{#e;constructor(t){this.#e=t}async export(t){return je(this.#e,"export",t,()=>this.#t(t))}async#t(t){let n=this.#e.state(),o=d_(n,t.conversationId),r=t.format??"json",i=fN(n,o,this.#e.now()),a=r==="json"?J(i):mN(n,i),s=Buffer.byteLength(a,"utf8");if(s>Yt)throw new m("EXPORT_TOO_LARGE","Conversation export exceeds 2 MiB");let d=t.destination===void 0?void 0:pN(t.destination),c=Be(t.operationId,"export"),u=ze("export",{conversationId:o.id,format:r,contentDigest:i.contentDigest,destination:d??null});if(Ye(n,c,"export",u))return d!==void 0&&yN(d,a),s_(r,o.id,i.contentDigest,s,a,d,!0);d!==void 0&&Ev(d,`${a}
335
- `);let f=this.#e.now();return await this.#e.commit({kind:"operation.updated",operation:Qe({id:c,kind:"export",digest:u,at:f,target:{kind:"conversation",id:o.id}})}),s_(r,o.id,i.contentDigest,s,a,d,!1)}};function d_(e,t){let n=G(t??e.conversationId),o=e.conversations.find(r=>r.id===n&&r.deletedAt===void 0);if(!o)throw new m("UNKNOWN_CONVERSATION",`Conversation ${n} is unavailable`);return o}function fN(e,t,n){let o=e.branches.filter(p=>p.conversationId===t.id),r=new Set(o.map(p=>p.id)),i=gN(o.flatMap(p=>zn(e,p.id))),a=new Set(i.map(p=>p.id)),s=e.turns.filter(p=>p.conversationId===t.id||r.has(p.branchId)),d=new Set(s.flatMap(p=>p.runIds)),c=e.runs.filter(p=>d.has(p.id)),u=e.analyses.filter(p=>p.source.conversationId===t.id),l=new Set(u.map(p=>p.id)),f=new Set(e.graphNodes.filter(p=>p.reference.kind==="conversation"?p.reference.id===t.id:p.reference.kind==="branch"?r.has(p.reference.id):p.reference.kind==="message"?a.has(p.reference.id):p.reference.kind==="turn"?s.some(v=>v.id===p.reference.id):p.reference.kind==="run"?d.has(p.reference.id):p.reference.kind==="analysis"?l.has(p.reference.id):!1).map(p=>p.id)),g=sa({conversation:t,branches:o,messages:i,messageParts:e.messageParts.filter(p=>a.has(p.messageId)),turns:s,runs:c,analyses:u,graphNodes:e.graphNodes.filter(p=>f.has(p.id)),graphEdges:e.graphEdges.filter(p=>f.has(p.source)&&f.has(p.destination)),feedbackDecisions:e.feedbackDecisions.filter(p=>p.conversationId===t.id)},void 0,{maxDepth:24,maxItems:Pc,maxBytes:Yt});return{schemaVersion:2,format:"braid-conversation",exportedAt:n,conversationId:t.id,content:g,contentDigest:R(g),redacted:!0,externalControlsDisabled:!0}}function mN(e,t){let o=t.content.conversation,r=d_(e,t.conversationId),i=e.branches.find(d=>d.id===r.activeBranchId),a=i?zn(e,i.id):[],s=[`# ${o?.title??"Braid conversation"}`,"",`<!-- braid-content-digest: ${t.contentDigest} -->`,`<!-- braid-conversation: ${t.conversationId} -->`,""];for(let d of a){let c=aa(d.text);s.push(`## ${d.role}`,"",c||"[non-text message]","")}return s.join(`
336
- `)}function gN(e){let t=new Set;return e.filter(n=>t.has(n.id)?!1:(t.add(n.id),!0))}function s_(e,t,n,o,r,i,a){return{format:e,conversationId:t,contentDigest:n,bytes:o,...i===void 0?{content:r}:{destination:i},replayed:a}}function yN(e,t){let n=ma(e,Yt+1);if(n===void 0)throw new m("EXPORT_REPLAY_MISSING","The previously exported file is missing");if(n.toString("utf8").replace(/\n$/u,"")!==t)throw new m("EXPORT_REPLAY_CONFLICT","The export destination contains different data")}import{resolve as tD}from"node:path";function c_(e,t){let n=new Map,o=(r,i)=>{let a=`${r}:${i}`,s=n.get(a);if(s!==void 0)return s;let d=Ph[r][0];if(d===void 0)throw new m("IMPORT_INVALID",`Unsupported import ID ${r}`);let c=R({operationId:e,contentDigest:t,kind:r,source:i}).slice(0,40),u=ia(r,`${d}import-${c}`);return n.set(a,u),u};return{id(r,i,a){try{return o(r,ia(r,i))}catch{throw new m("IMPORT_INVALID",`${a} is not a valid ${r} identifier`)}},derived(r,i){return o(r,i)}}}function wt(e,t,n){if(!Array.isArray(e))throw new m("IMPORT_INVALID",`${n} must be an array`);let o=e.map((i,a)=>ge(i,`${n}[${a}]`)),r=new Set;for(let[i,a]of o.entries()){let s;try{s=ia(t,a.id)}catch{throw new m("IMPORT_INVALID",`${n}[${i}].id is invalid`)}if(r.has(s))throw new m("IMPORT_INVALID",`${n} contains duplicate ID ${s}`);r.add(s)}return o}function ge(e,t){if(e===null||typeof e!="object"||Array.isArray(e))throw new m("IMPORT_INVALID",`${t} must be an object`);return e}function B(e,t){if(typeof e!="string"||e.length===0)throw new m("IMPORT_INVALID",`${t} must be non-empty text`);return e}function fr(e,t){if(typeof e!="string")throw new m("IMPORT_INVALID",`${t} must be text`);return e}function ae(e,t){if(e!==void 0)return B(e,t)}function Nc(e,t){if(!Y(e))throw new m("IMPORT_INVALID",`${t} must be a canonical ISO timestamp`);return e}function Cn(e,t){if(typeof e!="number"||!Number.isFinite(e)||e<0)throw new m("IMPORT_INVALID",`${t} must be a non-negative number`);return e}function Se(e,t){return e===void 0?void 0:Cn(e,t)}function Rt(e,t){let n=Cn(e,t);if(!Number.isSafeInteger(n))throw new m("IMPORT_INVALID",`${t} must be a non-negative integer`);return n}function jt(e,t){if(typeof e!="boolean")throw new m("IMPORT_INVALID",`${t} must be boolean`);return e}function xe(e,t,n){if(typeof e!="string"||!t.includes(e))throw new m("IMPORT_INVALID",`${n} is unsupported`);return e}function Ut(e,t,n){if(e!==t)throw new m("IMPORT_INVALID",`${n} is outside the export`)}var hN=["continued","branched_at","cloned_from","retried","handed_off","analyzed","compared_left","compared_right","checkpointed","forked_environment","spawned","supervised_by","attached"];function f_(e){let t=wt(e.content.graphNodes,"graphNode","content.graphNodes"),n=new Map,o=[];for(let[u,l]of t.entries()){let f=`content.graphNodes[${u}]`,g=B(l.id,`${f}.id`),p=vN(e.ids,l.reference,`${f}.reference`),v={id:To(p),reference:p,...p_("title",ae(l.title,`${f}.title`)),...p_("status",ae(l.status,`${f}.status`)),createdAt:B(l.createdAt,`${f}.createdAt`),updatedAt:B(l.updatedAt,`${f}.updatedAt`)};if(o.some(w=>w.id===v.id))throw new m("IMPORT_INVALID",`${f} duplicates an imported graph reference`);n.set(g,v),o.push(v)}let r=[q({kind:"conversation",id:e.conversation.id},e.at,e.conversation.title),...e.branches.map(u=>q({kind:"branch",id:u.id},e.at)),...e.analyses.map(u=>q({kind:"analysis",id:u.id},e.at))];for(let u of r)u_(o,u);let i={kind:"workspace",id:e.workspaceId},a=e.state.graphNodes.find(u=>u.id===To(i))??q(i,e.at,e.state.workspace??void 0);u_(o,a);let s=[],d=wt(e.content.graphEdges,"graphEdge","content.graphEdges");for(let[u,l]of d.entries()){let f=`content.graphEdges[${u}]`,g=B(l.id,`${f}.id`),p=n.get(B(l.source,`${f}.source`)),v=n.get(B(l.destination,`${f}.destination`));if(!p||!v)throw new m("IMPORT_INVALID",`${f} references a missing graph node`);let w=re({kind:xe(l.kind,hN,`${f}.kind`),source:p.reference,destination:v.reference,at:B(l.createdAt,`${f}.createdAt`),provenance:{sourceDigest:R({importDigest:e.sourceContentDigest,sourceEdgeId:g})}});if(s.some(k=>k.id===w.id))throw new m("IMPORT_INVALID",`${f} duplicates an imported graph edge`);s.push(w)}let c={kind:"conversation",id:e.conversation.id};l_(s,re({kind:"attached",source:i,destination:c,at:e.at,provenance:{sourceDigest:e.sourceContentDigest}}));for(let u of e.branches)l_(s,re({kind:"attached",source:c,destination:{kind:"branch",id:u.id},at:e.at,provenance:{sourceDigest:e.sourceContentDigest}}));return{nodes:o,edges:s}}function vN(e,t,n){let o=ge(t,n),r=xe(o.kind,["conversation","branch","turn","run","message","analysis"],`${n}.kind`);switch(r){case"conversation":return{kind:r,id:e.id(r,o.id,`${n}.id`)};case"branch":return{kind:r,id:e.id(r,o.id,`${n}.id`)};case"turn":return{kind:r,id:e.id(r,o.id,`${n}.id`)};case"run":return{kind:r,id:e.id(r,o.id,`${n}.id`)};case"message":return{kind:r,id:e.id(r,o.id,`${n}.id`)};case"analysis":return{kind:r,id:e.id(r,o.id,`${n}.id`)}}}function u_(e,t){e.some(n=>n.id===t.id)||e.push(t)}function l_(e,t){e.some(o=>o.kind===t.kind&&o.source===t.source&&o.destination===t.destination)||e.push(t)}function p_(e,t){return t===void 0?{}:{[e]:t}}var IN=["incomplete","streaming","complete","failed","aborted","cancelled","blocked","expired","unknown","redacted"],bN=["queued","prepared","running","waiting","completed","failed","cancelled","unknown"],m_=new Set(["complete","failed","aborted","cancelled","blocked","expired","unknown","redacted"]),wN=new Set(["completed","failed","cancelled","unknown"]),RN=["text","reasoning","tool-call","tool-result","artifact","proposal","warning","error","interaction","system","unknown"];function h_(e){let t=e.messageParts.map((s,d)=>SN(e.ids,s,`messageParts[${d}]`)),n=new Map;for(let s of t){let d=n.get(s.messageId)??[];d.push(s),n.set(s.messageId,d)}let o=e.messages.map((s,d)=>{let c=`messages[${d}]`,u=e.ids.id("message",s.id,`${c}.id`);Ut(s.conversationId,e.sourceConversationId,`${c}.conversationId`);let l=xe(s.status,IN,`${c}.status`),f=jt(s.complete,`${c}.complete`),g=m_.has(l)?l:"unknown",p=s.turnId===void 0?void 0:e.ids.id("turn",s.turnId,`${c}.turnId`),v=s.runId===void 0?void 0:e.ids.id("run",s.runId,`${c}.runId`),w=(n.get(u)??[]).sort((N,D)=>N.ordinal-D.ordinal),k=y_(s.partIds,`${c}.partIds`).map(N=>e.ids.id("messagePart",N,`${c}.partIds`)),P=w.map(N=>N.id);if(!xN(k,P))throw new m("IMPORT_INVALID",`${c}.partIds do not match imported message parts`);return{id:u,conversationId:e.conversationId,branchId:e.ids.id("branch",s.branchId,`${c}.branchId`),role:xe(s.role,["user","assistant"],`${c}.role`),text:fr(s.text,`${c}.text`),partIds:k,parts:EN(e.ids,s.parts,`${c}.parts`),...s.partsTruncated===void 0?{}:{partsTruncated:jt(s.partsTruncated,`${c}.partsTruncated`)},status:g,...p===void 0?{}:{turnId:p},...v===void 0?{}:{runId:v},createdAt:B(s.createdAt,`${c}.createdAt`),updatedAt:B(s.updatedAt,`${c}.updatedAt`),complete:f&&m_.has(g),...Ie("missingHistory",kN(e.ids,s.missingHistory,`${c}.missingHistory`))}}),r=new Set(o.map(s=>s.id)),i=t.find(s=>!r.has(s.messageId));if(i)throw new m("IMPORT_INVALID",`Message part ${i.id} has no message`);let a=e.turns.map((s,d)=>{let c=`turns[${d}]`;Ut(s.conversationId,e.sourceConversationId,`${c}.conversationId`);let u=xe(s.status,bN,`${c}.status`),l=y_(s.runIds,`${c}.runIds`).map(g=>e.ids.id("run",g,`${c}.runIds`)),f=s.selectedRunId===void 0?void 0:e.ids.id("run",s.selectedRunId,`${c}.selectedRunId`);return{id:e.ids.id("turn",s.id,`${c}.id`),conversationId:e.conversationId,branchId:e.ids.id("branch",s.branchId,`${c}.branchId`),userMessageId:e.ids.id("message",s.userMessageId,`${c}.userMessageId`),runIds:l,...f===void 0?{}:{selectedRunId:f},status:wN.has(u)?u:"unknown",createdAt:B(s.createdAt,`${c}.createdAt`),updatedAt:B(s.updatedAt,`${c}.updatedAt`)}});return{messages:o,messageParts:t,turns:a}}function SN(e,t,n){let o={id:e.id("messagePart",t.id,`${n}.id`),messageId:e.id("message",t.messageId,`${n}.messageId`),ordinal:Rt(t.ordinal,`${n}.ordinal`),createdAt:B(t.createdAt,`${n}.createdAt`),updatedAt:B(t.updatedAt,`${n}.updatedAt`)},r=B(t.kind,`${n}.kind`);switch(r){case"text":case"reasoning":return{...o,kind:r,text:fr(t.text,`${n}.text`)};case"tool-call":return{...o,kind:r,name:B(t.name,`${n}.name`),arguments:ge(t.arguments,`${n}.arguments`),...Ie("callId",ae(t.callId,`${n}.callId`)),status:xe(t.status,["pending","running","completed","failed"],`${n}.status`)};case"tool-result":return{...o,kind:r,...Ie("callId",ae(t.callId,`${n}.callId`)),summary:B(t.summary,`${n}.summary`),...t.output===void 0?{}:{output:t.output},status:xe(t.status,["completed","failed"],`${n}.status`)};case"artifact":return{...o,kind:r,artifactId:e.id("artifact",t.artifactId,`${n}.artifactId`),summary:B(t.summary,`${n}.summary`)};case"file":{let i=ae(t.path,`${n}.path`),a=ae(t.filename,`${n}.filename`);return{...o,kind:r,...Ie("path",i),...Ie("filename",a),...Ie("mediaType",ae(t.mediaType,`${n}.mediaType`))}}case"image":return{...o,kind:r,...t.artifactId===void 0?{}:{artifactId:e.id("artifact",t.artifactId,`${n}.artifactId`)},...Ie("mediaType",ae(t.mediaType,`${n}.mediaType`)),...Ie("altText",ae(t.altText,`${n}.altText`))};case"warning":return{...o,kind:r,message:B(t.message,`${n}.message`)};case"error":return{...o,kind:r,message:B(t.message,`${n}.message`),retryable:jt(t.retryable,`${n}.retryable`)};case"unknown":return{...o,kind:r,namespace:B(t.namespace,`${n}.namespace`),type:B(t.type,`${n}.type`),summary:B(t.summary,`${n}.summary`)};default:throw new m("IMPORT_INVALID",`${n}.kind is unsupported`)}}function EN(e,t,n){if(!Array.isArray(t))throw new m("IMPORT_INVALID",`${n} must be an array`);let o=t.map((i,a)=>{let s=`${n}[${a}]`,d=ge(i,s),c=B(d.id,`${s}.id`),u=_N(d.source,`${s}.source`),l=d.metadata===void 0?void 0:ge(d.metadata,`${s}.metadata`);return{id:e.derived("messagePart",`${s}:${c}`),kind:xe(d.kind,RN,`${s}.kind`),...Ie("text",g_(d.text,`${s}.text`)),...Ie("status",ae(d.status,`${s}.status`)),...Ie("toolName",ae(d.toolName,`${s}.toolName`)),...Ie("callId",ae(d.callId,`${s}.callId`)),...d.input===void 0?{}:{input:d.input},...d.result===void 0?{}:{result:d.result},...Ie("error",g_(d.error,`${s}.error`)),...d.artifactId===void 0?{}:{artifactId:e.derived("artifact",`${s}:${B(d.artifactId,`${s}.artifactId`)}`)},...Ie("uri",ae(d.uri,`${s}.uri`)),...Ie("mimeType",ae(d.mimeType,`${s}.mimeType`)),...Ie("title",ae(d.title,`${s}.title`)),...Ie("metadata",l),...Ie("source",u)}}),r=new Set;for(let i of o){if(r.has(i.id))throw new m("IMPORT_INVALID",`${n} contains duplicate runtime part IDs`);r.add(i.id)}return o}function _N(e,t){if(e===void 0)return;let n=ge(e,t);return{...Ie("eventId",ae(n.eventId,`${t}.eventId`)),...n.sequence===void 0?{}:{sequence:Rt(n.sequence,`${t}.sequence`)},...Ie("cursor",ae(n.cursor,`${t}.cursor`)),...n.occurredAt===void 0?{}:{occurredAt:Nc(n.occurredAt,`${t}.occurredAt`)}}}function g_(e,t){return e===void 0?void 0:fr(e,t)}function y_(e,t){if(!Array.isArray(e)||!e.every(n=>typeof n=="string"))throw new m("IMPORT_INVALID",`${t} must be a text array`);return e}function Ie(e,t){return t===void 0?{}:{[e]:t}}function xN(e,t){return e.length===t.length&&e.every(n=>t.includes(n))}function kN(e,t,n){if(t===void 0)return;let o=ge(t,n),r=Rt(o.fromSequence,`${n}.fromSequence`),i=o.toSequence===void 0?void 0:Rt(o.toSequence,`${n}.toSequence`);if(i!==void 0&&i<r)throw new m("IMPORT_INVALID",`${n}.toSequence must not precede fromSequence`);return{runId:e.id("run",o.runId,`${n}.runId`),fromSequence:r,...Ie("toSequence",i),reason:xe(o.reason,["gap","expired-cursor","provider-missing","replay-unsupported"],`${n}.reason`)}}var AN=new Set(["sequence","callId","callRef","path","model","provider","route","inputTokens","outputTokens","cachedTokens","cacheWriteTokens","tokensKnown","cost","latencyMs","outcome","responseStatus","failureCode","startedAt","endedAt"]),TN=new Set(["status","usd"]),$N=new Set(["[redacted]","[redacted credential]","[redacted secret]"]);function w_(e,t){if(e!==void 0){if(!Array.isArray(e))throw dt(`${t} must be an array`);return Object.freeze(e.map((n,o)=>CN(n,`${t}[${o}]`)))}}function CN(e,t){let n=v_(e,t);I_(n,AN,t);let o=v_(n.cost,`${t}.cost`);I_(o,TN,`${t}.cost`);let r=uh(o.status,["observed","estimated","unknown"],`${t}.cost.status`),i=jc(o.usd,`${t}.cost.usd`);if(r==="unknown"&&i!==void 0)throw dt(`${t}.cost.usd must be absent when cost.status is unknown`);if(r!=="unknown"&&i===void 0)throw dt(`${t}.cost.usd is required when cost.status is ${r}`);let a=uh(n.path,["/v1/chat/completions","/v1/responses","unknown-path"],`${t}.path`),s=uh(n.outcome,["succeeded","failed"],`${t}.outcome`),d=n.tokensKnown;if(typeof d!="boolean")throw dt(`${t}.tokensKnown must be boolean`);let c=PN(n.sequence,`${t}.sequence`),u=jc(n.inputTokens,`${t}.inputTokens`),l=jc(n.outputTokens,`${t}.outputTokens`);if(d&&(u===void 0||l===void 0))throw dt(`${t} known tokens require inputTokens and outputTokens`);let f=ON(n.responseStatus,`${t}.responseStatus`);return Object.freeze({sequence:c,callId:Dc(n.callId,`${t}.callId`),callRef:Dc(n.callRef,`${t}.callRef`),path:a,model:Dc(n.model,`${t}.model`),...dh("provider",n.provider,t),...dh("route",n.route,t),...u===void 0?{}:{inputTokens:u},...l===void 0?{}:{outputTokens:l},...ch("cachedTokens",n.cachedTokens,t),...ch("cacheWriteTokens",n.cacheWriteTokens,t),tokensKnown:d,cost:Object.freeze({status:r,...i===void 0?{}:{usd:i}}),...ch("latencyMs",n.latencyMs,t),outcome:s,...f===void 0?{}:{responseStatus:f},...dh("failureCode",n.failureCode,t),...b_("startedAt",n.startedAt,t),...b_("endedAt",n.endedAt,t)})}function ON(e,t){if(!(e===void 0||Uc(e))){if(typeof e!="number"||!Number.isSafeInteger(e)||e<100||e>599)throw dt(`${t} must be an HTTP status code`);return e}}function v_(e,t){if(e===null||typeof e!="object"||Array.isArray(e))throw dt(`${t} must be an object`);return e}function I_(e,t,n){for(let o of Object.keys(e))if(!t.has(o))throw dt(`${n}.${o} is not supported`)}function Dc(e,t){let n=U(e);if(n===void 0)throw dt(`${t} must be a safe public identifier`);return n}function dh(e,t,n){return t===void 0||Uc(t)?{}:{[e]:Dc(t,`${n}.${e}`)}}function ch(e,t,n){let o=jc(t,`${n}.${e}`);return o===void 0?{}:{[e]:o}}function b_(e,t,n){if(t===void 0||Uc(t))return{};if(!Y(t))throw dt(`${n}.${e} must be a canonical ISO timestamp`);return{[e]:t}}function jc(e,t){if(!(e===void 0||Uc(e))){if(typeof e!="number"||!Number.isFinite(e)||e<0)throw dt(`${t} must be a non-negative number`);return e}}function PN(e,t){if(typeof e!="number"||!Number.isSafeInteger(e)||e<=0)throw dt(`${t} must be a positive integer`);return e}function uh(e,t,n){if(typeof e!="string"||!t.includes(e))throw dt(`${n} is unsupported`);return e}function Uc(e){return typeof e=="string"&&$N.has(e)}function dt(e){return new m("IMPORT_INVALID",e)}var NN=["prepared","starting","running","waiting","detached","reconnecting","cancelling","completed","cancelled","failed","expired","unknown","streaming","aborted","blocked"],R_=new Set(["completed","cancelled","failed","expired","unknown","aborted","blocked"]),DN=["preparing","running","completed","cancelled","failed","unknown"],jN=new Set(["completed","cancelled","failed","unknown"]),UN=["approval","rejection","revision","retry","fork","selection","automation"];function E_(e){let t=e.runs.map((r,i)=>LN(e,r,`runs[${i}]`)),n=e.analyses.map((r,i)=>BN(e,r,`analyses[${i}]`)),o=e.feedbackDecisions.map((r,i)=>{let a=`feedbackDecisions[${i}]`;return Ut(r.conversationId,e.sourceConversationId,`${a}.conversationId`),{id:e.ids.id("feedbackDecision",r.id,`${a}.id`),conversationId:e.conversationId,category:xe(r.category,UN,`${a}.category`),chosenOption:B(r.chosenOption,`${a}.chosenOption`),...X("feedback",ae(r.feedback,`${a}.feedback`)),automated:jt(r.automated,`${a}.automated`),createdAt:B(r.createdAt,`${a}.createdAt`)}});return{runs:t,analyses:n,feedbackDecisions:o}}function LN(e,t,n){let o=e.ids.id("run",t.id,`${n}.id`);Ut(t.conversationId,e.sourceConversationId,`${n}.conversationId`);let r=e.ids.id("turn",t.turnId,`${n}.turnId`),i=e.ids.id("branch",t.branchId,`${n}.branchId`),a=xe(t.status,NN,`${n}.status`),s=R_.has(a)?a:"unknown",d=zN(t.receipt,{runId:o,turnId:r,operationId:e.operationId,conversationId:e.conversationId,branchId:i,fallbackProfile:e.fallbackProfile,label:`${n}.receipt`}),c=jt(t.complete,`${n}.complete`),u=ae(t.terminalAt,`${n}.terminalAt`),l=HN(t.missingSequence,`${n}.missingSequence`);return{id:o,conversationId:e.conversationId,branchId:i,turnId:r,operationId:e.operationId,status:s,inputTokens:Cn(t.inputTokens,`${n}.inputTokens`),outputTokens:Cn(t.outputTokens,`${n}.outputTokens`),...X("tokensKnown",S_(t.tokensKnown,`${n}.tokensKnown`)),...X("reasoningTokens",Se(t.reasoningTokens,`${n}.reasoningTokens`)),...X("costUsd",Se(t.costUsd,`${n}.costUsd`)),...X("usdKnown",S_(t.usdKnown,`${n}.usdKnown`)),...X("estimatedCostUsd",Se(t.estimatedCostUsd,`${n}.estimatedCostUsd`)),...X("promptCache",MN(t.promptCache,`${n}.promptCache`)),...X("llmCalls",Se(t.llmCalls,`${n}.llmCalls`)),...X("llmLatencyMs",Se(t.llmLatencyMs,`${n}.llmLatencyMs`)),...X("model",ae(t.model,`${n}.model`)),...X("error",ae(t.error,`${n}.error`)),receipt:d,capabilities:ot,...X("terminalReason",ae(t.terminalReason,`${n}.terminalReason`)),lastProviderSequence:0,eventCount:Rt(t.eventCount,`${n}.eventCount`),...X("contentBytes",Se(t.contentBytes,`${n}.contentBytes`)),...t.contentTruncated===void 0?{}:{contentTruncated:jt(t.contentTruncated,`${n}.contentTruncated`)},...X("missingSequence",l),interactions:[],activity:[],eventDetails:[],...lh(t.interactions)||t.interactionsTruncated===!0?{interactionsTruncated:!0}:{},...lh(t.activity)||t.activityTruncated===!0?{activityTruncated:!0}:{},...lh(t.eventDetails)||t.eventDetailsTruncated===!0?{eventDetailsTruncated:!0}:{},complete:c&&R_.has(s),startedAt:B(t.startedAt,`${n}.startedAt`),updatedAt:B(t.updatedAt,`${n}.updatedAt`),...X("terminalAt",u)}}function S_(e,t){if(e!==void 0){if(e!==!1)throw new m("IMPORT_INVALID",`${t} must be false when present`);return!1}}function MN(e,t){if(e===void 0)return;let n=ge(e,t),o={};for(let[r,i]of Object.entries(n))o[r]=Cn(i,`${t}.${r}`);return Object.freeze(o)}function zN(e,t){let n=ge(e,t.label),o=ge(n.requested,`${t.label}.requested`),r;try{r=o.profile===void 0?t.fallbackProfile:Te(o.profile)}catch{throw new m("IMPORT_INVALID",`${t.label}.requested.profile is invalid`)}return _t({runId:t.runId,turnId:t.turnId,operationId:t.operationId,conversationId:t.conversationId,branchId:t.branchId,admittedAt:Nc(n.admittedAt,`${t.label}.admittedAt`),profile:r,text:fr(o.text,`${t.label}.requested.text`),capabilities:ot,warnings:["IMPORTED_OFFLINE"],admissionStatus:"unavailable"})}function BN(e,t,n){let o=ge(t.source,`${n}.source`);Ut(o.conversationId,e.sourceConversationId,`${n}.source.conversationId`);let r=e.ids.id("branch",o.branchId,`${n}.source.branchId`),i=o.runId===void 0?void 0:e.ids.id("run",o.runId,`${n}.source.runId`),a=o.throughMessageId===void 0?void 0:e.ids.id("message",o.throughMessageId,`${n}.source.throughMessageId`),s=jt(o.complete,`${n}.source.complete`),d;try{d=rn(o.digest)}catch{throw new m("IMPORT_INVALID",`${n}.source.digest is invalid`)}let c=R({importedFrom:d,conversationId:e.conversationId,branchId:r,runId:i??null,throughMessageId:a??null,complete:s}),u=xe(t.status,DN,`${n}.status`),l=t.findings;if(!Array.isArray(l))throw new m("IMPORT_INVALID",`${n}.findings must be an array`);let f=l.map((g,p)=>qN(e.ids,g,`${n}.findings[${p}]`));return{id:e.ids.id("analysis",t.id,`${n}.id`),source:{conversationId:e.conversationId,branchId:r,...X("runId",i),...X("throughMessageId",a),digest:c,complete:s,...X("missingHistory",ZN(e.ids,o.missingHistory,`${n}.source.missingHistory`))},...X("question",ae(t.question,`${n}.question`)),...X("recipe",ae(t.recipe,`${n}.recipe`)),status:jN.has(u)?u:"unknown",findings:f,...X("modelCalls",w_(t.modelCalls,`${n}.modelCalls`)),...X("usage",VN(t.usage,`${n}.usage`)),...X("costUsd",Se(t.costUsd,`${n}.costUsd`)),...X("wallTimeMs",Se(t.wallTimeMs,`${n}.wallTimeMs`)),createdAt:B(t.createdAt,`${n}.createdAt`),updatedAt:B(t.updatedAt,`${n}.updatedAt`)}}function qN(e,t,n){let o=ge(t,n);if(!Array.isArray(o.citations))throw new m("IMPORT_INVALID",`${n}.citations must be an array`);let r=Se(o.confidence,`${n}.confidence`);if(r!==void 0&&r>1)throw new m("IMPORT_INVALID",`${n}.confidence must not exceed one`);let i=o.citations.map((s,d)=>FN(e,s,`${n}.citations[${d}]`)),a=i.some(s=>s.messageId!==void 0||s.partId!==void 0);return{id:B(o.id,`${n}.id`),text:B(o.text,`${n}.text`),...o.severity===void 0?{}:{severity:xe(o.severity,["info","low","medium","high","critical"],`${n}.severity`)},...X("confidence",r),citations:i,supported:jt(o.supported,`${n}.supported`)&&a}}function FN(e,t,n){let o=ge(t,n);return{id:e.id("citation",o.id,`${n}.id`),...o.eventId===void 0?{}:{eventId:e.id("event",o.eventId,`${n}.eventId`)},...o.messageId===void 0?{}:{messageId:e.id("message",o.messageId,`${n}.messageId`)},...o.partId===void 0?{}:{partId:e.id("messagePart",o.partId,`${n}.partId`)},...X("start",Se(o.start,`${n}.start`)),...X("end",Se(o.end,`${n}.end`)),...o.quote===void 0?{}:{quote:fr(o.quote,`${n}.quote`)}}}function VN(e,t){if(e===void 0)return;let n=ge(e,t);return{input:Cn(n.input,`${t}.input`),output:Cn(n.output,`${t}.output`),...X("reasoning",Se(n.reasoning,`${t}.reasoning`)),...X("costUsd",Se(n.costUsd,`${t}.costUsd`)),...X("model",ae(n.model,`${t}.model`))}}function HN(e,t){if(e===void 0)return;let n=ge(e,t),o=Rt(n.from,`${t}.from`),r=Rt(n.to,`${t}.to`);if(r<o)throw new m("IMPORT_INVALID",`${t}.to must not precede from`);return{from:o,to:r}}function ZN(e,t,n){if(t===void 0)return;let o=ge(t,n),r=Rt(o.fromSequence,`${n}.fromSequence`),i=o.toSequence===void 0?void 0:Rt(o.toSequence,`${n}.toSequence`);if(i!==void 0&&i<r)throw new m("IMPORT_INVALID",`${n}.toSequence must not precede fromSequence`);return{runId:e.id("run",o.runId,`${n}.runId`),fromSequence:r,...X("toSequence",i),reason:xe(o.reason,["gap","expired-cursor","provider-missing","replay-unsupported"],`${n}.reason`)}}function lh(e){return Array.isArray(e)&&e.length>0}function X(e,t){return t===void 0?{}:{[e]:t}}function __(e){let t=new Map(e.branches.map(d=>[d.id,d])),n=new Map(e.turns.map(d=>[d.id,d])),o=new Map(e.runs.map(d=>[d.id,d])),r=new Map(e.messages.map(d=>[d.id,d])),i=new Map(e.messageParts.map(d=>[d.id,d]));if(!t.has(e.conversation.activeBranchId))throw new m("IMPORT_INVALID","Conversation import has no active branch");for(let d of e.branches){if(d.conversationId!==e.conversation.id)throw new m("IMPORT_INVALID",`Branch ${d.id} is outside the conversation`);if(d.source!==void 0){if(d.source.conversationId!==e.conversation.id||!t.has(d.source.branchId))throw new m("IMPORT_INVALID",`Branch ${d.id} has a missing source branch`);if(d.source.throughTurnId!==void 0&&!n.has(d.source.throughTurnId))throw new m("IMPORT_INVALID",`Branch ${d.id} has a missing source turn`)}}let a=new Set;for(let d of e.turns){if(d.conversationId!==e.conversation.id||!t.has(d.branchId))throw new m("IMPORT_INVALID",`Turn ${d.id} is outside the conversation`);let c=r.get(d.userMessageId);if(c===void 0||c.turnId!==d.id)throw new m("IMPORT_INVALID",`Turn ${d.id} has a missing user message`);for(let u of d.runIds){let l=o.get(u);if(l===void 0||l.turnId!==d.id)throw new m("IMPORT_INVALID",`Turn ${d.id} has a missing run`);a.add(u)}if(d.selectedRunId!==void 0&&!d.runIds.includes(d.selectedRunId))throw new m("IMPORT_INVALID",`Turn ${d.id} selects a run outside the turn`)}for(let d of e.runs)if(d.conversationId!==e.conversation.id||!t.has(d.branchId)||!n.has(d.turnId)||!a.has(d.id))throw new m("IMPORT_INVALID",`Run ${d.id} is not attached to an imported turn`);let s=new Set([`workspace:${e.conversation.workspaceId}`,`conversation:${e.conversation.id}`,...e.branches.map(d=>`branch:${d.id}`),...e.turns.map(d=>`turn:${d.id}`),...e.runs.map(d=>`run:${d.id}`),...e.messages.map(d=>`message:${d.id}`),...e.analyses.map(d=>`analysis:${d.id}`)]);for(let d of e.analyses){if(d.source.conversationId!==e.conversation.id||!t.has(d.source.branchId))throw new m("IMPORT_INVALID",`Analysis ${d.id} references a missing branch`);if(d.source.runId!==void 0&&!o.has(d.source.runId))throw new m("IMPORT_INVALID",`Analysis ${d.id} references a missing run`);if(d.source.missingHistory!==void 0&&!o.has(d.source.missingHistory.runId))throw new m("IMPORT_INVALID",`Analysis ${d.id} has a missing history run`);if(d.source.throughMessageId!==void 0&&!r.has(d.source.throughMessageId))throw new m("IMPORT_INVALID",`Analysis ${d.id} references a missing message`);for(let c of d.findings.flatMap(u=>u.citations)){if(c.messageId!==void 0&&!r.has(c.messageId))throw new m("IMPORT_INVALID",`Analysis ${d.id} has a dangling citation`);if(c.partId!==void 0&&!i.has(c.partId))throw new m("IMPORT_INVALID",`Analysis ${d.id} has a dangling citation part`);if(c.messageId!==void 0&&c.partId!==void 0&&i.get(c.partId)?.messageId!==c.messageId)throw new m("IMPORT_INVALID",`Analysis ${d.id} has a citation whose message and part disagree`)}}for(let d of e.messages){if(d.conversationId!==e.conversation.id||!t.has(d.branchId))throw new m("IMPORT_INVALID",`Message ${d.id} is outside the conversation`);if(d.turnId!==void 0&&!n.has(d.turnId))throw new m("IMPORT_INVALID",`Message ${d.id} has a missing turn`);if(d.runId!==void 0&&!o.has(d.runId))throw new m("IMPORT_INVALID",`Message ${d.id} has a missing run`);if(d.missingHistory!==void 0&&!o.has(d.missingHistory.runId))throw new m("IMPORT_INVALID",`Message ${d.id} has a missing history run`)}for(let d of e.graphNodes)if(!s.has(`${d.reference.kind}:${d.reference.id}`))throw new m("IMPORT_INVALID",`Graph node ${d.id} references missing imported data`)}function x_(e,t){try{for(let n of t.branches)zn(e,n.id)}catch(n){let o=n instanceof Error?n.message:"invalid branch ancestry";throw new m("IMPORT_INVALID",`Conversation import cannot be navigated: ${o}`)}}function k_(e,t){let n=[["conversation",e.conversations,[t.conversation]],["branch",e.branches,t.branches],["draft",e.drafts,t.drafts],["queue",e.queues,t.queues],["message",e.messages,t.messages],["message part",e.messageParts,t.messageParts],["turn",e.turns,t.turns],["run",e.runs,t.runs],["analysis",e.analyses,t.analyses],["feedback",e.feedbackDecisions,t.feedbackDecisions]];for(let[a,s,d]of n){let c=new Set(s.map(u=>u.id));if(d.some(u=>c.has(u.id)))throw new m("IMPORT_ID_COLLISION",`Imported ${a} ID already exists`)}let o=e.workspaceId===null?void 0:To({kind:"workspace",id:e.workspaceId}),r=new Set(e.graphNodes.map(a=>a.id));if(t.graphNodes.some(a=>a.id!==o&&r.has(a.id)))throw new m("IMPORT_ID_COLLISION","Imported graph node ID already exists");let i=new Set(e.graphEdges.map(a=>a.id));if(t.graphEdges.some(a=>i.has(a.id)))throw new m("IMPORT_ID_COLLISION","Imported graph edge ID already exists")}function A_(e){sn(e.state,"Conversation import");let t=Bn(e.state),n=e.prepared.document.content,o=ge(n.conversation,"content.conversation"),r=WN(o.id,e.prepared.document.conversationId);if(o.deletedAt!==void 0)throw new m("IMPORT_INVALID","Deleted conversations cannot be imported");let i=c_(e.operationId,e.prepared.contentDigest),a=i.id("conversation",r,"content.conversation.id"),s=wt(n.branches,"branch","content.branches");if(s.length===0)throw new m("IMPORT_INVALID","Conversation import contains no branches");let d=s.map((P,N)=>KN(P,N,i,r,a)),c=i.id("branch",o.activeBranchId,"content.conversation.activeBranchId"),u=ge(o.retention,"content.conversation.retention"),l={id:a,workspaceId:t,title:zt(e.title,B(o.title,"content.conversation.title")),activeBranchId:c,createdAt:B(o.createdAt,"content.conversation.createdAt"),updatedAt:B(o.updatedAt,"content.conversation.updatedAt"),archived:!1,retention:{...Vi("completedRunDays",Se(u.completedRunDays,"content.conversation.retention.completedRunDays")),...Vi("traceDays",Se(u.traceDays,"content.conversation.retention.traceDays")),...Vi("analysisDays",Se(u.analysisDays,"content.conversation.retention.analysisDays")),...Vi("toolOutputBytes",Se(u.toolOutputBytes,"content.conversation.retention.toolOutputBytes")),...Vi("cacheBytes",Se(u.cacheBytes,"content.conversation.retention.cacheBytes"))}},f=d.map(P=>({id:P.draftId,branchId:P.id,text:"",updatedAt:e.at})),g=d.map(P=>({id:P.queueId,branchId:P.id,entryIds:[],createdAt:e.at,updatedAt:e.at})),p=h_({ids:i,sourceConversationId:r,conversationId:a,messages:wt(n.messages,"message","content.messages"),messageParts:wt(n.messageParts,"messagePart","content.messageParts"),turns:wt(n.turns,"turn","content.turns")}),v=E_({ids:i,sourceConversationId:r,conversationId:a,operationId:e.operationId,fallbackProfile:e.state.profile,runs:wt(n.runs,"run","content.runs"),analyses:wt(n.analyses,"analysis","content.analyses"),feedbackDecisions:wt(n.feedbackDecisions,"feedbackDecision","content.feedbackDecisions")}),w=f_({state:e.state,content:n,ids:i,workspaceId:t,conversation:l,branches:d,analyses:v.analyses,sourceContentDigest:e.prepared.contentDigest,at:e.at}),k={kind:"conversation.imported",conversation:l,branches:d,drafts:f,queues:g,messages:p.messages,messageParts:p.messageParts,turns:p.turns,runs:v.runs,analyses:v.analyses,graphNodes:w.nodes,graphEdges:w.edges,feedbackDecisions:v.feedbackDecisions,sourceContentDigest:e.prepared.contentDigest,operation:Qe({id:e.operationId,kind:"conversation-import",digest:e.requestDigest,at:e.at,target:{kind:"conversation",id:l.id},result:{contentDigest:e.prepared.contentDigest,bytes:e.prepared.bytes}})};if(Buffer.byteLength(J(k),"utf8")>rv)throw new m("IMPORT_TOO_LARGE","Expanded conversation import exceeds 4 MiB");k_(e.state,k),__(k);try{let P=tc(e.state,k);x_(P,k),Zt(P)}catch(P){throw P instanceof ye?new m("IMPORT_INVALID",`Conversation import is inconsistent: ${P.message}`):P}return k}function KN(e,t,n,o,r){let i=`content.branches[${t}]`,a=B(e.id,`${i}.id`);Ut(e.conversationId,o,`${i}.conversationId`);let s=n.id("branch",a,`${i}.id`),d=e.source===void 0?void 0:ge(e.source,`${i}.source`);return d!==void 0&&Ut(d.conversationId,o,`${i}.source.conversationId`),{id:s,conversationId:r,...d===void 0?{}:{source:{conversationId:r,branchId:n.id("branch",d.branchId,`${i}.source.branchId`),...d.throughMessageId===void 0?{}:{throughMessageId:n.id("message",d.throughMessageId,`${i}.source.throughMessageId`)},...d.throughTurnId===void 0?{}:{throughTurnId:n.id("turn",d.throughTurnId,`${i}.source.throughTurnId`)}}},overrides:{},draftId:n.derived("draft",`branch:${a}`),queueId:n.derived("queue",`branch:${a}`),...e.tipMessageId===void 0?{}:{tipMessageId:n.id("message",e.tipMessageId,`${i}.tipMessageId`)},status:xe(e.status,["active","preparing","failed-preparation","archived"],`${i}.status`)==="archived"?"archived":"active",createdAt:B(e.createdAt,`${i}.createdAt`),updatedAt:B(e.updatedAt,`${i}.updatedAt`)}}function WN(e,t){let n;try{n=G(e)}catch{throw new m("IMPORT_INVALID","Conversation import identifier is invalid")}if(n!==t)throw new m("IMPORT_INVALID","Conversation import identifier does not match its content");return n}function Vi(e,t){return t===void 0?{}:{[e]:t}}import{resolve as JN}from"node:path";var C_=24,GN=new Set(["schemaVersion","format","exportedAt","conversationId","content","contentDigest","redacted","externalControlsDisabled"]),T_=new Set(["conversation","branches","messages","messageParts","turns","runs","analyses","graphNodes","graphEdges","feedbackDecisions"]),XN=new Set(["__proto__","prototype","constructor"]);function O_(e){let t=YN(e);e.source!==void 0&&t.endsWith(`
337
- `)&&(t=t.slice(0,-1),t.endsWith("\r")&&(t=t.slice(0,-1)));let n=Buffer.byteLength(t,"utf8");if(n>Yt)throw new m("IMPORT_TOO_LARGE","Conversation import exceeds 2 MiB");let o;try{o=JSON.parse(t)}catch{throw new m("IMPORT_INVALID_JSON","Conversation import is not valid JSON")}eD(o);let r=QN(o),i;try{i=R(r.content)}catch{throw new m("IMPORT_INVALID","Conversation import content is not canonical JSON")}if(i!==r.contentDigest)throw new m("IMPORT_DIGEST_MISMATCH","Conversation import checksum does not match");let a;try{a=sa(r.content,void 0,{maxDepth:C_,maxItems:Pc,maxBytes:Yt})}catch{throw new m("IMPORT_TOO_COMPLEX","Conversation import exceeds structural limits")}if(R(a)!==i)throw new m("IMPORT_REDACTION_REQUIRED","Conversation import contains unsafe data");return{document:r,contentDigest:i,bytes:n}}function YN(e){let t=e.content!==void 0,n=e.source!==void 0;if(t===n)throw new m("IMPORT_SOURCE_REQUIRED","Provide exactly one import content or source path");if(e.content!==void 0)return e.content;if(e.source?.trim().length===0)throw new m("IMPORT_SOURCE_REQUIRED","Conversation import source path is empty");try{let o=ma(JN(e.source),Yt+1);if(o===void 0)throw new m("IMPORT_NOT_FOUND","Conversation import file was not found");return o.toString("utf8")}catch(o){if(o instanceof m)throw o;let r=o instanceof Error?o.message:"";throw/too large/iu.test(r)?new m("IMPORT_TOO_LARGE","Conversation import exceeds 2 MiB"):new m("IMPORT_SOURCE_UNSAFE","Conversation import file could not be read safely")}}function QN(e){let t=ph(e,"Conversation import");if($_(t,GN,"Conversation import"),t.schemaVersion!==2||t.format!=="braid-conversation")throw new m("IMPORT_UNSUPPORTED","Conversation import format or version is unsupported");if(!Y(t.exportedAt))throw new m("IMPORT_INVALID","Conversation import timestamp is invalid");if(typeof t.conversationId!="string")throw new m("IMPORT_INVALID","Conversation import identifier is invalid");if(t.redacted!==!0||t.externalControlsDisabled!==!0)throw new m("IMPORT_UNSAFE","Conversation import must be redacted with controls disabled");let n=ph(t.content,"Conversation import content");$_(n,T_,"Conversation import content");for(let r of T_)if(r!=="conversation"&&!Array.isArray(n[r]))throw new m("IMPORT_INVALID",`Conversation import content.${r} must be an array`);ph(n.conversation,"Conversation import conversation");let o;try{o=rn(t.contentDigest)}catch{throw new m("IMPORT_INVALID","Conversation import checksum is invalid")}return{schemaVersion:2,format:"braid-conversation",exportedAt:t.exportedAt,conversationId:t.conversationId,content:n,contentDigest:o,redacted:!0,externalControlsDisabled:!0}}function eD(e){let t=[{value:e,depth:0}],n=0;for(;t.length>0;){let o=t.pop();if(!o)break;if(o.depth>C_)throw new m("IMPORT_TOO_COMPLEX","Conversation import nesting is too deep");if(o.value===null||typeof o.value!="object"){if(typeof o.value=="number"&&!Number.isFinite(o.value))throw new m("IMPORT_INVALID","Conversation import contains a non-finite number");continue}let r=Array.isArray(o.value)?o.value.map((i,a)=>[String(a),i]):Object.entries(o.value);if(n+=r.length,n>Pc)throw new m("IMPORT_TOO_COMPLEX","Conversation import contains too many items");for(let[i,a]of r){if(XN.has(i))throw new m("IMPORT_INVALID","Conversation import contains a forbidden object key");t.push({value:a,depth:o.depth+1})}}}function ph(e,t){if(e===null||typeof e!="object"||Array.isArray(e))throw new m("IMPORT_INVALID",`${t} must be an object`);return e}function $_(e,t,n){let o=Object.keys(e).find(i=>!t.has(i));if(o!==void 0)throw new m("IMPORT_INVALID",`${n} contains unknown field ${o}`);let r=[...t].find(i=>e[i]===void 0);if(r!==void 0)throw new m("IMPORT_INVALID",`${n} is missing field ${r}`)}var Lc=class{#e;constructor(t){this.#e=t}async import(t){let n=Be(t.operationId,"import"),o=t.title===void 0?void 0:zt(t.title),r=nD(t),i=ze("conversation-import",{source:r,title:o??null}),a={operationId:t.operationId,source:r,...o===void 0?{}:{title:o}};return je(this.#e,"import",a,async()=>this.#t(t,n,i,o))}async#t(t,n,o,r){let i=this.#e.state(),a=Ye(i,n,"conversation-import",o);if(a!==void 0){if(a.target?.kind!=="conversation")throw new m("IMPORT_REPLAY_INVALID","Conversation import replay has no target");let c=rD(a.result);return P_(i,a.target.id,c.contentDigest,c.bytes,!0)}let s=O_(t),d=A_({state:i,prepared:s,operationId:n,requestDigest:o,at:this.#e.now(),...r===void 0?{}:{title:r}});return await this.#e.commit(d),P_(this.#e.state(),d.conversation.id,s.contentDigest,s.bytes,!1)}};function nD(e){let t=e.content!==void 0,n=e.source!==void 0;if(t===n)throw new m("IMPORT_SOURCE_REQUIRED","Provide exactly one import content or source path");if(e.content!==void 0){if(Buffer.byteLength(e.content,"utf8")>Yt)throw new m("IMPORT_TOO_LARGE","Conversation import exceeds 2 MiB");return{inlineDigest:R(e.content)}}let o=e.source?.trim();if(!o)throw new m("IMPORT_SOURCE_REQUIRED","Conversation import source path is empty");return{source:tD(o)}}function rD(e){try{let t=rn(e?.contentDigest),n=e?.bytes;if(typeof n!="number"||!Number.isSafeInteger(n)||n<0)throw new Error("invalid byte count");return{contentDigest:t,bytes:n}}catch{throw new m("IMPORT_REPLAY_INVALID","Conversation import replay metadata is invalid")}}function P_(e,t,n,o,r){let i=e.conversations.find(u=>u.id===t);if(!i||i.deletedAt!==void 0)throw new m("IMPORT_REPLAY_INVALID","Imported conversation is unavailable");let a=e.branches.filter(u=>u.conversationId===t),s=new Set(a.map(u=>u.id)),d=e.turns.filter(u=>u.conversationId===t),c=new Set(d.flatMap(u=>u.runIds));return{conversationId:t,contentDigest:n,bytes:o,branches:a.length,messages:e.messages.filter(u=>u.conversationId===t).length,runs:e.runs.filter(u=>c.has(u.id)).length,analyses:e.analyses.filter(u=>u.source.conversationId===t&&s.has(u.source.branchId)).length,replayed:r}}var Mc=class{#e;constructor(t){this.#e=t}list(t={}){let n=this.#e.state(),o=t.query?.trim().toLocaleLowerCase();return n.conversations.filter(r=>r.deletedAt!==void 0||t.workspace!==void 0&&n.workspaces.find(a=>a.id===r.workspaceId)?.root!==t.workspace||t.status==="active"&&r.archived||t.status==="archived"&&!r.archived?!1:!o||r.id.toLocaleLowerCase().includes(o)||r.title.toLocaleLowerCase().includes(o)?!0:n.branches.some(i=>i.conversationId===r.id&&[i.id,i.overrides.runner,i.overrides.model].some(a=>a?.toLocaleLowerCase().includes(o))))}async create(t){return je(this.#e,"new_conversation",t,()=>this.#t(t))}async#t(t){let n=this.#e.state(),o=Bn(n);sn(n,"Creating a conversation");let r=zt(t.title),i=Rv(n,t.profileId),a=Sv(n,t.connectionId),s=Be(t.operationId,"new_conversation"),d=ze("new_conversation",{title:r,profileId:i??null,connectionId:a??null,workspaceId:o}),c=Ye(n,s,"conversation-create",d);if(c)return mh(n,c);let u=$o(s,d),l=this.#e.now(),f=Fi({workspaceId:o,...u,title:r,at:l,operationId:s,...i===void 0?{}:{profileId:i},...a===void 0?{}:{connectionId:a}}),g=Qe({id:s,kind:"conversation-create",digest:d,at:l,target:{kind:"conversation",id:f.conversation.id}});return await this.#e.commit({kind:"conversation.created",...f,operation:g}),f.conversation}async open(t){return je(this.#e,"open_conversation",t,()=>this.#n(t))}async#n(t){let n=this.#e.state();sn(n,"Opening a conversation");let o=G(t.conversationId),r=fh(n,o),i=t.branchId===void 0?r.activeBranchId:hr(t.branchId);if(!n.branches.find(f=>f.id===i&&f.conversationId===o))throw new m("UNKNOWN_BRANCH",`Branch ${i} does not belong to ${o}`);let s=Be(t.operationId,"open_conversation"),d=ze("open_conversation",{conversationId:o,branchId:i}),c=Ye(n,s,"conversation-open",d);if(c)return mh(n,c);let u=this.#e.now(),l={...r,activeBranchId:i,updatedAt:u};return await this.#e.commit({kind:"conversation.selected",conversationId:o,branchId:i,conversation:l,operation:Qe({id:s,kind:"conversation-open",digest:d,at:u,target:{kind:"conversation",id:o}})}),l}async rename(t){return je(this.#e,"rename_conversation",t,()=>this.#r(t))}async#r(t){let n=zt(t.title);return this.#s(t,"conversation-update","rename_conversation",{title:n},(o,r)=>({...o,title:n,updatedAt:r}))}async archive(t){return je(this.#e,"archive_conversation",t,()=>this.#o(t))}async#o(t){return this.#s(t,"conversation-archive","archive_conversation",{archived:t.archived},(n,o)=>({...n,archived:t.archived,updatedAt:o}))}async delete(t){return je(this.#e,"delete_conversation",t,()=>this.#i(t))}async#i(t){let n=this.#e.state(),o=Bn(n),r=G(t.conversationId),i=Be(t.operationId,"delete_conversation"),a=ze("delete_conversation",{conversationId:r}),s=Ye(n,i,"conversation-delete",a);if(s){let k=n.conversations.find(P=>P.id===r);if(!k)throw new m("DELETE_INCOMPLETE",`Conversation ${r} is unavailable`);return s.status==="pending"&&await this.#a(i,a,k),k}let d=fh(n,r);oD(n,r);let c=this.#e.now(),u={...d,title:"Deleted conversation",archived:!0,deletedAt:c,updatedAt:c,retention:{}},f=n.conversations.find(k=>k.id===n.conversationId&&k.id!==r&&k.deletedAt===void 0)??n.conversations.find(k=>k.id!==r&&k.deletedAt===void 0),g=$o(i,a,"replacement"),p=f===void 0?Fi({workspaceId:o,...g,title:"New conversation",at:c,operationId:i,...n.selectedProfileId===null?{}:{profileId:n.selectedProfileId},...n.selectedConnectionId===null?{}:{connectionId:n.selectedConnectionId}}):void 0,v=f??p?.conversation;if(!v)throw new m("DELETE_INCOMPLETE","No replacement conversation was created");let w={id:i,kind:"conversation-delete",requestDigest:a,status:this.#e.destroy===void 0?"acknowledged":"pending",target:{kind:"conversation",id:r},createdAt:c,updatedAt:c,...this.#e.destroy===void 0?{acknowledgedAt:c}:{}};return await this.#e.commit({kind:"conversation.deleted",conversation:u,selectedConversation:v,...p===void 0?{graphNodes:[q({kind:"conversation",id:r},c,"Deleted conversation")]}:{replacementBranch:p.branch,replacementDraft:p.draft,replacementQueue:p.queue,graphNodes:[...p.graphNodes,q({kind:"conversation",id:r},c,"Deleted conversation")],graphEdges:p.graphEdges},operation:w}),this.#e.destroy!==void 0&&await this.#a(i,a,u),u}async reconcilePendingDeletes(){if(this.#e.destroy===void 0)return;let t=this.#e.state().operations.filter(n=>n.kind==="conversation-delete"&&n.status==="pending");for(let n of t){if(n.target?.kind!=="conversation")throw new m("DELETE_INCOMPLETE",`Operation ${n.id} has no conversation target`);let o=this.#e.state().conversations.find(r=>r.id===n.target?.id);if(o?.deletedAt===void 0)throw new m("DELETE_INCOMPLETE",`Operation ${n.id} has no tombstone`);await this.#a(n.id,n.requestDigest,o)}}async#s(t,n,o,r,i){let a=this.#e.state(),s=G(t.conversationId),d=fh(a,s),c=Be(t.operationId,o),u=ze(o,{conversationId:s,...r}),l=Ye(a,c,n,u);if(l)return mh(a,l);let f=i(d,this.#e.now()),g=f.updatedAt;return await this.#e.commit({kind:"conversation.updated",conversation:f,operation:Qe({id:c,kind:n,digest:u,at:g,target:{kind:"conversation",id:s}})}),f}async#a(t,n,o){await this.#e.destroy?.({conversationId:o.id,operationId:t});let r=this.#e.now();await this.#e.commit({kind:"operation.updated",operation:Qe({id:t,kind:"conversation-delete",digest:n,at:r,target:{kind:"conversation",id:o.id}})})}};function fh(e,t){let n=e.conversations.find(o=>o.id===t);if(!n||n.deletedAt!==void 0)throw new m("UNKNOWN_CONVERSATION",`Conversation ${t} is not available`);return n}function mh(e,t){if(t.target?.kind!=="conversation")throw new m("OPERATION_INCOMPLETE",`Operation ${t.id} has no conversation result`);let n=e.conversations.find(o=>o.id===t.target?.id);if(!n)throw new m("OPERATION_INCOMPLETE",`Operation ${t.id} has no durable result`);return n}function oD(e,t){let n=e.runs.find(i=>i.conversationId===t&&!i.complete);if(n)throw new m("DELETE_BLOCKED",`Run ${n.id} is not terminal`);let o=e.interactions.find(i=>i.status==="pending"&&e.runs.some(a=>a.id===i.runId&&a.conversationId===t));if(o)throw new m("DELETE_BLOCKED",`Interaction ${o.id} is still pending`);let r=e.branches.find(i=>i.conversationId!==t&&i.source?.conversationId===t);if(r)throw new m("DELETE_BLOCKED",`Branch ${r.id} still references this conversation`)}var zc=class{lifecycle;branches;context;drafts;exports;imports;constructor(t){this.lifecycle=new Mc(t),this.branches=new $c(t),this.context=new wv(t),this.drafts=new Cc(t),this.exports=new Oc(t),this.imports=new Lc(t)}};function N_(e){return new zc({state:e.state,now:e.now,commit:e.commit,coordinate:e.coordinate,...e.storage===void 0?{}:{destroy:async t=>{let n="User-requested conversation deletion",o={conversationId:t.conversationId,reasonDigest:R(n)};await e.storage?.destroyConversation({conversationId:G(t.conversationId),reason:n,operation:{operationId:we(t.operationId),kind:"conversation-delete",request:o,requestDigest:R(o)}})}}})}var Bc=class{#e=new Map;run(t,n,o){let r=this.#e.get(t);if(r!==void 0){if(r.digest!==n)throw new m("OPERATION_ID_CONFLICT",`Operation ${t} is already running with different input`);return r.promise}let i=Promise.resolve().then(o);this.#e.set(t,{digest:n,promise:i});let a=()=>{this.#e.get(t)?.promise===i&&this.#e.delete(t)};return i.then(a,a),i}};function j_(e){let t;return n=>{let o=e.currentState(),r=e.requestDigest(o,n),i=e.admitPersistedSend(n.operationId,r);if(i)return i;if(t){if(t.operationId!==n.operationId)throw new m("RUN_ACTIVE",`Run ${t.receipt.runId} is awaiting admission; queue the next input explicitly`);if(t.digest!==r)throw new m("OPERATION_CONFLICT",`Operation ${n.operationId} was already used with different input`);return aD(t.receipt)}let a=iD({input:n,state:o,currentState:e.currentState,ids:e.ids,restartReconciliation:e.restartReconciliation,transitionTail:e.transitionTail(),admitPersistedSend:e.admitPersistedSend,requestDigest:e.requestDigest,registerAdmission:e.registerAdmission,sendAsync:e.sendAsync}),s={operationId:n.operationId,digest:r,receipt:a};t=s;let d=()=>{t===s&&(t=void 0)};return a.admissionReady?.then(d,d),a}}function iD(e){let t=e.state,n=e.requestDigest(t,e.input),o=e.admitPersistedSend(e.input.operationId,n);if(o)return o;if(t.activeRunId)throw new m("RUN_ACTIVE",`Run ${t.activeRunId} is still active; queue the next input explicitly`);let r=e.ids.next("run"),i=e.ids.next("turn"),a=e.registerAdmission(r),s=Gy(e.input,r,i),d=s,c=e.restartReconciliation.then(()=>e.transitionTail).then(()=>D_(a.signal)).then(()=>e.sendAsync(e.input,{runId:r,turnId:i},a.signal)).then(l=>(D_(a.signal),d=l.admission,l)).catch(l=>{throw d={...s,admissionStatus:"unavailable"},l}).finally(()=>{a.release()}),u=c.then(l=>l.completion);return u.catch(()=>{}),{operationId:e.input.operationId,runId:r,revision:t.revision,replayed:!1,get admission(){return d},admissionReady:c.then(()=>{}),completion:u.then(()=>structuredClone(e.currentState()))}}function D_(e){if(e.aborted)throw new m("APPLICATION_CLOSING","Braid is closing and cannot materialize a run")}function aD(e){return{operationId:e.operationId,runId:e.runId,revision:e.revision,replayed:!0,get admission(){return e.admission},...e.admissionReady===void 0?{}:{admissionReady:e.admissionReady},completion:e.completion}}var sD={"run.execute":"send"};function U_(e){let t=e.detail===void 0&&e.externalReference===void 0?void 0:R({status:e.status,detail:e.detail??null,externalReference:e.externalReference??null});return{id:Xh(`effect-${e.operationId}-${e.requestDigest.slice(0,24)}`),operationId:we(e.operationId),effectKind:e.effectKind,requestDigest:e.requestDigest,kind:sD[e.effectKind]??"custom",status:e.status,attempt:e.attempt,...t===void 0?{}:{outcomeDigest:t},createdAt:e.createdAt,updatedAt:e.updatedAt}}var Hi=class{#e;constructor(t){this.#e=t}envelope(t,n){return{sequence:t.sequence+1,revision:t.revision+1,occurredAt:this.#e.now(),event:n}}append(){throw new Error("BRAID_STORAGE_REQUIRED: open the encrypted SQLite store before mutating state")}all(){return[]}current(){}latest(){}reserveEffect(){throw new Error("BRAID_STORAGE_REQUIRED: open the encrypted SQLite store before dispatching effects")}appendEffect(){throw new Error("BRAID_STORAGE_REQUIRED: open the encrypted SQLite store before dispatching effects")}history(){return[]}};async function de(e,t){try{if(e.commitAndWait!==void 0){await e.commitAndWait(t);return}await e.commit(t)}catch(n){throw n instanceof Co?n:new Co(`Durable analysis event '${t.kind}' could not be committed; the operation is left for restart reconciliation.`,n)}}var qc=class{#e;constructor(t){this.#e=t}async project(t){if(t.comparison===void 0)throw new Error("Comparison has no frozen snapshot");let n={kind:"analysis",id:t.id},o=t.comparison.baseline.runId?{kind:"run",id:t.comparison.baseline.runId}:{kind:"branch",id:t.comparison.baseline.branchId},r=t.comparison.candidate.runId?{kind:"run",id:t.comparison.candidate.runId}:{kind:"branch",id:t.comparison.candidate.branchId};await de(this.#e,{kind:"graph.node.upserted",node:q(n,t.createdAt)}),await de(this.#e,{kind:"graph.node.upserted",node:q(o,t.createdAt)}),await de(this.#e,{kind:"graph.node.upserted",node:q(r,t.createdAt)});let i={...t.operationId===void 0?{}:{operationId:t.operationId},sourceDigest:t.source.digest};await de(this.#e,{kind:"graph.edge.upserted",edge:re({kind:"compared_left",source:o,destination:n,at:t.createdAt,provenance:i})}),await de(this.#e,{kind:"graph.edge.upserted",edge:re({kind:"compared_right",source:r,destination:n,at:t.createdAt,provenance:{...i,sourceDigest:t.comparison.candidate.digest}})})}};var Zi=class extends Error{code;constructor(t,n){super(n),this.name="AnalysisOperationError",this.code=t}};function dD(e,t){return e!==void 0&&Gh(e)?Xe(e):Xe(`operation-analysis-${R({raw:e,input:t}).slice(0,40)}`)}function Io(e){let t=R({kind:e.kind,sourceDigests:e.sourceDigests,request:e.request}),n=dD(e.operationId,{kind:e.kind,sourceDigests:e.sourceDigests,requestDigest:t}),o=R({operationId:n,sourceDigests:e.sourceDigests,requestDigest:t});return{operationId:n,requestDigest:t,analysisId:zh(`analysis-${o.slice(0,40)}`),analysisRunId:Bh(`analysis-run-${o.slice(0,40)}`)}}var L_=new WeakMap;async function M_(e,t){let n=L_.get(e)??Promise.resolve(),o,r=new Promise(i=>{o=i});L_.set(e,n.catch(()=>{}).then(()=>r)),await n.catch(()=>{});try{return await t()}finally{o()}}async function bo(e,t){return M_(e,async()=>{let n=e.currentState().operations.find(i=>i.id===t.identity.operationId);if(n!==void 0){if(n.requestDigest!==t.identity.requestDigest||n.kind!==t.kind)throw new Zi("ANALYSIS_OPERATION_CONFLICT",`Operation ${String(t.identity.operationId)} was already reserved for a different request`);return{operation:n,created:!1}}let o=e.now(),r={id:t.identity.operationId,kind:t.kind,requestDigest:t.identity.requestDigest,status:"pending",target:{kind:"analysis",id:t.target},createdAt:o,updatedAt:o};return await de(e,{kind:"operation.requested",operation:r}),{operation:r,created:!0}})}async function Lt(e,t,n){let o=n.at??e.now(),r={...t,status:n.status,...n.result===void 0?{}:{result:n.result},...n.failureCode===void 0?{}:{failureCode:n.failureCode},...n.failureMessage===void 0?{}:{failureMessage:n.failureMessage},...n.terminalOutcome===void 0?{}:{terminalOutcome:n.terminalOutcome},...n.status==="acknowledged"||n.status==="terminal"?{acknowledgedAt:o}:{},updatedAt:o};return await de(e,{kind:"operation.updated",operation:r}),r}async function wo(e,t=new Set){await M_(e,async()=>{let n=e.currentState(),o=new Set([...t].map(r=>n.analyses.find(i=>String(i.id)===r)?.operationId).filter(r=>r!==void 0));for(let r of n.analyses){if(r.status!=="preparing"&&r.status!=="running"||t.has(String(r.id)))continue;let i={...r,status:"unknown",error:"Analysis was interrupted before its durable terminal result; retry with a new operation ID.",updatedAt:e.now()};if(await de(e,{kind:"analysis.updated",analysis:i}),r.operationId!==void 0){let a=e.currentState().operations.find(s=>s.id===r.operationId);a!==void 0&&a.status==="pending"&&await Lt(e,a,{status:"unknown",failureCode:"ANALYSIS_RESTARTED",...i.error===void 0?{}:{failureMessage:i.error},terminalOutcome:"unknown"})}}for(let r of e.currentState().operations)r.kind!=="analysis"&&r.kind!=="promote-analysis"||r.status!=="pending"||o.has(r.id)||await Lt(e,r,{status:"unknown",failureCode:"ANALYSIS_RESTARTED",failureMessage:"The durable operation was pending when the application restarted and cannot be replayed safely.",terminalOutcome:"unknown"})})}var Fc=class{#e;constructor(t){this.#e=t}async reconcile(){for(let t of this.#e.currentState().analyses)t.kind!=="comparison"||t.comparison===void 0||t.status!=="preparing"&&t.status!=="running"||await this.complete({...t,status:"completed",updatedAt:this.#e.now()});await wo(this.#e)}existing(t){let n=this.#e.currentState().analyses.find(o=>o.id===t.analysisId);if(n!==void 0){if(n.requestDigest!==void 0&&n.requestDigest!==t.requestDigest)throw new Error(`Comparison ${String(n.id)} has a conflicting request digest`);return n}}async reserve(t){return bo(this.#e,{identity:t,kind:"analysis",target:t.analysisId})}async create(t){await de(this.#e,{kind:"analysis.created",analysis:t})}async complete(t){await de(this.#e,{kind:"analysis.completed",analysis:t})}async finish(t){let n=this.#e.currentState().operations.find(o=>o.id===t.operationId);n===void 0||n.status==="terminal"||await Lt(this.#e,n,{status:"terminal",terminalOutcome:"completed",result:{analysisId:String(t.id),sourceDigest:String(t.source.digest),status:t.status}})}};function B_(e){return{...e.conversationId===void 0?{}:{conversationId:e.conversationId},...e.branchId===void 0?{}:{branchId:e.branchId},...e.runId===void 0?{}:{runId:e.runId},...e.throughMessageId===void 0?{}:{throughMessageId:e.throughMessageId}}}function gh(e){return{baseline:B_(e.baseline),candidate:B_(e.candidate),...e.metricNames===void 0?{}:{metricNames:[...e.metricNames]},...e.bootstrapSeed===void 0?{}:{bootstrapSeed:e.bootstrapSeed}}}function yh(e,t){let n=e.currentState(),o=e.eventHistory(),r=qn({...t.baseline,state:n,events:o}),i=qn({...t.candidate,state:n,events:o}),a=gh(t);return{baseline:r,candidate:i,identity:Io({kind:"comparison",...t.operationId===void 0?{}:{operationId:t.operationId},sourceDigests:[String(r.source.digest),String(i.source.digest)],request:a})}}var Vc=class{#e;#t;#n;#r=!1;constructor(t){this.#e=t,this.#t=new Fc(t),this.#n=new qc(t)}async compare(t){let n=yh(this.#e,t),{compareFrozenRuns:o}=await import("./chunks/analysis-comparison-facts-BYZX2KTR.js");return o({baseline:n.baseline,candidate:n.candidate,...t.metricNames===void 0?{}:{metricNames:t.metricNames},...t.bootstrapSeed===void 0?{}:{bootstrapSeed:t.bootstrapSeed}})}async compareAndStore(t){let{resultFromComparisonRecord:n}=await import("./chunks/analysis-comparison-record-VMUVZPUV.js");this.#r||(await this.#t.reconcile(),this.#r=!0);let o=yh(this.#e,t),r=this.#t.existing(o.identity);if(r!==void 0){if(r.status!=="completed")throw new Error(`Comparison ${String(r.id)} is ${r.status}`);return await this.#n.project(r),await this.#t.finish(r),n(r)}let{compareFrozenRuns:i}=await import("./chunks/analysis-comparison-facts-BYZX2KTR.js"),a=i({baseline:o.baseline,candidate:o.candidate,...t.metricNames===void 0?{}:{metricNames:t.metricNames},...t.bootstrapSeed===void 0?{}:{bootstrapSeed:t.bootstrapSeed}}),s=kv(o.baseline,o.candidate),d={id:o.identity.analysisId,analysisRunId:o.identity.analysisRunId,kind:"comparison",operationId:o.identity.operationId,requestDigest:o.identity.requestDigest,request:gh(t),source:o.baseline.source,sourceRange:_v(o.baseline),status:"preparing",findings:[],checks:s,provenance:{operationId:o.identity.operationId,requestDigest:o.identity.requestDigest,analystIds:[],analystVersions:[],tools:[],completeness:o.baseline.source.complete&&o.candidate.source.complete?"complete":"incomplete",checks:s},comparison:xv(o.baseline,o.candidate,a),createdAt:this.#e.now(),updatedAt:this.#e.now()},c=await this.#t.reserve(o.identity);if(!c.created){let l=this.#t.existing(o.identity);if(l?.status==="completed")return n(l);throw new Error(`Comparison operation ${String(c.operation.id)} is already active or unavailable`)}await this.#t.create(d);let u={...d,status:"completed",updatedAt:this.#e.now()};return await this.#t.complete(u),await this.#n.project(u),await this.#t.finish(u),a}};function Hc(e,t){try{return decodeURIComponent(e)}catch{throw new ve(`Citation ${t} is not valid URI encoding`)}}function cD(e){return Yh(e)?e:St(`event-${R(e).slice(0,40)}`)}function vh(e,t){let n=e.events.find(o=>String(o.id)===t);if(n===void 0)throw new ve(`Citation references missing event ${t}`);return n}function Ih(e){if(e.event.kind==="run.text.delta"||e.event.kind==="run.reasoning.delta")return e.event.text;if(e.event.kind==="run.warning"||e.event.kind==="run.error")return e.event.message;try{return JSON.stringify(e.event)}catch{return""}}function uD(e,t){let n=e.messages.find(o=>String(o.id)===t);if(n===void 0)throw new ve(`Citation references missing message ${t}`);return n.text}function lD(e,t){let n=e.messageParts.find(o=>String(o.id)===t);if(n===void 0)throw new ve(`Citation references missing message part ${t}`);switch(n.kind){case"text":case"reasoning":return n.text;case"tool-result":return n.summary;case"warning":case"error":return n.message;case"artifact":case"unknown":return n.summary;case"tool-call":return JSON.stringify(n.arguments);case"file":return n.path??n.filename??"";case"image":return n.altText??""}}function pD(e,t){if(t!==void 0&&(t.length===0||!Ih(e).includes(t)))throw new ve(`Citation excerpt does not occur in frozen event ${String(e.id)}`)}function fD(e,t){let n=e.spans.find(o=>o.spanId===t);if(n===void 0)throw new ve(`Citation references missing span ${t}`);return n}function mD(e,t,n){let o=t.eventIds.map(i=>vh(e,i));if(n===void 0){let i=o[0];if(i===void 0)throw new ve(`Citation span ${t.spanId} has no frozen event`);return i}let r=o.find(i=>Ih(i).includes(n));if(r===void 0)throw new ve(`Citation excerpt does not occur in frozen events for span ${t.spanId}`);return r}function gD(e,t){return t===String(e.source.runId)||t===String(e.source.trace?.id)||t===`braid://run/${String(e.source.runId)}`}function hh(e,t,n,o){let r=vh(e,n);pD(r,t.excerpt);let i=R({sourceId:n,partId:o,ref:t}),a=o!==void 0&&Mh(o)?o:void 0;return{id:qh(`citation-${i.slice(0,40)}`),eventId:cD(n),...a===void 0?{}:{partId:a},...t.excerpt===void 0?{}:{quote:t.excerpt}}}function yD(e,t,n){if(n.kind==="span"){let o=/^trace:\/\/([^/]+)\/span\/([^/?#]+)$/u.exec(n.uri);if(o===null)throw new ve(`Citation span URI is invalid: ${n.uri}`);let r=Hc(o[1]??"","trace id"),i=Hc(o[2]??"","span id");if(!gD(e,r))throw new ve(`Citation references trace ${r} outside the frozen source`);let a=fD(t,i),s=mD(e,a,n.excerpt);return hh(e,n,String(s.id),a.partId)}if(n.kind==="event"){let o=/^(?:event:\/\/|braid:\/\/event\/)([^/?#]+)$/u.exec(n.uri);if(o===null)throw new ve(`Citation event URI is invalid: ${n.uri}`);return hh(e,n,Hc(o[1]??"","event id"))}if(n.kind==="artifact"){let o=/^artifact:\/\/([^/?#]+)$/u.exec(n.uri);if(o===null)throw new ve(`Citation artifact URI is invalid: ${n.uri}`);let r=Hc(o[1]??"","artifact id"),i=e.events.find(a=>a.event.kind==="run.artifact"&&a.event.artifactId===r);if(i===void 0)throw new ve(`Citation references missing artifact ${r}`);return hh(e,n,String(i.id))}throw new ve(`Citation kind '${n.kind}' has no resolvable frozen source`)}function hD(e){return e===void 0?void 0:e}function q_(e,t,n){let o=n.evidence_refs??[],r=o.map(a=>yD(e,t,a)),i=hD(n.severity);return{id:n.finding_id,text:n.claim,...i===void 0?{}:{severity:i},...n.confidence===void 0?{}:{confidence:n.confidence},citations:r,supported:o.length>0&&r.length===o.length}}function F_(e,t){let n;if(t.eventId!==void 0&&(n=Ih(vh(e,String(t.eventId)))),t.messageId!==void 0&&(n=uD(e,String(t.messageId))),t.partId!==void 0)if(e.messageParts.find(r=>r.id===t.partId)===void 0){if(t.eventId===void 0)throw new ve(`Citation references missing message part ${String(t.partId)}`)}else n=lD(e,String(t.partId));if(n===void 0)throw new ve(`Citation ${String(t.id)} has no frozen source target`);if(t.start!==void 0&&t.start>n.length)throw new ve(`Citation ${String(t.id)} starts outside its source`);if(t.end!==void 0&&t.end>n.length)throw new ve(`Citation ${String(t.id)} ends outside its source`);if(t.start!==void 0&&t.end!==void 0&&t.end<t.start)throw new ve(`Citation ${String(t.id)} has an inverted range`);if(t.quote!==void 0&&!n.includes(t.quote))throw new ve(`Citation ${String(t.id)} quote is absent from frozen source`)}var Ro=class{#e;constructor(t){this.#e=t}async project(t){let n=t.source.runId===void 0?{kind:"branch",id:t.source.branchId}:{kind:"run",id:t.source.runId},o={kind:"analysis",id:t.id},r={...t.operationId===void 0?{}:{operationId:t.operationId},sourceDigest:t.source.digest};await de(this.#e,{kind:"graph.node.upserted",node:q(n,t.createdAt)}),await de(this.#e,{kind:"graph.node.upserted",node:q(o,t.createdAt)}),await de(this.#e,{kind:"graph.edge.upserted",edge:re({kind:"analyzed",source:n,destination:o,at:t.createdAt,provenance:r})})}async projectAttachment(t){let n={kind:"analysis",id:t.analysisId},o={kind:"branch",id:t.destinationBranchId};await de(this.#e,{kind:"graph.node.upserted",node:q(n,t.createdAt)}),await de(this.#e,{kind:"graph.node.upserted",node:q(o,t.createdAt)}),await de(this.#e,{kind:"graph.edge.upserted",edge:re({kind:"attached",source:o,destination:n,at:t.createdAt,provenance:{operationId:t.operationId,sourceDigest:t.sourceDigest}})})}};function vD(e,t,n){if(t.length===0)throw new Error("Analysis promotion requires at least one selected finding");if(new Set(t).size!==t.length)throw new Error("Analysis promotion contains duplicate finding ids");return t.map(r=>{let i=e.find(a=>a.id===r);if(i===void 0)throw new Error(`Analysis finding ${r} is not present`);if(!i.supported)throw new Error(`Analysis finding ${r} has no supported citations`);for(let a of i.citations)F_(n,a);return{id:i.id,text:i.text,citations:i.citations}})}var Zc=class{#e;#t;#n=!1;constructor(t){this.#e=t,this.#t=new Ro(t)}async promote(t){this.#n||(await wo(this.#e),this.#n=!0);let n=this.#e.currentState(),o=n.analyses.find(w=>w.id===t.analysis.id);if(o===void 0)throw new Error(`Analysis ${String(t.analysis.id)} is not durably persisted`);if(R(o)!==R(t.analysis))throw new Error(`Analysis ${String(t.analysis.id)} does not match its persisted record`);let r=o,i=n.branches.find(w=>w.id===t.destinationBranchId);if(i===void 0)throw new Error(`Destination branch ${String(t.destinationBranchId)} does not exist`);if(i.conversationId!==t.destinationConversationId)throw new Error(`Destination branch ${String(t.destinationBranchId)} does not belong to conversation ${String(t.destinationConversationId)}`);if(r.status!=="completed")throw new Error(`Analysis ${String(r.id)} is not completed`);if(!r.source.complete)throw new Error(`Analysis ${String(r.id)} has incomplete source history`);let a=qn({conversationId:r.source.conversationId,branchId:r.source.branchId,...r.source.runId===void 0?{}:{runId:r.source.runId},...r.source.throughMessageId===void 0?{}:{throughMessageId:r.source.throughMessageId},state:this.#e.currentState(),events:this.#e.eventHistory()});if(a.source.digest!==r.source.digest)throw new Error(`Analysis source changed before promotion: expected ${String(r.source.digest)}, received ${String(a.source.digest)}`);let s={analysisId:r.id,selectedFindingIds:t.selectedFindingIds,destinationConversationId:t.destinationConversationId,destinationBranchId:t.destinationBranchId},d=Io({kind:"promotion",...t.operationId===void 0?{}:{operationId:t.operationId},sourceDigests:[String(r.source.digest)],request:s}),c=this.#e.currentState().operations.find(w=>w.id===d.operationId);if(c!==void 0&&(c.requestDigest!==d.requestDigest||c.kind!=="promote-analysis"))throw new Error(`Operation ${String(d.operationId)} was already reserved for a different promotion request`);let u=this.#e.currentState().analysisAttachments.find(w=>w.operationId===d.operationId);if(u!==void 0){await this.#t.projectAttachment(u);let w=this.#e.currentState().operations.find(k=>k.id===d.operationId);return w!==void 0&&w.status!=="terminal"&&await Lt(this.#e,w,{status:"terminal",terminalOutcome:"completed",result:{attachmentId:String(u.id),analysisId:String(u.analysisId),sourceDigest:String(u.sourceDigest)}}),u}let l=vD(r.findings,t.selectedFindingIds,a),f=t.createdAt??this.#e.now(),g={id:Fh(`attachment-${R({operationId:d.operationId,request:s}).slice(0,40)}`),operationId:d.operationId,analysisId:r.id,...r.analysisRunId===void 0?{}:{analysisRunId:r.analysisRunId},sourceConversationId:r.source.conversationId,sourceBranchId:r.source.branchId,...r.source.runId===void 0?{}:{sourceRunId:r.source.runId},sourceDigest:r.source.digest,destinationConversationId:t.destinationConversationId,destinationBranchId:t.destinationBranchId,selectedFindings:l,provenance:{analysisId:r.id,sourceDigest:r.source.digest,...r.analystProfileDigest===void 0?{}:{analystProfileDigest:r.analystProfileDigest},...r.provenance?.model===void 0?{}:{model:r.provenance.model},...r.provenance?.runner===void 0?{}:{runner:r.provenance.runner},...r.provenance?.agentEvalVersion===void 0?{}:{agentEvalVersion:r.provenance.agentEvalVersion}},createdAt:f},p=await bo(this.#e,{identity:d,kind:"promote-analysis",target:r.id});if(!p.created){let w=this.#e.currentState().analysisAttachments.find(k=>k.operationId===d.operationId);if(w!==void 0)return w;throw new Error(`Promotion operation ${String(p.operation.id)} is already active or unavailable`)}await de(this.#e,{kind:"analysis.attachment.created",attachment:g}),await this.#t.projectAttachment(g);let v=this.#e.currentState().operations.find(w=>w.id===d.operationId);return v!==void 0&&await Lt(this.#e,v,{status:"terminal",terminalOutcome:"completed",result:{attachmentId:String(g.id),analysisId:String(g.analysisId),sourceDigest:String(g.sourceDigest)}}),g}};var Kc=class{#e;#t=new Map;#n=new Set;constructor(t){this.#e=t}listAnalysts(){return this.#e.list()}resolveAnalystIds(t){return this.#e.resolveAnalystIds(t)}modelExecutions(t){return this.#e.modelExecutions?.(t)??[]}cancel(t,n="cancelled by user"){let o=this.#t.get(t);return o===void 0?!1:(this.#n.add(t),o.abort(n),!0)}wasCancelled(t){return this.#n.delete(t)}async*stream(t){let n=new AbortController;this.#t.set(String(t.identity.analysisId),n);let{buildAnalysisTraceStore:o}=await import("./chunks/trace-store-ZIU4S2VR.js"),r=o(t.evidence),i={runId:String(t.identity.analysisRunId),sourceDigest:String(t.evidence.source.digest),trace:r,analystIds:t.analystIds,executionTarget:t.executionTarget,...t.request.question===void 0?{}:{question:t.request.question},...t.request.recipe===void 0?{}:{recipe:t.request.recipe},...t.request.budgetUsd===void 0?{}:{budgetUsd:t.request.budgetUsd},...t.request.totalTimeoutMs===void 0?{}:{totalTimeoutMs:t.request.totalTimeoutMs},signal:n.signal};try{for await(let a of this.#e.stream(i))yield a}finally{this.#t.delete(String(t.identity.analysisId))}}};var Wc=class{#e;constructor(t){this.#e=t}async reconcile(t){await wo(this.#e,t)}existing(t){let n=this.#e.currentState().analyses.find(o=>o.id===t.analysisId);if(n!==void 0){if(n.operationId!==void 0&&n.operationId!==t.operationId)throw new Error(`Analysis ${String(n.id)} has a conflicting operation identity`);if(n.requestDigest!==void 0&&n.requestDigest!==t.requestDigest)throw new Error(`Analysis ${String(n.id)} has a conflicting request digest`);return n}}async reserve(t){return bo(this.#e,{identity:t,kind:"analysis",target:t.analysisId})}async create(t){await de(this.#e,{kind:"analysis.created",analysis:t})}async running(t){let n={...t,status:"running",updatedAt:this.#e.now()};return await de(this.#e,{kind:"analysis.updated",analysis:n}),n}async completed(t){await de(this.#e,{kind:"analysis.completed",analysis:t})}async failed(t,n,o){let r={...t,status:o?"cancelled":"failed",error:n.message,updatedAt:this.#e.now()};await de(this.#e,{kind:"analysis.updated",analysis:r});let i=this.#e.currentState().operations.find(a=>a.id===t.operationId);return i!==void 0&&await Lt(this.#e,i,{status:"terminal",terminalOutcome:o?"cancelled":"failed",failureCode:o?"ANALYSIS_CANCELLED":"ANALYSIS_FAILED",failureMessage:n.message,result:{analysisId:String(r.id),sourceDigest:String(r.source.digest),status:r.status}}),r}async finish(t){let n=this.#e.currentState().operations.find(o=>o.id===t.operationId);n===void 0||n.status==="terminal"||await Lt(this.#e,n,{status:"terminal",terminalOutcome:t.status==="completed"?"completed":t.status==="cancelled"?"cancelled":"failed",result:{analysisId:String(t.id),sourceDigest:String(t.source.digest),status:t.status}})}async repairTerminal(t){await this.finish(t)}replay(t,n){return t.status==="completed"?{type:"completed",analysis:t,evidence:n,result:void 0,replayed:!0}:t.status==="cancelled"?{type:"cancelled",analysis:t,evidence:n,replayed:!0}:{type:"failed",analysis:t,evidence:n,error:new Error(t.error??`Analysis ${String(t.id)} is ${t.status}`),replayed:!0}}};function On(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:void 0}function Ki(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0?e:void 0}function V_(e,t){for(let n of t){let o=Ki(e?.[n]);if(o!==void 0)return o}}function ID(e){let t=On(e?.billing),n=t?.status,o=Ki(t?.usd);return n==="observed"&&o!==void 0?{status:n,usd:o}:n==="estimated"&&o!==void 0?{status:n,usd:o}:{status:"unknown"}}function bD(e,t){return typeof e=="number"&&Number.isSafeInteger(e)&&e>0?e:t}function wD(e){return e==="/v1/chat/completions"||e==="/v1/responses"?e:"unknown-path"}function RD(e,t){let n=On(e.execution),o=On(n?.runtime),r=On(n?.usage),i=On(n?.connection),a=On(n?.route),s=Ki(r?.inputTokens),d=Ki(r?.outputTokens),c=r?.captured===!0&&s!==void 0&&d!==void 0,u=Y(n?.startedAt)?n.startedAt:void 0,l=Y(n?.endedAt)?n.endedAt:void 0,f=SD(e.succeeded?e.responseStatus:n?.terminal&&On(n.terminal)?.errorStatus),g=e.succeeded?void 0:U(On(n?.terminal)?.errorKind),p=U(n?.provider)??U(o?.provider),v=U(n?.route)??U(a?.name)??U(i?.kind)??U(n?.endpointFormat),w=V_(r,["cachedTokens","cacheReadTokens"]),k=V_(r,["cacheWriteTokens"]),P=Ki(n?.durationMs);return{sequence:bD(e.sequence,t),callId:U(e.callId)??"unknown-call",callRef:U(e.callRef)??"unknown-call-ref",path:wD(e.path),model:U(e.model)??"unknown-model",...p===void 0?{}:{provider:p},...v===void 0?{}:{route:v},...c&&s!==void 0?{inputTokens:s}:{},...c&&d!==void 0?{outputTokens:d}:{},...w===void 0?{}:{cachedTokens:w},...k===void 0?{}:{cacheWriteTokens:k},tokensKnown:c,cost:ID(n),...P===void 0?{}:{latencyMs:P},outcome:e.succeeded?"succeeded":"failed",...f===void 0?{}:{responseStatus:f},...g===void 0?{}:{failureCode:g},...u===void 0?{}:{startedAt:u},...l===void 0?{}:{endedAt:l}}}function SD(e){return typeof e=="number"&&Number.isSafeInteger(e)&&e>=100&&e<=599?e:void 0}function Wi(e){return Object.freeze(e.map((t,n)=>RD(t,n+1)))}function ED(e,t){return{question:e.question,recipe:e.recipe??"ask",analystIds:e.analystIds,analystProfileId:e.analystProfileId,analystProfileDigest:e.analystProfileDigest,budgetUsd:e.budgetUsd,totalTimeoutMs:e.totalTimeoutMs,executionTarget:{profileId:t.profileId,profileDigest:t.profileDigest,connectionId:t.connectionId,connectionDigest:t.connectionDigest,model:t.model,runner:t.runner}}}function H_(e,t){let n=e.currentState(),o=e.analysisExecutionTarget?.(n)??uc(n),r=qn({...t,state:n,events:e.eventHistory()});return{evidence:r,executionTarget:o,identity:Io({kind:"analysis",...t.operationId===void 0?{}:{operationId:t.operationId},sourceDigests:[String(r.source.digest)],request:ED(t,o)})}}var Jc="0.144.11";function _D(e){let t=e.events.map(r=>r.sequence),n=t.at(0),o=t.at(-1);return{eventIds:e.events.map(r=>r.id),messageIds:e.messages.map(r=>r.id),messagePartIds:e.messageParts.map(r=>r.id),...n===void 0?{}:{firstSequence:n},...o===void 0?{}:{lastSequence:o}}}function xD(e){let t=new Set;for(let n of e.events){if(n.event.kind!=="run.tool.call")continue;let o=n.event,r=o.toolName??o.name;typeof r=="string"&&r.length>0&&t.add(r)}return[...t].sort()}function Z_(e){return[{id:"source-frozen",status:"passed",detail:`digest ${String(e.source.digest)}`},{id:"source-completeness",status:e.source.complete?"passed":"unavailable",...e.source.complete?{}:{detail:"The frozen source contains a declared missing-history range."}}]}function kD(e){return{...e.conversationId===void 0?{}:{conversationId:e.conversationId},...e.branchId===void 0?{}:{branchId:e.branchId},...e.runId===void 0?{}:{runId:e.runId},...e.throughMessageId===void 0?{}:{throughMessageId:e.throughMessageId},...e.question===void 0?{}:{question:e.question},recipe:e.recipe??"ask",...e.analystIds===void 0?{}:{analystIds:[...e.analystIds]},...e.analystProfileId===void 0?{}:{analystProfileId:e.analystProfileId},...e.analystProfileDigest===void 0?{}:{analystProfileDigest:e.analystProfileDigest},...e.budgetUsd===void 0?{}:{budgetUsd:e.budgetUsd},...e.totalTimeoutMs===void 0?{}:{totalTimeoutMs:e.totalTimeoutMs}}}function K_(e,t,n,o,r,i,a,s){let d=s??uc(e.currentState());return{operationId:o.operationId,requestDigest:o.requestDigest,analystIds:r,analystVersions:i,agentEvalVersion:Jc,...d.profileId===void 0?n.analystProfileId===void 0?{}:{profileId:n.analystProfileId}:{profileId:d.profileId},profileDigest:d.profileDigest,...d.model===void 0?{}:{model:d.model},...d.runner===void 0?{}:{runner:d.runner},...d.connectionId===void 0?{}:{connectionId:d.connectionId},...d.connectionDigest===void 0?{}:{connectionDigest:d.connectionDigest},tools:xD(t),completeness:t.source.complete?"complete":"incomplete",checks:a}}function W_(e){let t=Z_(e.evidence);return{id:e.identity.analysisId,analysisRunId:e.identity.analysisRunId,kind:"analysis",operationId:e.identity.operationId,requestDigest:e.identity.requestDigest,source:e.evidence.source,sourceRange:_D(e.evidence),request:kD(e.request),...e.request.question===void 0?{}:{question:e.request.question},...e.request.recipe===void 0?{}:{recipe:e.request.recipe},...e.request.analystProfileId===void 0?{}:{analystProfileId:e.request.analystProfileId},...e.request.analystProfileDigest===void 0?{}:{analystProfileDigest:e.request.analystProfileDigest},status:"preparing",findings:[],modelCalls:Wi([]),checks:t,provenance:K_(e.host,e.evidence,e.request,e.identity,e.request.analystIds??[],[],t,e.executionTarget),createdAt:e.at,updatedAt:e.at}}function AD(e){let t=0,n=0,o=0,r=!1,i=!0;for(let u of e.per_analyst){let l=u.usage.tokens;if(l===null){i=!1;continue}r=!0,t+=l.input,n+=l.output,o+=l.reasoning??0}let a=Number.isFinite(e.total_cost_usd)&&e.total_cost_usd>=0?e.total_cost_usd:void 0,s=e.total_cost_provenance?.kind,d=s==="uncaptured",c=s==="estimated";if(!(!r&&a===0&&!d))return{input:t,output:n,...!r||!i?{tokensKnown:!1}:{},...o===0?{}:{reasoning:o},...a===void 0||c?{}:{costUsd:a},...a===void 0||!c?{}:{estimatedCostUsd:a},...d||c?{usdKnown:!1}:{}}}function TD(e){let t=Date.parse(e.started_at),n=Date.parse(e.ended_at);return Number.isFinite(t)&&Number.isFinite(n)?Math.max(0,n-t):void 0}function $D(e,t){return{id:e.finding_id,text:e.claim,...e.severity===void 0?{}:{severity:e.severity},...e.confidence===void 0?{}:{confidence:e.confidence},citations:[],supported:!1,supportError:t instanceof Error?t.message:String(t)}}async function CD(e,t){let{buildAnalysisTraceStore:n}=await import("./chunks/trace-store-ZIU4S2VR.js"),o=n(e),r=!0;return{findings:t.map(a=>{try{let s=q_(e,o,a);return s.supported||(r=!1),s.supported?s:{...s,supportError:"Finding did not include a complete supported citation set."}}catch(s){return r=!1,$D(a,s)}}),supported:r}}async function J_(e){let t=await CD(e.evidence,e.result.findings),n=[...Z_(e.evidence),{id:"citation-support",status:t.supported?"passed":"failed",...t.supported?{}:{detail:"One or more findings failed frozen-source citation checks."}},{id:"agent-eval-completion",status:"passed"}],o=new Map(e.descriptors.map(s=>[s.id,s.version])),r=e.analystIds.map(s=>({id:s,version:o.get(s)??"unknown"})),i=AD(e.result),a=TD(e.result);return{...e.base,status:"completed",findings:t.findings,checks:n,modelCalls:Wi(e.modelExecutions),provenance:K_(e.host,e.evidence,e.request,e.identity,e.analystIds,r,n,e.executionTarget),...i===void 0?{}:{usage:i},...e.result.total_cost_provenance?.kind==="uncaptured"||e.result.total_cost_provenance?.kind==="estimated"?{}:Number.isFinite(e.result.total_cost_usd)&&e.result.total_cost_usd>=0?{costUsd:e.result.total_cost_usd}:{},...a===void 0?{}:{wallTimeMs:a},updatedAt:e.at}}var G_={capability:"trace-analysis",packageName:"@tangle-network/agent-eval",packageVersion:Jc,reason:"Trace analysis is not loaded until an analyst-backed analysis is requested.",reproduction:"Configure a production analysis connection before invoking /ask or another analysis command."},So=class{list(){return[]}resolveAnalystIds(t){throw new yu(G_)}async*stream(t){yield await Promise.reject(new yu(G_))}};function OD(e){if(e.completion.status==="failed")throw new Error(e.completion.error.message);let t=e.per_analyst.find(o=>o.status==="failed");if(t===void 0)return;let n=t.error?.message??"The analyst failed without an error message.";throw new Error(`Trace analyst '${t.analyst_id}' failed: ${n}`)}var Gc=class{#e;#t;#n;#r;#o=new Set;#i=!1;constructor(t,n=new So){this.#e=t,this.#t=new Wc(t),this.#n=new Kc(n),this.#r=new Ro(t)}listAnalysts(){return this.#n.listAnalysts()}async reconcile(){await this.#t.reconcile(this.#o),this.#i=!0}cancel(t,n="cancelled by user"){return this.#n.cancel(String(t),n)}async*stream(t){this.#i||await this.reconcile();let n=H_(this.#e,t),o=this.#t.existing(n.identity);if(o!==void 0){if(o.status==="preparing"||o.status==="running")throw new Error(`Analysis ${String(o.id)} is already active`);yield{type:"started",analysis:o,replayed:!0},await this.#r.project(o),await this.#t.repairTerminal(o),yield this.#t.replay(o,n.evidence);return}let r=W_({host:this.#e,evidence:n.evidence,request:t,identity:n.identity,executionTarget:n.executionTarget,at:this.#e.now()});this.#o.add(String(r.id));let i=r,a=!1,s=[];try{let d=await this.#t.reserve(n.identity);if(!d.created){let l=this.#t.existing(n.identity);if(l!==void 0&&l.status!=="preparing"&&l.status!=="running"){yield{type:"started",analysis:l,replayed:!0},yield this.#t.replay(l,n.evidence);return}throw new Error(`Analysis operation ${String(d.operation.id)} is already active or unavailable`)}await this.#t.create(i),yield{type:"started",analysis:i},i=await this.#t.running(i),yield{type:"running",analysis:i};let c=this.#n.resolveAnalystIds(t),u;for await(let l of this.#n.stream({identity:n.identity,evidence:n.evidence,request:t,analystIds:c,executionTarget:n.executionTarget}))l.result!==void 0&&(u=l.result),yield{type:"analyst",analysisId:n.identity.analysisId,analysisRunId:n.identity.analysisRunId,event:l.event};if(u===void 0)throw new Error("agent-eval exact stream ended without a result");OD(u),s=this.#n.modelExecutions(String(n.identity.analysisRunId)),i=await J_({host:this.#e,base:i,evidence:n.evidence,request:t,identity:n.identity,executionTarget:n.executionTarget,analystIds:c,descriptors:this.#n.listAnalysts(),modelExecutions:s,result:u,at:this.#e.now()}),await this.#t.completed(i),a=!0,await this.#r.project(i),await this.#t.finish(i),yield{type:"completed",analysis:i,evidence:n.evidence,result:u}}catch(d){let c=d instanceof Error?d:new Error(String(d));if(a||c instanceof Co||c instanceof Zi)throw c;s=this.#n.modelExecutions(String(n.identity.analysisRunId)),i={...i,modelCalls:Wi(s)};let u=this.#n.wasCancelled(String(i.id)),l=await this.#t.failed(i,c,u);u?yield{type:"cancelled",analysis:l,evidence:n.evidence,reason:c.message}:yield{type:"failed",analysis:l,evidence:n.evidence,error:c}}finally{this.#o.delete(String(r.id))}}async run(t){let n;for await(let o of this.stream(t))n=o;if(n===void 0)throw new Error("analysis stream produced no terminal result");if(n.type==="completed")return{status:"completed",analysis:n.analysis,evidence:n.evidence,...n.result===void 0?{}:{result:n.result},...n.replayed===void 0?{}:{replayed:n.replayed}};if(n.type==="failed")return{status:"failed",analysis:n.analysis,evidence:n.evidence,error:n.error,...n.result===void 0?{}:{result:n.result},...n.replayed===void 0?{}:{replayed:n.replayed}};if(n.type==="cancelled")return{status:"cancelled",analysis:n.analysis,evidence:n.evidence,...n.replayed===void 0?{}:{replayed:n.replayed}};throw new Error(`analysis stream ended before a terminal result (${n.type})`)}};var X_=1024;function Xc(e,t){return e!==void 0&&Number.isFinite(Date.parse(e))?e:t}function nx(e,t){return e.now!==void 0&&Number.isFinite(Date.parse(e.now))?e.now:Number.isFinite(t.generatedAt)?new Date(t.generatedAt).toISOString():new Date().toISOString()}function Qc(e,t){if(e.trim().length===0)throw new Error(`${t} is empty`);if(e.length>X_)throw new Error(`${t} exceeds ${X_} characters`);return e}function Y_(e){switch(e.toLowerCase()){case"starting":case"queued":return"starting";case"running":return"running";case"completed":case"complete":case"done":case"success":return"completed";case"failed":case"error":return"failed";case"cancelled":case"canceled":return"cancelled";default:return"unknown"}}function Q_(e){switch(e){case"running":return"running";case"done":return"completed";case"cancelled":return"cancelled";case"down":return"failed";default:return"unknown"}}function PD(e,t){return Hh(`supervisor-runtime-${R({rootDir:e,rawId:t}).slice(0,40)}`)}function ND(e,t){return Zh(`worker-runtime-${R({supervisor:e,rawId:t}).slice(0,40)}`)}function Qt(e){return e===void 0||!Number.isFinite(e)||e<0?void 0:e}function ex(e){return{inputTokens:Qt(e.tokensInput)??0,outputTokens:Qt(e.tokensOutput)??0,spendUsd:Qt(e.usd)??0,latencyMs:Qt(e.latencyMs??e.ms)??0,...Qt(e.iterations)===void 0?{}:{iterations:e.iterations},completeness:"observed-floor"}}function DD(e){let t=new Map;for(let n of e.bindings??[]){let o=Qc(n.runtimeSupervisorId,"runtime supervisor binding id"),r=t.get(o);if(r!==void 0&&r!==n.rootRunId)throw new Error(`Runtime supervisor ${o} has conflicting run bindings`);t.set(o,n.rootRunId)}return t}function jD(e,t){let n=new Map,o=new Map;for(let i of t){let a=Qc(i.id,"runtime worker id");if(n.has(a))throw new Error(`Runtime supervisor contains duplicate worker id ${a}`);let s=ND(e,a);n.set(a,s);let d=o.get(i.label);o.set(i.label,d===void 0?s:null)}let r=new Map;for(let[i,a]of o)a!==null&&r.set(i,a);return{byId:n,byUniqueLabel:r}}function UD(e,t){let n=nx(e,t),o=DD(e),r=[],i=[],a=[],s=[],d=new Set;for(let c of t.supervisors){let u=Qc(c.id,"runtime supervisor id");if(d.has(u))throw new Error(`Runtime snapshot contains duplicate supervisor id ${u}`);d.add(u);let l=PD(e.rootDir,u),f=Xc(c.startedAt,n),g=o.get(u);r.push({id:l,runtimeId:u,runtimeRoot:e.rootDir,...g===void 0?{}:{rootRunId:g},status:Y_(c.status),...c.task.trim().length===0?{}:{title:me(c.task)},...c.driverModel===void 0||c.driverModel.trim().length===0?{}:{driverModel:me(c.driverModel)},...c.workerModel===void 0||c.workerModel.trim().length===0?{}:{workerModel:me(c.workerModel)},driverUsage:ex(c.driverSpend),totalUsage:ex(c.totals),workerCount:c.totals.workers,createdAt:f,updatedAt:Xc(c.completedAt,n)});let p={kind:"supervisor",id:l},v=q(p,f,me(c.task));a.push({...v,status:Y_(c.status)});let w=jD(l,c.workers);for(let k of c.workers){let P=Qc(k.id,"runtime worker id"),N=w.byId.get(P);if(N===void 0)continue;let D=Xc(k.startedAt,f),W=k.parent?.trim()||void 0,Ee=W===void 0?void 0:w.byId.get(W)??w.byUniqueLabel.get(W),Nn=me(k.liveTail.join(`
338
- `)),yr=me(k.label);i.push({id:N,runtimeId:P,supervisorId:l,...W===void 0?{}:{parentRuntimeRef:me(W)},...Ee===void 0?{}:{parentWorkerId:Ee},status:Q_(k.status),...Qt(k.spend.usd)===void 0?{}:{spendUsd:k.spend.usd},...Qt(k.spend.tokensInput)===void 0?{}:{inputTokens:k.spend.tokensInput},...Qt(k.spend.tokensOutput)===void 0?{}:{outputTokens:k.spend.tokensOutput},...Qt(k.latencyMs)===void 0?{}:{latencyMs:k.latencyMs},usageCompleteness:"observed-floor",...Nn.length===0?{}:{logTail:Nn},title:yr,...k.runtime===void 0||k.runtime.trim().length===0?{}:{runner:me(k.runtime)},createdAt:D,updatedAt:Xc(k.endedAt,n)});let du={kind:"worker",id:N},Ch=q(du,D,yr);a.push({...Ch,status:Q_(k.status)}),(W===void 0||Ee!==void 0)&&s.push(re({kind:"spawned",source:Ee===void 0?p:{kind:"worker",id:Ee},destination:du,at:D}))}}for(let c of o.keys())if(!d.has(c))throw new Error(`Run binding names unknown runtime supervisor ${c}`);return{raw:t,supervisors:r,workers:i,graphNodes:a,graphEdges:s}}function LD(e,t){let n=new Set(e.runs.map(o=>String(o.id)));for(let o of t??[])if(!n.has(String(o.rootRunId)))throw new Error(`Run binding names unknown Braid run ${o.rootRunId}`)}function MD(e,t){if(e!==void 0&&(e.runtimeId!==t.runtimeId||e.runtimeRoot!==t.runtimeRoot))throw new Error(`Supervisor identity collision for ${t.id}`);let n=t.rootRunId??e?.rootRunId;return{...t,...n===void 0?{}:{rootRunId:n},createdAt:e?.createdAt??t.createdAt}}function zD(e,t){if(e!==void 0&&(e.runtimeId!==t.runtimeId||e.supervisorId!==t.supervisorId))throw new Error(`Worker identity collision for ${t.id}`);return{...t,createdAt:e?.createdAt??t.createdAt}}function BD(e,t,n,o){let r=new Map(e.supervisors.map(s=>[String(s.id),s])),i=n.map(s=>MD(r.get(String(s.id)),s)),a=new Set(i.map(s=>String(s.id)));for(let s of e.supervisors)s.runtimeRoot!==t.rootDir||a.has(String(s.id))||i.push(s.status==="starting"||s.status==="running"?{...s,status:"unknown",updatedAt:o}:s);return i}function qD(e,t,n,o){let r=new Map(e.workers.map(d=>[String(d.id),d])),i=n.map(d=>zD(r.get(String(d.id)),d)),a=new Set(i.map(d=>String(d.id))),s=new Set(t.map(d=>String(d.id)));for(let d of e.workers)!s.has(String(d.supervisorId))||a.has(String(d.id))||i.push(d.status==="pending"||d.status==="running"||d.status==="waiting"?{...d,status:"unknown",updatedAt:o}:d);return i}function FD(e,t,n,o){let r=new Map(e.graphNodes.map(s=>[String(s.id),s])),i=new Map(t.map(s=>[String(s.id),s])),a=[];for(let s of n){let d=q({kind:"supervisor",id:s.id},s.createdAt,`supervisor ${s.id}`),c=i.get(String(d.id))??r.get(String(d.id));a.push({...c??d,status:s.status,createdAt:c?.createdAt??d.createdAt,updatedAt:s.updatedAt})}for(let s of o){let d=q({kind:"worker",id:s.id},s.createdAt,s.title??`worker ${s.id}`),c=i.get(String(d.id))??r.get(String(d.id));a.push({...c??d,status:s.status,createdAt:c?.createdAt??d.createdAt,updatedAt:s.updatedAt})}return a}async function rx(e,t,n){let o=e.currentState();LD(o,t.bindings);let r=UD(t,n),i=nx(t,n),a=BD(o,t,r.supervisors,i),s=qD(o,a,r.workers,i),d=FD(o,r.graphNodes,a,s),c=new Map(o.supervisors.map(p=>[String(p.id),p])),u=new Map(o.workers.map(p=>[String(p.id),p])),l=new Map(o.graphNodes.map(p=>[String(p.id),p])),f=new Map(o.graphEdges.map(p=>[String(p.id),p])),g={raw:n,supervisors:a,workers:s,graphNodes:d,graphEdges:r.graphEdges};for(let p of a){let v=c.get(String(p.id));v!==void 0&&Yc(v,p)||await e.commit({kind:"supervisor.upserted",supervisor:p})}for(let p of s){let v=u.get(String(p.id));v!==void 0&&Yc(v,p)||await e.commit({kind:"worker.upserted",worker:p})}for(let p of d){let v=l.get(String(p.id));v!==void 0&&Yc(v,p)||await e.commit({kind:"graph.node.upserted",node:p})}for(let p of r.graphEdges){let v=f.get(String(p.id));v!==void 0&&Yc(v,p)||await e.commit({kind:"graph.edge.upserted",edge:p})}return g}function Yc(e,t){return R(tx(e))===R(tx(t))}function tx(e){let{updatedAt:t,...n}=e;if(n.status==="running"&&"latencyMs"in n){let{latencyMs:o,...r}=n;return r}return n}var eu=class{#e;#t;#n;#r;#o;#i=Promise.resolve();constructor(t,n={}){this.#e=t,this.#t=n.watcher,this.#n=n.controller}async snapshot(t){let o=(await this.#a()).snapshot(t.rootDir);return this.#s(t,o)}async reconnect(t){let o=(await this.#a()).reconnect(t.rootDir);return this.#s(t,o)}async*watch(t){let n=await this.#a(),o={...t.intervalMs===void 0?{}:{intervalMs:t.intervalMs},...t.signal===void 0?{}:{signal:t.signal}};for await(let r of n.watch(t.rootDir,o))yield await this.#s(t,r)}#s(t,n){let o=this.#i.then(()=>rx(this.#e,t,n));return this.#i=o.then(()=>{},()=>{}),o}async steerWorker(t,n,o,r,i){return(await this.#u()).steerWorker(t,n,o,r,i)}async cancelWorker(t){return(await this.#u()).cancelWorker(t)}async cancelSupervisor(t){return(await this.#u()).cancelSupervisor(t)}#a(){return this.#t!==void 0?Promise.resolve(this.#t):this.#r!==void 0?this.#r:(this.#r=import("./chunks/supervisor-watch-X6TXO6GN.js").then(({RuntimeSupervisorWatcher:t})=>{let n=new t;return this.#t=n,n}),this.#r)}#u(){return this.#n!==void 0?Promise.resolve(this.#n):this.#o!==void 0?this.#o:(this.#o=Promise.all([this.#a(),import("./chunks/supervisor-control-VPVKE7NI.js")]).then(([t,{RuntimeSupervisorController:n}])=>{let o=new n({watcher:t});return this.#n=o,o}),this.#o)}};var bh=class{analysis;comparison;promotion;supervisor;constructor(t,n={}){this.analysis=new Gc(t,n.analyst),this.comparison=new Vc(t),this.promotion=new Zc(t),this.supervisor=new eu(t,{...n.supervisorWatcher===void 0?{}:{watcher:n.supervisorWatcher},...n.supervisorController===void 0?{}:{controller:n.supervisorController}})}};function ox(e,t={}){return new bh(e,t)}import{createHmac as VD,randomBytes as HD}from"node:crypto";var ZD="braid-operation-fingerprint:v1\0";function Eo(){let e=HD(32);return KD(e)}function KD(e){if(e.byteLength<16)throw new TypeError("Operation fingerprint key is too short");return Object.freeze({fingerprint:({effectKind:t,request:n})=>VD("sha256",e).update(ZD).update(t).update("\0").update(J(n)).digest("hex")})}var tu=class{#e=Eo();#t;#n=[];#r=new Map;#o=new Set;constructor(t){this.#t=t}fingerprint(t){return this.#e.fingerprint(t)}envelope(t,n){return{sequence:t.sequence+1,revision:t.revision+1,occurredAt:this.#t.now(),event:n}}append(t){let n=Ln(t.event);return n&&this.#o.has(n)?{appended:!1,duplicate:!0}:(this.#n.push(structuredClone(t)),n&&this.#o.add(n),{appended:!0,duplicate:!1})}all(){return this.#n.map(t=>structuredClone(t))}async flush(){}current(t){let o=[...this.#r.get(t)??[]].reverse().find(r=>r.status!=="conflict");return o===void 0?void 0:structuredClone(o)}latest(t,n){let r=[...this.#r.get(t)??[]].reverse().find(i=>i.requestDigest===n);return r===void 0?void 0:structuredClone(r)}reserveEffect(t){let n=this.current(t.operationId);if(n!==void 0){if(n.requestDigest===t.requestDigest)return{record:n,created:!1};let o={...t,status:"conflict",detail:`Operation is already bound to request digest ${n.requestDigest}`,conflictWithDigest:n.requestDigest};return this.appendEffect(o),{record:structuredClone(o),created:!1}}return this.appendEffect(t),{record:structuredClone(t),created:!0}}appendEffect(t){let n=this.#r.get(t.operationId)??[];n.push(structuredClone(t)),this.#r.set(t.operationId,n)}history(t){return(this.#r.get(t)??[]).map(n=>structuredClone(n))}};function ix(e,t){let n=Mn(t.operationId,"cancel"),o=e.state(),r=e.ledger.getControl(n),i=t.runId??o.activeRunId??r?.runId;if(!i)throw new m("UNKNOWN_RUN","There is no run to cancel");let a=o.runs.find(u=>u.id===i),s=me(t.reason??Mi),d=zi(i,s,a?.providerSessionId);if(r){if(r.digest!==d)throw new m("OPERATION_CONFLICT",`Operation ${n} was already used with different input`);return{operationId:n,runId:i,revision:o.revision,replayed:!0,completion:r.completion.then(e.snapshot)}}if(!a||o.activeRunId!==i||Tn(a.status))throw new m("UNKNOWN_RUN",`Run ${i} is not active`);let c=e.cancelRun({operationId:n,runId:i,reason:s,terminalStatus:"aborted",legacy:!0}).then(u=>u.completion).then(e.snapshot);return{operationId:n,runId:i,revision:o.revision,replayed:!1,completion:c}}function ax(e,t){if(!t.operationId)throw new m("OPERATION_ID_REQUIRED","queue requires operationId");if(!t.text.trim())throw new m("EMPTY_MESSAGE","Queued input must not be empty");let n=t.runId??e.currentState().activeRunId;if(!n)throw new m("NO_ACTIVE_RUN","Queue input requires an active run");let o=e.findRun(n),r=e.currentState().queuedInputs.find(s=>s.operationId===t.operationId);if(r){if(r.text!==t.text||r.runId!==n)throw new m("OPERATION_CONFLICT",`Operation ${t.operationId} has different input`);return{operationId:t.operationId,runId:n,position:r.position,revision:e.currentState().revision}}if(!o.capabilities.controls.queue)throw new m("CAPABILITY_UNAVAILABLE","Queued input is not supported by this run");if(e.currentState().queuedInputs.length>=4096)throw new m("QUEUE_FULL","The durable input queue is full");let i=e.currentState().queuedInputs.length+1,a=e.commitAndWait({kind:"run.queue.added",runId:n,operationId:t.operationId,text:t.text,position:i});return{operationId:t.operationId,runId:n,position:i,revision:e.currentState().revision,...a===void 0?{}:{completion:Promise.resolve(a)}}}async function sx(e,t){let n=e.findRun(t.runId??e.currentState().activeRunId??"");if(!n.capabilities.controls.steer||!e.execution.steerRun)throw new m("CAPABILITY_UNAVAILABLE","Live steering is not supported by this run");let o={operationId:t.operationId,runId:n.id,control:"steer",text:t.text,...n.providerSessionId===void 0?{}:{providerSessionId:n.providerSessionId},...n.controlRef===void 0?{}:{controlRef:n.controlRef}};return wh(e,o,"steer")}async function dx(e,t){let n=e.findRun(t.runId??e.currentState().activeRunId??"");if(e.ledger.getControl(t.operationId)===void 0&&Tn(n.status))throw new m("UNKNOWN_RUN",`Run ${n.id} is not active`);if(!n.capabilities.controls.cancel&&!t.legacy)throw new m("CAPABILITY_UNAVAILABLE","This run does not advertise cancellation support");let o={operationId:t.operationId,runId:n.id,control:"cancel",...n.providerSessionId===void 0?{}:{providerSessionId:n.providerSessionId},...n.controlRef===void 0?{}:{controlRef:n.controlRef},...t.reason===void 0?{}:{reason:t.reason}};return await wh(e,o,"cancel",t.terminalStatus??"cancelled")}async function cx(e,t){let n=e.findRun(t.runId??e.currentState().activeRunId??"");if(!n.capabilities.streaming.detach||!n.capabilities.controls.recreate||!e.execution.detachRun)throw new m("CAPABILITY_UNAVAILABLE","This run cannot be detached");let o={operationId:t.operationId,runId:n.id,control:"detach",...n.providerSessionId===void 0?{}:{providerSessionId:n.providerSessionId},...n.controlRef===void 0?{}:{controlRef:n.controlRef},...n.lastCursor===void 0?{}:{cursor:n.lastCursor}};return wh(e,o,"detach")}async function wh(e,t,n,o){let r=e.findRun(t.runId),i=R({control:n,runId:t.runId,providerSessionId:t.providerSessionId??null,reason:t.reason??null,text:t.text??null,cursor:t.cursor??null}),a=e.ledger.getControl(t.operationId);if(a){if(a.digest!==i)throw new m("OPERATION_CONFLICT",`Operation ${t.operationId} has different input`);let w=await a.acknowledgement;if(w.outcome==="unknown"){if(!e.currentEffect(t.operationId))return{operationId:t.operationId,runId:t.runId,control:n,acknowledgement:w,status:e.findRun(t.runId).status,completion:a.completion};let k=await e.executeControl(t),P=e.commitAndWait({kind:"run.control.acknowledged",runId:t.runId,operationId:t.operationId,control:n,outcome:k.outcome,...k.detail===void 0?{}:{detail:k.detail}});return P!==void 0&&await P,e.ledger.setControl(t.operationId,{...a,acknowledgement:Promise.resolve(k),completion:Promise.resolve(e.currentState())}),{operationId:t.operationId,runId:t.runId,control:n,acknowledgement:k,status:e.findRun(t.runId).status,completion:Promise.resolve(e.currentState())}}return{operationId:t.operationId,runId:t.runId,control:n,acknowledgement:w,status:e.findRun(t.runId).status,completion:a.completion}}if(n==="cancel"){let w=e.ledger.controlForRun(t.runId,"cancel");if(w!==void 0)return XD(e,t.operationId,n,w)}let s,d=new Promise(w=>{s=w}),c,u,l=new Promise((w,k)=>{c=w,u=k}),f,g=new Promise(w=>{f=w});e.ledger.setControl(t.operationId,{digest:i,runId:t.runId,control:n,acknowledgement:d,completion:l,lateSettlementReady:g,...t.providerSessionId===void 0?{}:{providerSessionId:t.providerSessionId},...t.reason===void 0?{}:{reason:t.reason},...t.text===void 0?{}:{text:t.text},...t.cursor===void 0?{}:{cursor:t.cursor}});let p;try{let w={kind:"run.control.requested",runId:t.runId,operationId:t.operationId,control:n,digest:i,...t.reason===void 0?{}:{reason:t.reason},...t.text===void 0?{}:{text:t.text}};if(n==="cancel"){let k={kind:"run.cancel.requested",runId:t.runId,operationId:t.operationId,...t.reason===void 0?{}:{reason:t.reason}};await GD(e,[w,k]);let P=e.findRun(t.runId);e.isTerminal(P.status)?(p={operationId:t.operationId,outcome:"rejected",detail:`Cancellation rejected because run ${t.runId} reached terminal status ${P.status} before the request was applied`},await px(e,t,n,p)):(e.ledger.markExplicitlyCancelled(t.runId),e.ledger.markCancellationPending(t.runId),e.ledger.setCancelStatus(t.runId,o??"cancelled"))}else{let k=e.commitAndWait(w);k!==void 0&&await k,n==="detach"&&e.ledger.markDetached(t.runId)}}catch(w){throw e.ledger.deleteControl(t.operationId),u(w),f(),w}if(p!==void 0){s(p),c(structuredClone(e.currentState())),f();let w=await d;return{operationId:t.operationId,runId:t.runId,control:n,acknowledgement:w,status:e.findRun(t.runId).status,completion:l}}n==="cancel"&&!e.execution.cancelRun&&e.ledger.getAbort(t.runId)?.abort(new Error(t.reason??"Cancelled")),(async()=>{let w;try{w=await e.executeControl(t,{onLateSettlement:P=>WD(e,t,P,o??"cancelled")})}catch{w={operationId:t.operationId,outcome:"unknown",detail:"CONTROL_UNKNOWN"}}s(w);let k=e.commitAndWait({kind:"run.control.acknowledged",runId:t.runId,operationId:t.operationId,control:n,outcome:w.outcome,...w.detail===void 0?{}:{detail:w.detail}});if(k!==void 0&&await k,w.outcome==="accepted"||w.outcome==="already-applied"){if(n==="cancel")await ux(e,t,r,o??"cancelled",w);else if(n==="detach"){e.ledger.getAbort(t.runId)?.abort(new Error("Detached by user"));let P=e.commitAndWait({kind:"run.detached",runId:t.runId,...t.cursor===void 0?{}:{cursor:t.cursor},...w.detail===void 0?{}:{detail:w.detail}});P!==void 0&&await P}c(structuredClone(e.currentState()));return}if(e.ledger.clearExplicitlyCancelled(t.runId),(n!=="cancel"||w.outcome==="rejected")&&(e.ledger.clearCancellationPending(t.runId),e.ledger.clearCancelStatus(t.runId)),e.ledger.clearDetached(t.runId),w.outcome==="unknown"&&!e.isTerminal(e.findRun(t.runId).status)){let P=e.commitAndWait({kind:"run.unknown",runId:t.runId,detail:n==="cancel"?lx(w.detail):w.detail??"Control outcome is unknown"});P!==void 0&&await P}c(structuredClone(e.currentState()))})().catch(w=>u(w)).finally(()=>f());let v=await d;return{operationId:t.operationId,runId:t.runId,control:n,acknowledgement:v,status:e.findRun(t.runId).status,completion:l}}async function WD(e,t,n,o){let r=e.ledger.getControl(t.operationId);if(r===void 0)return;if(r.lateSettlement!==void 0){await r.lateSettlement;return}let i=(async()=>{await r.lateSettlementReady;let a=e.ledger.getControl(t.operationId);if(a===void 0||(await a.acknowledgement).outcome!=="unknown")return;await px(e,t,t.control,n);let d={...a,acknowledgement:Promise.resolve(n),completion:Promise.resolve(structuredClone(e.currentState()))};if(e.ledger.setControl(t.operationId,d),t.control==="cancel"){if(n.outcome==="accepted"||n.outcome==="already-applied")await ux(e,t,e.findRun(t.runId),o,n);else if(e.ledger.clearCancellationPending(t.runId),e.ledger.clearCancelStatus(t.runId),!e.isTerminal(e.findRun(t.runId).status)){let u=e.commitAndWait({kind:"run.unknown",runId:t.runId,detail:lx(n.detail)});u!==void 0&&await u}}let c=e.ledger.getControl(t.operationId);c!==void 0&&e.ledger.setControl(t.operationId,{...c,acknowledgement:Promise.resolve(n),completion:Promise.resolve(structuredClone(e.currentState()))})})();e.ledger.setControl(t.operationId,{...r,lateSettlement:i}),await i}async function ux(e,t,n,o,r){e.ledger.getAbort(t.runId)?.abort(new Error(t.reason??"Cancelled"));let i=e.findRun(t.runId),a=JD(r.detail);if(e.ledger.isCancellationPending(t.runId)&&(i.status==="unknown"||i.status==="failed")){let s=e.commitAndWait({kind:"run.reconciled",runId:t.runId,operationId:t.operationId,status:o,from:i.status,to:o,correction:"cancellation-confirmed",evidence:R({kind:"provider-cancellation-confirmed",operationId:t.operationId,runId:t.runId,outcome:r.outcome,detail:r.detail??null}),detail:a});s!==void 0&&await s}else if(!e.isTerminal(i.status)){let s=e.commitAndWait({kind:"run.finished",runId:t.runId,status:o,finalText:"",usage:Pi(n),reason:a});s!==void 0&&await s}e.ledger.clearExplicitlyCancelled(t.runId),e.ledger.clearCancellationPending(t.runId),e.ledger.clearCancelStatus(t.runId)}function JD(e){return e===void 0||e==="CONTROL_ACKNOWLEDGED"||e==="Provider cancellation acknowledged"?"Cancellation acknowledged by the provider":e}function lx(e){return e===void 0||e.startsWith("CONTROL_")?"Cancellation outcome could not be confirmed by the provider":e}async function GD(e,t){if(e.commitBatchAndWait!==void 0){await e.commitBatchAndWait(t);return}for(let n of t){let o=e.commitAndWait(n);o!==void 0&&await o}}async function px(e,t,n,o){let r=e.commitAndWait({kind:"run.control.acknowledged",runId:t.runId,operationId:t.operationId,control:n,outcome:o.outcome,...o.detail===void 0?{}:{detail:o.detail}});r!==void 0&&await r}async function XD(e,t,n,o){let r=await o.acknowledgement;return{operationId:t,runId:o.runId,control:n,acknowledgement:r,status:e.findRun(o.runId).status,completion:o.completion}}function fx(e,t,n,o){let r={operationId:e.operationId,text:e.text,conversationId:e.conversationId??t.conversationId,branchId:e.branchId??t.branchId,profile:Te(n),...o===void 0?{}:{connectionId:o},...t.workspace===null?{}:{workspaceRoot:t.workspace},...e.sessionId===void 0?(()=>{let i=NE({state:t,conversationId:e.conversationId??t.conversationId,branchId:e.branchId??t.branchId,profile:n,...o===void 0?{}:{connectionId:o}});return i===void 0?{}:{sessionId:i,sessionSource:"continuation"}})():{sessionId:e.sessionId,sessionSource:"caller"},...e.contextPlan===void 0?{}:{contextPlan:e.contextPlan},...e.contextTransfer===void 0?{}:{contextTransfer:e.contextTransfer},...e.nativeContextBoundaryProof===void 0?{}:{nativeContextBoundaryProof:e.nativeContextBoundaryProof}};return mx(structuredClone(r))}function mx(e){if(e!==null&&typeof e=="object"&&!Object.isFrozen(e)){for(let t of Object.values(e))mx(t);Object.freeze(e)}return e}function gx(){let e=new Map,t=new Map,n=new Map,o=new Map,r=new Map,i=new Set,a=new Set,s=new Set,d=new Map,c=new Set,u=new Set;return{getOperation:l=>e.get(l),setOperation:l=>e.set(l.admission.operationId,l),getControl:l=>t.get(l),setControl:(l,f)=>t.set(l,f),deleteControl:l=>t.delete(l),getInteraction:l=>n.get(l),setInteraction:(l,f)=>n.set(l,f),getShutdown:l=>o.get(l),setShutdown:(l,f)=>o.set(l,f),operationForRun:l=>[...e.values()].find(f=>f.runId===l),controlForRun:(l,f)=>[...t.values()].find(g=>g.runId===l&&(f===void 0||g.control===f)),getAbort:l=>r.get(l),setAbort:(l,f)=>r.set(l,f),deleteAbort:l=>r.delete(l),isDetached:l=>i.has(l),markDetached:l=>i.add(l),clearDetached:l=>i.delete(l),isExplicitlyCancelled:l=>a.has(l),markExplicitlyCancelled:l=>a.add(l),clearExplicitlyCancelled:l=>a.delete(l),isCancellationPending:l=>s.has(l),markCancellationPending:l=>s.add(l),clearCancellationPending:l=>s.delete(l),getCancelStatus:l=>d.get(l),setCancelStatus:(l,f)=>d.set(l,f),clearCancelStatus:l=>d.delete(l),claimQueueDrain:l=>c.has(l)?!1:(c.add(l),!0),releaseQueueDrain:l=>c.delete(l),hasProviderEvent:l=>u.has(l),addProviderEvent:l=>u.add(l),restore:(l,f)=>{for(let g of l){let p=g.event;if(p.kind==="run.requested"&&p.receipt){let v=f().runs.find(w=>w.id===p.runId);v&&!YD(v.status)&&r.set(v.id,new AbortController)}}}}}function YD(e){return["completed","failed","aborted","cancelled","blocked","expired","unknown"].includes(e)}function yx(e){let t=Ec(),n=e.ledger.getShutdown(e.operationId);if(n){if(n.digest!==t)throw new m("OPERATION_CONFLICT",`Operation ${e.operationId} was already used with different input`);return{operationId:e.operationId,revision:e.state().revision,replayed:!0,completion:n.completion.then(()=>structuredClone(e.state()))}}e.commit({kind:"application.shutdown.requested",operationId:e.operationId});let o=e.state(),r=o.activeRunId??void 0,i=r?o.runs.find(s=>s.id===r):void 0,a=QD(e,r,i);return e.ledger.setShutdown(e.operationId,{digest:t,completion:a}),{operationId:e.operationId,revision:e.state().revision,replayed:!1,...r===void 0?{outcome:"idle"}:{},...e.mode==="cancel"?{outcome:"cancelled"}:{},...e.mode==="detach"?{outcome:"detached"}:{},completion:a.then(()=>structuredClone(e.state()))}}async function QD(e,t,n){return!t||!n?e.state():e.mode==="cancel"?(await e.cancelRun({operationId:`${e.operationId}:cancel`,runId:t,reason:"Braid is shutting down",terminalStatus:"aborted",legacy:!0})).completion:e.mode==="detach"?(await e.detachRun({operationId:`${e.operationId}:detach`,runId:t})).completion:e.waitForIdle()}function hx(e){let t=l=>{let f=e.state().connections.find(g=>g.id===l.id);return f===void 0||R(f)!==R(l)},n=(l,f)=>Ac(e,l,f).then(()=>e.state());return Object.freeze({state:()=>e.state(),requestOperation:({operation:l,expectedRevision:f})=>n([{kind:"operation.requested",operation:l}],f),failOperation:l=>n([{kind:"operation.updated",operation:l}]),selectProfile:({profile:l,operation:f,expectedRevision:g})=>{let p=[];return e.state().profiles.some(v=>v.id===l.id)||p.push({kind:"profile.registered",profile:l}),p.push({kind:"profile.selected",profileId:l.id}),p.push({kind:"operation.updated",operation:f}),n(p,g)},saveProfile:({profile:l,operation:f,select:g})=>{let p=[{kind:"profile.registered",profile:l}];return g&&p.push({kind:"profile.selected",profileId:l.id}),p.push({kind:"operation.updated",operation:f}),n(p)},selectConnection:({connection:l,operation:f,expectedRevision:g})=>{let p=[];return t(l)&&p.push({kind:"connection.upserted",connection:l}),p.push({kind:"connection.selected",connectionId:l.id}),p.push({kind:"operation.updated",operation:f}),n(p,g)},upsertConnection:({connection:l,operation:f,expectedRevision:g})=>n([{kind:"connection.upserted",connection:l},{kind:"operation.updated",operation:f}],g),removeConnection:({connection:l,operation:f,expectedRevision:g})=>{let p=[];return t(l)&&p.push({kind:"connection.upserted",connection:l}),p.push({kind:"connection.removed",connectionId:l.id,operation:f}),n(p,g)},updateConnectionHealth:({connection:l,operation:f})=>n([{kind:"connection.upserted",connection:l},{kind:"operation.updated",operation:f}])})}var nu=class{#e;#t;constructor(t,n){this.#e=Te(t),this.#t=n}profile(){return this.#e}connectionId(){return this.#t}setProfile(t){this.#e=Te(t)}setConnection(t){this.#t=t}syncFromState(t){if(t.selectedProfileId!==null){let n=t.profiles.find(o=>o.id===t.selectedProfileId);n!==void 0&&n.executionDigest!==$e(this.#e)&&this.setProfile(n.profile)}this.#t=t.selectedConnectionId??void 0}};var tj=1024*1024,nj=5e3,ru=class{conversations;intelligence;automation;configuration;runtimeSelection;#e;#t;#n;#r;#o;#i;#s=new Sc;#a=gx();#u=new Bc;#c;#g=new Set;#v=`braid-control-${ej()}`;#y;#p;#l;#m;#b;#I=Promise.resolve();#f;#E;#w=Promise.resolve();#_=Promise.resolve();#d;constructor(t){this.#e=t.execution,this.#t=structuredClone(t.profile),this.runtimeSelection=new nu(this.#t),this.#n=t.ids,this.#r=t.clock;let n=t.journal===void 0&&t.effectStorage===void 0?new tu(t.clock):new Hi(t.clock);this.#o=t.journal??n,this.#p=this.#o.asynchronous===!0;let o=t.effectStorage??(JE(this.#o)?this.#o:n),r=Eo(),i=l=>o.fingerprint?.(l)??r.fingerprint(l);this.#i=t.effectCoordinator??new wc(o,t.clock,{onRecord:l=>this.#C(l)}),this.#y=t.cancelTimeoutMs??nj;let a=this.#o.replay?.()??this.#o.all();for(let l of a){let f=Ln(l.event);f&&this.#a.addProviderEvent(f)}let d=this.#o.initialState?.()??Ti(this.#t,{...t.conversationId===void 0?{}:{conversationId:t.conversationId},...t.branchId===void 0?{}:{branchId:t.branchId}});this.#d=Ni(d,a),Zt(this.#d),this.runtimeSelection.syncFromState(this.#d),this.#c=new Rc({state:()=>this.#d,events:()=>this.#o.all(),commitAndWait:l=>{if(this.#p)return this.#R(l);this.#h(l)},now:()=>this.#r.now(),execution:this.#e,ledger:this.#a,effects:this.#i,owner:this.#v,ports:()=>this.#l,whenDurable:()=>this.whenDurable(),...t.interactionResponseTimeoutMs===void 0?{}:{responseTimeoutMs:t.interactionResponseTimeoutMs}}),this.automation=this.#c.automation;let c=t_({currentState:()=>this.#d,setState:l=>{this.#d=l},profile:()=>this.runtimeSelection.profile(),commit:l=>this.#h(l),commitAndWait:l=>{if(this.#p)return this.#R(l);this.#h(l)},commitAndWaitRecovery:l=>{if(this.#p)return this.#x(l);rh(this.#m,l)},execution:this.#e,ledger:this.#a,clock:this.#r,ids:this.#n,effects:this.#i,journal:this.#o,subscribers:this.#g,asynchronousJournal:this.#p,transitionTail:()=>this.#I,setTransitionTail:l=>{this.#I=l},storageFailure:()=>this.#f,markStorageFailure:l=>{this.#f??=l},flush:()=>this.whenDurable(),executeControl:(l,f)=>this.#T(l,f),admitPersistedSend:(l,f)=>eh({effects:this.#i,operations:this.#a,state:()=>this.#d,operationId:l,digest:f}),fingerprint:i,send:l=>this.send(l),afterRuntimeEvent:(l,f)=>this.#c.acceptRuntimeEvent(l,f)});this.#l=c.ports,this.#m=c.transition,this.configuration=hx(this.#m),this.intelligence=ox({currentState:()=>this.#d,eventHistory:()=>this.#o.all(),commit:l=>this.#h(l),commitAndWait:l=>{if(this.#p)return this.#R(l);this.#h(l)},now:()=>this.#r.now(),analysisExecutionTarget:l=>{let f=this.runtimeSelection.profile(),g=$e(f),p=l.selectedProfileId===null?void 0:l.profiles.find(k=>k.id===l.selectedProfileId&&String(k.executionDigest??k.digest)===g),v=this.runtimeSelection.connectionId(),w=l.connections.find(k=>String(k.id)===v);return by({profile:f,...p===void 0?{}:{profileId:p.id},...w===void 0?{}:{connection:w}})}},t.intelligence),this.conversations=N_({state:()=>this.#d,now:()=>this.#r.now(),commit:async l=>{this.#p?await this.#R(l):this.#h(l)},coordinate:(l,f)=>this.#u.run(l.operationId,l.digest,f),...t.conversationStorage===void 0?{}:{storage:t.conversationStorage}}),ZE(a,{state:()=>this.#d,ledger:this.#a});let u=KE(this.#l.restart);this.#w=u.then(()=>this.conversations.lifecycle.reconcilePendingDeletes()).catch(l=>{throw this.#f??=l,l}),this.#_=this.#w.then(()=>this.#c.reconcile()),this.#b=j_({currentState:()=>this.#d,ids:this.#n,restartReconciliation:this.#w,transitionTail:()=>this.#I,admitPersistedSend:(l,f)=>eh({effects:this.#i,operations:this.#a,state:()=>this.#d,operationId:l,digest:f}),requestDigest:(l,f)=>i({effectKind:"run.execute",request:$n(f)}),registerAdmission:l=>this.#s.registerAdmission(l),sendAsync:(l,f,g)=>Yy(this.#l.asyncAdmission,l,f,g)})}state(){return structuredClone(this.#d)}revision(){return this.#d.revision}events(){return this.#o.all()}storageFailure(){if(this.#f!==void 0)return this.#f instanceof Error?this.#f.message:"Storage failure"}cleanupUncertain(){return this.#E}markCleanupUncertain(t){this.#E=me(t).slice(0,512);let n=this.#d.activeRunId;n&&this.#a.getAbort(n)?.abort(new Error("Cleanup deadline exceeded"))}async whenDurable(){if(await this.#w,await this.#I,await this.#o.flush?.(),this.#f!==void 0)throw this.#f}subscribe(t){return this.#g.add(t),()=>this.#g.delete(t)}initialize(t){if(!t)throw new m("INVALID_WORKSPACE","Workspace must not be empty");if(this.#d.workspace===t)return this.state();if(this.#d.workspace!==null)throw new m("ALREADY_INITIALIZED","Braid is already initialized");return this.#h({kind:"workspace.opened",workspace:t}),this.state()}send(t){if(this.#k(),fu(this.#f),Mn(t.operationId,"send"),Buffer.byteLength(t.text,"utf8")>tj)throw new m("MESSAGE_TOO_LARGE","Message must not exceed 1 MiB");if(!t.text.trim())throw new m("EMPTY_MESSAGE","Message must not be empty");let n=fx(t,this.#d,this.runtimeSelection.profile(),this.#d.selectedConnectionId??void 0);if(vo(this.#l.admission,n),this.#p||hv(this.#e)){fu(this.#f);let o=this.#b(n);return this.#S(o),o}try{let o=Xy(this.#l.admission,n);return this.#S(o),o}catch(o){if(!(o instanceof m)||o.code!=="ASYNC_ADMISSION_REQUIRED")throw o;let r=this.#b(n);return this.#S(r),r}}queueInput(t){return ax(this.#l.queue,t)}async steer(t){return sx(this.#l.control,t)}async cancelRun(t){return dx(this.#l.control,t)}cancel(t){return ix({state:()=>this.#d,snapshot:()=>this.state(),ledger:this.#a,cancelRun:n=>this.cancelRun(n)},t)}cancelActive(){if(!this.canCancel())return!1;let t=this.#d.activeRunId;if(!t)return!1;try{return this.cancel({operationId:this.#n.next("operation"),runId:t}),!0}catch{return!1}}canCancel(){let t=this.#d.activeRunId,n=t?this.#d.runs.find(r=>r.id===t):void 0,o=t?this.#a.getAbort(t):void 0;return!!(n&&!Tn(n.status)&&n.status!=="cancelling"&&n.capabilities.controls.cancel&&o&&this.#a.controlForRun(n.id,"cancel")===void 0)}canRespondToInteractions(){return this.#c.canRespond()}async detachRun(t){return cx(this.#l.control,t)}async respondInteraction(t){return this.#c.respond(t)}async#T(t,n={}){return r_({effects:this.#i,execution:this.#e,request:t,owner:this.#v,timeoutMs:this.#y,whenDurable:()=>this.whenDurable(),canSettleLate:()=>!this.#s.isClosed(),onLateSettlement:n.onLateSettlement})}async reconnectRun(t){return ur(this.#l.replay,t)}async reconcileRun(t){return Fy(this.#l.replay,t)}async continueNative(t){return Qy(this.#l.nativeContinuation,t)}shutdown(t){let n=Mn(t.operationId,"shutdown");return yx({operationId:n,...t.mode===void 0?{}:{mode:t.mode},state:()=>this.#d,ledger:this.#a,commit:o=>this.#h(o),cancelRun:o=>this.cancelRun(o),detachRun:o=>this.detachRun(o),waitForIdle:()=>this.waitForIdle()})}async waitForIdle(){return RE(this.#l.status)}close(){return this.#s.close(()=>this.#$())}async#$(){let t;try{await this.#s.settleActive({runIds:this.#O(),timeoutMs:this.#y,cancel:n=>this.#P(n),markUnknown:n=>this.#N(n)}),await this.#_,await this.#c.whenIdle(),await this.whenDurable()}catch(n){t=n}finally{await this.#o.close?.()}if(t!==void 0)throw t}ingestRuntimeEvent(t){return this.#l.ingestion.ingestRuntimeEvent(t)}admit(t,n,o,r,i,a,s){return this.#k(),Bi(this.#l.admission,t,n,o,r,i,a,s)}#C(t){this.#h({kind:"effect.upserted",effect:U_(t)})}#h(t){this.#A(),kc(this.#m,t)}#R(t){return this.#A(),QE(this.#m,t)}#x(t){return this.#s.isClosed()?Promise.resolve():e_(this.#m,t)}#k(){if(!this.#s.acceptsAdmission())throw new m("APPLICATION_CLOSING","Braid is closing and cannot admit a new run")}#A(){if(this.#s.isClosed())throw new m("APPLICATION_CLOSED","Braid is closed and cannot commit events")}#S(t){this.#s.track({runId:t.runId,completion:t.completion})}#O(){let t=this.#s.activeOperations().map(o=>o.runId),n=this.#d.activeRunId;return n===null?t:[...t,n]}async#P(t){let n=this.#d.runs.find(r=>r.id===t);if(n===void 0||Tn(n.status))return;await(await this.cancelRun({operationId:`operation-close-${t}`,runId:t,reason:"Braid is shutting down",terminalStatus:"aborted",legacy:!0})).completion}async#N(t){this.#a.getAbort(t)?.abort(new Error("Application close deadline exceeded"));let n=this.#d.runs.find(o=>o.id===t);n===void 0||Tn(n.status)||await this.#x({kind:"run.unknown",runId:t,detail:"Application close deadline exceeded before the run settled"})}};import{reconnectRetainedRun as rj,startRetainedRun as oj}from"@tangle-network/agent-runtime/kernel";async function _o(e,t,n){let o=Te(e),r=mr(o,n),i=Ji(o,n),{cleanModelId:a}=await import("@tangle-network/agent-runtime"),s=a(t.model);if(s!==void 0&&s!==r)throw new ke("CONNECTION_MODEL_HARNESS_MISMATCH",`Run model=${s} conflicts with AgentProfile.model.default=${r}; update the AgentProfile instead of overriding execution.`,{connectionId:n});if(t.runner!==void 0&&t.runner!==i)throw new ke("CONNECTION_MODEL_HARNESS_MISMATCH",`Run runner=${t.runner} conflicts with AgentProfile.harness=${i}; update the AgentProfile instead of overriding execution.`,{connectionId:n});if(!o.model?.provider?.trim())throw new ke("CONNECTION_MODEL_REQUIRED","AgentProfile.model.provider must identify the model provider before execution",{connectionId:n});return o}function mr(e,t){let n=e.model?.default?.trim();if(!n)throw new ke("CONNECTION_MODEL_REQUIRED","The selected AgentProfile requires a non-empty model id",{connectionId:t});return n}function Ji(e,t){if(e.harness===void 0)throw new ke("CONNECTION_MODEL_HARNESS_MISMATCH","AgentProfile.harness must identify the runner before execution",{connectionId:t});return e.harness}function vx(e,t){let n=e??t;if(n===void 0||n.length===0)throw new ke("CONNECTION_WORKSPACE_REQUIRED","The production execution path requires the canonical workspace root");return n}function en(e){return e.replace(/[^A-Za-z0-9._:-]/gu,"-").slice(0,128)||"run"}function Pn(e){if(e!==null&&typeof e=="object"&&!Object.isFrozen(e)){for(let t of Object.values(e))Pn(t);Object.freeze(e)}return e}function xo(e,t){let n=t.connections.get(e);if(!n)throw new ke("CONNECTION_NOT_FOUND","The selected connection does not exist",{connectionId:e});return n}var ij=64*1024;async function Rh(e,t){let{createCliBridgeProvider:n}=await import("@tangle-network/agent-provider-cli-bridge");return Object.freeze({prepared:e,provider:n({baseUrl:e.bridgeUrl,bearerToken:e.bearerToken,defaultModel:e.route,...e.fetch===void 0?{}:{fetch:e.fetch}}),environmentId:aj(t),executionId:en(t)})}async function Ix(e,t){return oj({provider:e.provider,environment:{profile:e.prepared.profile,backend:e.prepared.runner,workspace:{cwd:e.prepared.workspace},idempotencyKey:e.environmentId},turn:{prompt:t.text,turnId:en(t.operationId),signal:t.signal},identity:{sessionId:e.prepared.providerSessionId,executionId:e.executionId}})}async function Sh(e,t){return rj({provider:e.provider,controlRef:t})}async function bx(e,t,n){let o=await(e.prepared.fetch??globalThis.fetch)(`${e.prepared.bridgeUrl}/v1/runs/${encodeURIComponent(t)}`,{method:"GET",headers:{authorization:`Bearer ${e.prepared.bearerToken}`},...n===void 0?{}:{signal:n}});if(o.status===404)return null;if(!o.ok)throw new Error(`cli-bridge run discovery returned HTTP ${o.status}`);let r=await sj(o),i;try{i=JSON.parse(r)}catch{throw new Error("cli-bridge run discovery returned invalid JSON")}if(i===null||typeof i!="object"||Array.isArray(i))throw new Error("cli-bridge run discovery returned an invalid run snapshot");let a=i;if(a.id!==t)throw new Error("cli-bridge run discovery returned another run");return $t.parse({runId:t,provider:e.provider.name,environmentId:e.environmentId,sessionId:e.prepared.providerSessionId,executionId:e.executionId,requestDigest:a.requestDigest})}function aj(e){return`environment-braid-${en(e)}`}async function sj(e){if(e.body===null)return"";let t=e.body.getReader(),n=new TextDecoder,o=[],r=0;try{for(;;){let i=await t.read();if(i.done)break;if(r+=i.value.byteLength,r>ij)throw await t.cancel("CLI Bridge run discovery response exceeded 64 KiB"),new Error("cli-bridge run discovery response exceeded 64 KiB");o.push(n.decode(i.value,{stream:!0}))}return o.push(n.decode()),o.join("")}finally{t.releaseLock()}}function Eh(e){return R({runId:e.runId,operationId:e.operationId,text:e.text,profile:$e(e.profile),connectionId:e.connectionId??null,workspaceRoot:e.workspaceRoot??null,sessionId:e.sessionId??null,contextBoundary:e.contextBoundary??null})}function wx(e){return Object.freeze({streaming:{live:!0,replay:!0,detach:!0,turnIdempotency:!0},sessions:{continue:e.capabilities.sessions.continue,messages:!1},controls:{cancel:!0,steer:!1,queue:!0,status:!0,recreate:!0},events:{stableIdentity:!0,sequence:!0,cursor:!0},usage:!0,environment:e.capabilities})}function Rx(e,t){if(t&&["pending","provisioning","running","stopped"].includes(e??""))return"detached";switch(e){case"pending":case"provisioning":return"starting";case"running":return"streaming";case"completed":return"completed";case"cancelled":return"cancelled";case"failed":return"failed";case"expired":return"expired";default:return"unknown"}}function Sx(e){return["completed","cancelled","failed","expired","aborted","blocked"].includes(e)}function _h(e,t,n){return{input:e?.inputTokens??0,output:e?.outputTokens??0,...n===void 0?{}:{calls:n},...e===void 0?{tokensKnown:!1}:{},...e?.reasoningTokens===void 0?{}:{reasoning:e.reasoningTokens},...e?.cost===void 0?{}:{costUsd:e.cost},...e?.cost===void 0?{usdKnown:!1}:{},...t===void 0?{}:{model:t}}}function Ex(e,t,n,o){let r=new Date().toISOString(),i=_h(o.usage,n,xh(o));return{runId:e,eventId:`${e}:final`,sequence:t,receivedAt:r,event:{type:"final",task:{id:e,intent:"Execute the retained CLI Bridge turn"},status:o.success?"completed":"failed",reason:o.success?"completed":o.error??"CLI Bridge run failed",text:o.text,metadata:{model:n,tokenUsage:{input:i.input,output:i.output,...i.reasoning===void 0?{}:{reasoningTokens:i.reasoning}},...i.tokensKnown===!1?{tokensKnown:!1}:{},...i.costUsd===void 0?{}:{costUsd:i.costUsd},...i.usdKnown===!1?{usdKnown:!1}:{},...i.calls===void 0?{}:{llmCalls:i.calls}},...o.success||o.error===void 0?{}:{error:{kind:"backend",message:o.error}},timestamp:r}}}function xh(e){let t=e.metadata?.modelRequests;return typeof t=="number"&&Number.isSafeInteger(t)&&t>=0?t:void 0}var dj=128,ou=class{admissionMode="async";#e;#t=new Map;#n=new Map;#r=new Map;#o=new Map;#i=new Map;#s=new Set;#a=new Map;#u=[];constructor(t){this.#e=t}async admit(t){let n=await this.#e.resolve(t),o=await Rh(n,t.runId),r=wx(n),i=ca({...n.materializationReceipt,backend:"environment-provider",environmentId:o.environmentId,providerRunId:o.executionId,retainedControl:"exact-after-dispatch"}),a={key:Eh(t),plan:o,capabilities:r,materializationReceipt:i};return this.#t.set(t.runId,a),this.#b(t.runId,o),{capabilities:r,provider:o.provider.name,environmentId:o.environmentId,providerSessionId:n.providerSessionId,materializationReceipt:i,profileDigest:$e(t.profile),capabilitiesDigest:R(r),materializationDigest:R(i)}}async*streamTurn(t){let n=this.#t.get(t.runId);if(!n||n.key!==Eh(t))throw new Error("CLI Bridge retained run was not admitted with this exact request");this.#t.delete(t.runId);let o=await Ix(n.plan,t);this.#l(t.runId,o,n.plan),this.#s.delete(t.runId),yield*this.#c({runId:t.runId,handle:o,plan:n.plan,signal:t.signal,includeObservation:!0,afterSequence:0})}async*reconnect(t){if(t.after!==void 0&&t.afterSequence===void 0)throw new Error("CLI Bridge reconnect requires the saved event sequence");let n=this.#p(t.runId,t.providerSessionId,t.controlRef),o=await this.#y(t.runId,n),r=await this.#v(t.runId,o,t.controlRef,t.signal);if(!r)return;let i=await Sh(o,r);i&&(this.#l(t.runId,i,o),this.#s.delete(t.runId),yield*this.#c({runId:t.runId,handle:i,plan:o,signal:t.signal,includeObservation:(t.afterSequence??0)===0,afterSequence:t.afterSequence??0,...t.after===void 0?{}:{after:t.after}}))}async detachRun(t){let n=this.#i.get(t.runId);return this.#s.add(t.runId),n?(n.abort(new DOMException("Braid detached from the retained run","AbortError")),{operationId:t.operationId,outcome:"accepted",detail:"detached"}):{operationId:t.operationId,outcome:"already-applied",detail:"detached"}}async cancelRun(t){let n=await this.#g(t.runId,t.providerSessionId,t.controlRef,t.signal);if(!n)return{operationId:t.operationId,outcome:"unknown",detail:"CLI Bridge retained run was not found"};let o=await n.cancel({operationId:t.operationId,...t.reason===void 0?{}:{reason:t.reason},...t.signal===void 0?{}:{signal:t.signal}});return o.status==="conflict"?{operationId:t.operationId,outcome:"rejected",detail:o.effect}:o.status==="unknown"?{operationId:t.operationId,outcome:"unknown",detail:o.effect}:(this.#i.get(t.runId)?.abort(new DOMException("Retained run cancelled","AbortError")),this.#s.delete(t.runId),{operationId:t.operationId,outcome:o.status==="replayed"?"already-applied":"accepted",detail:o.effect})}async status(t){let n=await this.#g(t.runId,t.providerSessionId,t.controlRef,t.signal);if(!n)return null;let o=await n.status({...t.signal===void 0?{}:{signal:t.signal}}),r=Rx(o.status,this.#s.has(t.runId)),i=this.#a.get(t.runId),a={runId:t.runId,status:r,sessionId:n.controlRef.sessionId,...i===void 0?{}:{cursor:i}};if(!Sx(r)||r==="cancelled"||r==="expired")return a;try{let s=await n.result();return{...a,finalText:s.text,usage:_h(s.usage,this.#r.get(t.runId)?.prepared.route,xh(s)),...s.error===void 0?{}:{error:s.error}}}catch(s){return{...a,error:s instanceof Error?s.message:"CLI Bridge retained result unavailable"}}}async*#c(t){let n=new AbortController;this.#i.get(t.runId)?.abort(new DOMException("Reader replaced","AbortError")),this.#i.set(t.runId,n);let o=AbortSignal.any([t.signal,n.signal]),r=t.afterSequence;try{if(t.includeObservation){r+=1;let s=new Date().toISOString(),d=await t.plan.prepared.observation.snapshot();if(d===void 0)throw new Error("CLI Bridge execution observation is unavailable");yield{runId:t.runId,eventId:`${t.runId}:execution-bound`,sequence:r,receivedAt:s,event:{type:"braid.execution.observed",observation:d,controlRef:t.handle.controlRef,timestamp:s}}}o.throwIfAborted();let i=Math.max(0,t.afterSequence-1);for await(let s of t.handle.events({...t.after===void 0?{}:{after:{cursor:t.after,sequence:i}},signal:o}))r=s.sequence+1,s.cursor!==void 0&&this.#a.set(t.runId,s.cursor),yield{...s,sequence:r};let a=await t.handle.result();r+=1,yield Ex(t.runId,r,t.plan.prepared.route,a)}finally{this.#i.get(t.runId)===n&&this.#i.delete(t.runId)}}async#g(t,n,o,r){let i=this.#n.get(t);if(i){if(this.#p(t,n,i.controlRef),o!==void 0){let u=this.#I(t,o);if(R(u)!==R(i.controlRef))throw new Error("retained control reference conflicts with the active run")}return i}let a=this.#p(t,n,o),s=await this.#y(t,a),d=await this.#v(t,s,o,r);if(!d)return null;let c=await Sh(s,d);return c&&this.#l(t,c,s),c}async#v(t,n,o,r){if(o!==void 0){let s=this.#I(t,o),d=this.#o.get(t);if(d!==void 0&&R(d)!==R(s))throw new Error("retained control reference conflicts with the saved run");return this.#m(t,s),s}let i=this.#o.get(t);if(i)return i;let a=await bx(n,t,r);return a&&this.#m(t,a),a}async#y(t,n){let o=this.#r.get(t);if(o){if(n!==void 0&&o.prepared.providerSessionId!==n)throw new Error("retained provider session conflicts with the saved run");return o}let r=await this.#e.recover({runId:t,...n===void 0?{}:{providerSessionId:n}}),i=await Rh(r,t);return this.#b(t,i),i}#p(t,n,o){if(o!==void 0&&this.#I(t,o),n!==void 0&&o!==void 0&&n!==o.sessionId)throw new Error("retained provider session conflicts with the exact run reference");return o?.sessionId??n}#l(t,n,o){this.#n.set(t,n),this.#m(t,n.controlRef),this.#b(t,o)}#m(t,n){this.#o.set(t,structuredClone(n)),this.#f(t)}#b(t,n){this.#r.set(t,n),this.#f(t)}#I(t,n){let o=$t.parse(n);if(o.runId!==t)throw new Error("retained control reference names another run");return o}#f(t){let n=this.#u.indexOf(t);for(n>=0&&this.#u.splice(n,1),this.#u.push(t);this.#u.length>dj;){let o=this.#u.findIndex(i=>!this.#i.has(i));if(o<0)break;let[r]=this.#u.splice(o,1);if(r===void 0)break;this.#n.delete(r),this.#r.delete(r),this.#o.delete(r),this.#a.delete(r),this.#s.delete(r)}}};function iu(e,t=()=>new Date().toISOString()){return{async snapshot(){return Object.freeze({...e,observedAt:t()})}}}function ko(e){try{let t=new URL(e).hostname.toLowerCase();return t.length===0||t.length>253?{location:"unknown"}:{location:cj(t)?"local":"remote",runtimeEndpointHost:t}}catch{return{location:"unknown"}}}function cj(e){return e==="localhost"||e==="127.0.0.1"||e==="[::1]"||e==="::1"}var uj="braid-local-cli-bridge";async function _x(e,t,n,o,r){let i=await kh(e,t,n,o,r),{createExecutor:a}=await import("@tangle-network/agent-runtime/kernel"),s=Object.freeze({kind:"executor",factory:a({backend:"bridge",bridgeUrl:i.bridgeUrl,bridgeBearer:i.bearerToken,cwd:i.workspace,sessionId:i.providerSessionId}),profile:i.profile,agentRunName:i.route});return Pn({kind:"prepared-execution",backend:s,capabilities:i.capabilities,providerSessionId:i.providerSessionId,cancellation:{kind:"runtime-executor-teardown"},observation:i.observation,materializationReceipt:i.materializationReceipt})}async function kh(e,t,n,o,r){let i=await _o(t.profile,n,o),a=mr(i,o),s=Ji(i,o);if(!Cv(s,a)){let k=ga(s,a),P=k===s?"choose a runner compatible with this model":`choose runner=${k} to keep model=${a}`;throw new ke("CONNECTION_MODEL_HARNESS_MISMATCH",`Profile runner=${s} does not support model=${a}. The authored profile was not changed; ${P}, or choose a model advertised for runner=${s}.`,{connectionId:o})}let d=xo(o,e),c=await ya(d,e,r),u=t.sessionId??`session-braid-${en(t.runId)}`,l=Ov(s,a,i.model?.provider),f=vx(t.workspaceRoot,e.workspaceCwd),g=Tv(r,o),p=ko(g),v=new Date().toISOString(),{defaultCliBridgeCapabilities:w}=await import("@tangle-network/agent-provider-cli-bridge");return Pn({profile:i,model:a,runner:s,route:l,workspace:f,bridgeUrl:g,bearerToken:c??uj,...e.fetch===void 0?{}:{fetch:e.fetch},capabilities:w(s),providerSessionId:u,observation:iu({kind:p.location==="local"?"local-process":"remote-service",provider:"cli-bridge",lifecycle:"ready",lifecycleMode:"retained",cleanup:"explicit",continuity:"session",...p,createdAt:v,unavailable:["cli-subscription-and-quota:not-exposed-by-provider","effective-resources:not-exposed-by-provider","machine-specs:not-exposed-by-provider","runtime-cpu-memory-usage:not-exposed-by-provider"]}),materializationReceipt:{provider:"cli-bridge",backend:"executor",connectionId:o,sessionId:u,lifecycle:"retained-session",cleanup:"explicit",portableContext:"unavailable",workspace:f,model:a,route:l,runner:s}})}async function xx(e,t,n,o,r){let i=await _o(t.profile,n,o),a=mr(i,o);if(i.harness!=="cli-base")throw new ke("CONNECTION_MODEL_HARNESS_MISMATCH","Direct Tangle inference requires AgentProfile.harness=cli-base; choose CLI Bridge or sandbox for a coding runner.",{connectionId:o});let s=await ya(xo(o,e),e,r),{createExecutor:d}=await import("@tangle-network/agent-runtime/kernel"),c=Av(r,o),u=ko(c),l=new Date().toISOString(),f=Object.freeze({kind:"executor",factory:d({backend:"router",routerBaseUrl:c,routerKey:s??"",...e.routerComplete===void 0?{}:{complete:e.routerComplete}}),profile:i,agentRunName:a});return Pn({kind:"prepared-execution",backend:f,observation:iu({kind:"remote-service",provider:"tangle-inference",lifecycle:"ready",lifecycleMode:"request",cleanup:"not-applicable",continuity:"not-applicable",...u,createdAt:l,unavailable:["router-account-balance-and-period-spend:not-exposed-by-provider","effective-resources:not-exposed-by-provider","machine-specs:not-exposed-by-provider"]}),materializationReceipt:{provider:"tangle-inference",backend:"executor",connectionId:o,lifecycle:"request",cleanup:"not-applicable",model:a,runner:"cli-base"}})}function kx(e,t,n,o,r){let i,a,s,d=()=>{t.account=lj(i,a,s,r())};e.getIdentity===void 0?n.add("sandbox-account-identity:not-exposed-by-client"):o(Promise.resolve().then(()=>e.getIdentity?.()).then(c=>{i=c,d()}).catch(()=>{n.add("sandbox-account-identity:request-failed")})),e.usage===void 0?n.add("sandbox-account-usage:not-exposed-by-client"):o(Promise.resolve().then(()=>e.usage?.()).then(c=>{a=c,d()}).catch(()=>{n.add("sandbox-account-usage:request-failed")})),e.subscription===void 0?n.add("sandbox-subscription:not-exposed-by-client"):o(Promise.resolve().then(()=>e.subscription?.()).then(c=>{s=c,d()}).catch(()=>{n.add("sandbox-subscription:request-failed")}))}function lj(e,t,n,o){if(!(e===void 0&&t===void 0&&n===void 0))return{scope:"account",completeness:"provider-reported-possibly-defaulted",...e===void 0?{}:{customerId:e.customerId,billingOwnerId:e.billingOwnerId},...t===void 0?{}:{computeMinutes:t.computeMinutes,gpuSeconds:t.gpuSeconds,gpuCostUsd:t.gpuCostUsd,activeSandboxes:t.activeSandboxes,totalSandboxes:t.totalSandboxes,usagePeriodStart:t.periodStart.toISOString(),usagePeriodEnd:t.periodEnd.toISOString()},...n===void 0?{}:{creditsAvailableUsd:n.creditsAvailableUsd,creditsUsedUsd:n.creditsUsedUsd,monthlyBalanceUsd:n.monthlyBalanceUsd,plan:n.plan,subscriptionStatus:n.status,maximumConcurrentSandboxes:n.maxConcurrentSandboxes,maximumCpuCores:n.limits.maxCpuCores,maximumRamGB:n.limits.maxRamGB,maximumStorageGB:n.limits.maxStorageGB,subscriptionPeriodEnd:new Date(n.currentPeriodEnd).toISOString()},sampledAt:o}}function mt(e){if(typeof e!="string")return;let t=e.trim();return t.length>0&&t.length<=512?t:void 0}function Gi(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)?e:void 0}function gr(e){return typeof e=="number"&&Number.isFinite(e)&&e>0?e:void 0}function Xi(e){if(e===void 0)return;let t=e instanceof Date?e:new Date(e);return Number.isFinite(t.valueOf())?t.toISOString():void 0}function Ax(e,t){return new Promise(n=>{let o=setTimeout(()=>n(void 0),t);e.then(r=>{clearTimeout(o),n(r)},()=>{clearTimeout(o),n(void 0)})})}function Tx(e,t){return new Promise(n=>{let o=setTimeout(()=>n(!1),t);e.then(()=>{clearTimeout(o),n(!0)},()=>{clearTimeout(o),n(!1)})})}function $x(e,t,n){let o=e.delete?.bind(e);return new Proxy(e,{get(r,i){if(i==="delete"&&o!==void 0)return async s=>{t.lifecycle="destroying",await pj(t,r,n).catch(()=>{n.add("runtime-cpu-memory-usage:request-failed-or-timed-out")});let d;for(let c=0;c<2;c+=1)try{await o(s),t.lifecycle="destroyed";return}catch(u){d=u}throw t.lifecycle="unknown",n.add("cleanup-outcome:unknown"),d};let a=Reflect.get(r,i,r);return typeof a=="function"?a.bind(r):a}})}function Cx(e,t,n){e.providerEnvironmentId=mt(t.id),e.name=mt(t.name)??e.name,e.lifecycle=mj(t.status),e.createdAt=Xi(t.createdAt)??e.createdAt,e.startedAt=Xi(t.startedAt),e.lastActivityAt=Xi(t.lastActivityAt),e.expiresAt=Xi(t.expiresAt);let o=mt(t.connection?.runtimeUrl);o!==void 0&&(e.runtimeEndpointHost=ko(o).runtimeEndpointHost),e.gpu=fj(t.gpuLease),e.lifecycle==="unknown"&&n.add("sandbox-lifecycle:not-reported-or-unrecognized")}function Ox(e,t,n){let o=Gi(t);if(o===void 0){n.add("verified-placement:empty-response");return}e.machineId=mt(o.machineId),e.region=mt(o.region)}function Px(e){let t=Gi(e);if(t===void 0)return;let n=gr(t.cpuCores??t.cpu),o=gr(t.memoryMB??t.memoryMb),r=gr(t.diskMb),i=gr(t.diskGB)??(r===void 0?void 0:r/1024),a=Gi(t.accelerator),s=mt(a?.kind??t.gpu),d=gr(a?.count)??1,c=gr(a?.memoryMB);if(!(n===void 0&&o===void 0&&i===void 0&&s===void 0))return{...n===void 0?{}:{cpuCores:n},...o===void 0?{}:{memoryMB:o},...i===void 0?{}:{diskGB:i},...s===void 0?{}:{accelerator:{kind:s,count:d,...c===void 0?{}:{memoryMB:c}}}}}function Nx(e){return mt(Gi(e)?.preferredRegion)}async function pj(e,t,n){if(t.resourceUsage===void 0){n.add("runtime-cpu-memory-usage:not-exposed-by-client");return}let o=await Ax(Promise.resolve().then(()=>t.resourceUsage?.()),750);if(o===void 0){n.add("runtime-cpu-memory-usage:request-failed-or-timed-out");return}if(o===null){n.add("runtime-cpu-memory-usage:unavailable-on-host");return}e.resourceSample={cgroupVersion:o.cgroupVersion,memoryCurrentMb:o.memoryCurrentMb,...o.memoryPeakMb===null?{}:{memoryPeakMb:o.memoryPeakMb},...o.memoryLimitMb===null?{}:{memoryLimitMb:o.memoryLimitMb},cpuUsageUsec:o.cpuUsageUsec,sampledAt:new Date(o.sampledAtMs).toISOString()}}function fj(e){if(e===void 0)return;let t=mt(e.providerInstanceType),n=mt(e.region);return{provider:e.provider,...t===void 0?{}:{instanceType:t},...n===void 0?{}:{region:n},accelerator:e.accelerator.kind,count:e.accelerator.count,status:e.status,...e.customerPricePerHourUsd===void 0?{}:{customerPricePerHourUsd:e.customerPricePerHourUsd},...e.estimatedCustomerCostUsd===void 0?{}:{estimatedCustomerCostUsd:e.estimatedCustomerCostUsd},...e.billing===void 0?{}:{billedSeconds:e.billing.seconds,billedCustomerCostUsd:e.billing.customerCostUsd}}}function mj(e){switch(e){case"pending":return"requested";case"provisioning":return"creating";case"running":return"ready";case"stopped":return"detached";case"failed":return"failed";case"expired":return"expired";case"deleted":return"destroyed";default:return"unknown"}}function Dx(e,t,n=()=>new Date().toISOString()){let o=e,r=new Set(["machine-ip:not-exposed-by-provider","effective-resources:not-exposed-by-provider","disk-usage:not-exposed-by-provider","per-sandbox-cpu-ram-storage-cost:not-exposed-by-provider"]),i={lifecycle:"requested",createdAt:n()},a=[],s=0,d=new WeakMap,c=l=>{s+=1,a.push(l.catch(()=>{}).then(()=>{s-=1}))};return kx(o,i,r,c,n),{client:{async create(l,f){i.lifecycle="creating",i.name=mt(l?.name),i.requestedResources=Px(l?.resources),i.requestedRegion=Nx(l?.driver),i.storagePersistence=l?.ephemeral===!0?"ephemeral-home":"persistent-home";try{let g=await e.create(l,f);Cx(i,g,r),e.describePlacement===void 0?r.add("verified-placement:not-exposed-by-client"):c(Promise.resolve().then(()=>e.describePlacement?.(g)).then(v=>Ox(i,v,r)));let p=$x(g,i,r);return d.set(p,g),p}catch(g){throw i.lifecycle="failed",r.add("provider-environment-id:not-materialized"),g}},...e.get===void 0?{}:{get:(l,f)=>e.get?.(l,f)??Promise.resolve(null)},...e.list===void 0?{}:{list:l=>e.list?.(l)??Promise.resolve([])},...e.describePlacement===void 0?{}:{describePlacement:l=>e.describePlacement?.(d.get(l)??l)}},observation:{async snapshot(){let l=await Tx(Promise.all(a),1e3),f=new Set(r);return(!l||s>0)&&f.add("account-or-placement-observation:pending"),i.machineId===void 0&&f.add("machine-id:not-exposed-by-provider"),i.region===void 0&&f.add("verified-region:not-exposed-by-provider"),gj(i,t,f,n())}}}}function gj(e,t,n,o){return Object.freeze({kind:"sandbox",provider:"tangle-sandbox",...e.providerEnvironmentId===void 0?{}:{providerEnvironmentId:e.providerEnvironmentId},...e.name===void 0?{}:{name:e.name},lifecycle:e.lifecycle,lifecycleMode:t.mode,cleanup:t.cleanup,continuity:t.continuity,location:"remote",...e.runtimeEndpointHost===void 0?{}:{runtimeEndpointHost:e.runtimeEndpointHost},...e.machineId===void 0?{}:{machineId:e.machineId},...e.requestedRegion===void 0?{}:{requestedRegion:e.requestedRegion},...e.region===void 0?{}:{region:e.region},...e.storagePersistence===void 0?{}:{storagePersistence:e.storagePersistence},...e.requestedResources===void 0?{}:{requestedResources:e.requestedResources},...e.resourceSample===void 0?{}:{resourceSample:e.resourceSample},...e.gpu===void 0?{}:{gpu:e.gpu},...e.account===void 0?{}:{account:e.account},createdAt:e.createdAt,...e.startedAt===void 0?{}:{startedAt:e.startedAt},...e.lastActivityAt===void 0?{}:{lastActivityAt:e.lastActivityAt},...e.expiresAt===void 0?{}:{expiresAt:e.expiresAt},observedAt:o,unavailable:Object.freeze([...n].sort())})}async function jx(e,t,n,o){if(t.sessionId!==void 0)throw new ke("CONNECTION_UNSUPPORTED","Tangle sandbox session continuity is unavailable until retained environment recovery is supported",{connectionId:o});let r=await _o(t.profile,n,o),i=mr(r,o),a=await bj(r,o);if(!$v(a,i)){let D=ga(a,i),W=D===a?"choose a runner compatible with this model":`choose runner=${D} to keep model=${i}`;throw new ke("CONNECTION_MODEL_HARNESS_MISMATCH",`Profile field harness=${a} does not support model=${i}. The authored profile was not changed; ${W}, or choose a model advertised for runner=${a}.`,{connectionId:o})}let[{createTangleSandboxClient:s},{createTangleProvider:d},{createExecutor:c}]=await Promise.all([import("./chunks/production-connection-providers-3BNIYUIS.js"),import("@tangle-network/agent-provider-tangle"),import("@tangle-network/agent-runtime/kernel")]),u=xo(o,e),l=hj(),f=`env-braid-${en(t.runId)}`,g=R({kind:"tangle-sandbox-environment-request",idempotencyKey:f}),p=await s(u,e,t.signal),v=Dx(p,l),w=d({client:v.client,defaultBackend:a,name:"tangle-sandbox"}),k=vj(await w.capabilities(),l),P=Ij(t,k),N=Object.freeze({kind:"executor",factory:Bv((D,W)=>c({backend:"sandbox",sandboxClient:yj(v.client,u.name,f,W.signal),maxIterations:1})(D,W)),profile:r,agentRunName:i});return Pn({kind:"prepared-execution",backend:N,capabilities:k,observation:v.observation,...P===void 0?{}:{providerSessionId:P},materializationReceipt:{provider:"tangle-sandbox",backend:"executor",connectionId:o,environmentRequestDigest:g,lifecycle:l.mode,cleanup:l.cleanup,continuity:l.continuity,...l.reason===void 0?{}:{continuityReason:l.reason},portableContext:"unavailable",model:i,runner:a}})}function yj(e,t,n,o){return Object.freeze({async create(r){return await e.create({...r,name:t,idempotencyKey:n},{signal:o})}})}function hj(){return{mode:"ephemeral",cleanup:"delete-after-turn",continuity:"unavailable",reason:"Retained Tangle environment recovery is not exposed by the current Braid port"}}function vj(e,t){return t.continuity==="session"?e:{...e,sessions:{...e.sessions,continue:!1,list:!1,messages:!1},branching:{...e.branching,checkpoint:!1,fork:!1}}}function Ij(e,t){if(t.sessions.continue)return e.sessionId??`session-braid-${en(e.runId)}`}async function bj(e,t){let n=Ji(e,t);try{let{parseBackendType:o}=await import("@tangle-network/sandbox");return o(n)}catch{throw new ke("CONNECTION_UNSUPPORTED","The selected runner is not supported by the published sandbox package",{connectionId:t})}}function Ux(e){return async t=>{let n=await e.select(t),o=t.connectionId===void 0?n:{...n,connection:{connectionId:t.connectionId}};return wj(e,t,o)}}async function wj(e,t,n){let o=e.connections.select(n.connection).record;switch(o.kind){case"cli-bridge":return _x(e,t,n,o.id,Ir(o,e));case"tangle-inference":return xx(e,t,n,o.id,Ir(o,e));case"tangle-sandbox":return jx(e,t,n,o.id)}}async function Ah(e,t){let n=await e.select(t),o=t.connectionId===void 0?n:{...n,connection:{connectionId:t.connectionId}},r=e.connections.select(o.connection).record;if(r.kind!=="cli-bridge")throw new Error("The retained CLI Bridge port received another connection kind");return kh(e,t,o,r.id,Ir(r,e))}var ct=class extends Error{code;constructor(t,n,o){super(n,o===void 0?void 0:{cause:o}),this.name="ProductionCompositionError",this.code=t}},Rj=new Set(["cli-bridge","tangle-inference","tangle-sandbox"]);function Lx(e,t){if(!e||e.profile===void 0)throw new ct("PRODUCTION_CONFIGURATION_REQUIRED","Production startup requires a canonical profile and one connection");let n;try{n=Nv(e.profile)}catch(c){throw new ct("PRODUCTION_PROFILE_INVALID","The selected profile is not a valid canonical AgentProfile",c)}if(!Array.isArray(e.connections)||e.connections.length===0)throw new ct("PRODUCTION_CONNECTION_REQUIRED","Production startup requires at least one configured connection");for(let c of e.connections){if(c===null||typeof c!="object"||Array.isArray(c))throw new ct("PRODUCTION_CONNECTION_INVALID","Every production connection must be an object without secret material");let u=c;if(typeof u.kind!="string")throw new ct("PRODUCTION_CONNECTION_INVALID","Every production connection must declare a provider kind");if(!Rj.has(u.kind))throw new ct("PRODUCTION_CONNECTION_UNSUPPORTED",`Connection ${String(u.id)} uses an unsupported provider kind`)}let o;try{o=new Pv(e.connections);for(let c of o.list())Ir(c,e.connectionOptions)}catch(c){throw new ct("PRODUCTION_CONNECTION_INVALID","The production connection configuration is invalid or contains secret material",c)}let r=t??o;if(t!==void 0){let c=o.list(),u=t.list();if(c.length!==u.length||c.some(l=>t.get(l.id)?.updatedAt!==l.updatedAt))throw new ct("PRODUCTION_CONNECTION_INVALID","The live connection catalog does not match the production configuration")}let i;try{i=r.select({connectionId:e.connectionId}).record}catch(c){throw c instanceof ke&&c.code==="CONNECTION_NOT_FOUND"?new ct("PRODUCTION_CONNECTION_NOT_FOUND","The configured production connection does not exist",c):new ct("PRODUCTION_CONNECTION_REQUIRED","Production startup requires an exact connection id",c)}let a={...e.connectionOptions??{},connections:r,...e.workspaceRoot===void 0?{}:{workspaceCwd:e.workspaceRoot},select:()=>({connection:{connectionId:i.id,expectedKind:i.kind,expectedUpdatedAt:i.updatedAt},...n.model?.default===void 0?{}:{model:n.model.default},...n.harness===void 0?{}:{runner:n.harness}})},s=Ux(a),d=i.kind==="cli-bridge"?new ou({resolve:c=>Ah(a,c),recover:({runId:c,providerSessionId:u})=>Ah(a,{operationId:`recover-${c}`,runId:c,text:"",profile:n,connectionId:i.id,...u===void 0?{}:{sessionId:u},...e.workspaceRoot===void 0?{}:{workspaceRoot:e.workspaceRoot},signal:new AbortController().signal})}):new wr(s);return Object.freeze({profile:n,connections:r,connection:i,execution:d,backendResolver:s})}import{createHash as Sj}from"node:crypto";var Th=256,Ej=128,tn=class extends Error{code;constructor(t,n){super(n),this.name="StorageJournalRebuildError",this.code=t}};function Mx(e){if(!qe(e))throw new tn("JOURNAL_PAYLOAD_INVALID","Journal payload is not JSON");return e}function zx(e){let t=Sj("sha256").update(e??"uninitialized").digest("hex").slice(0,24);return Qi(`workspace-${t}`)}function Bx(e,t){return Uh(`run-journal-${R({workspaceId:e,conversationId:t}).slice(0,24)}`)}function qx(e,t){return e.sequence>0&&(e.sequence%Ej===0||t.event.kind==="run.finished")}function Fx(e,t,n){let o=e.eventId??St(`event-${e.sequence}-${R(e.event).slice(0,16)}`);return TS({scopeId:n,generation:t.sequence,eventId:o,state:t})}function Vx(e){try{return Md(e)}catch(t){throw new tn("JOURNAL_SNAPSHOT_INVALID",`Persisted materialized state failed domain validation: ${t instanceof Error?t.message:String(t)}`)}}function Hx(e,t){try{return Ni(e,t)}catch(n){throw new tn("JOURNAL_SNAPSHOT_TAIL_INVALID",`Persisted snapshot tail failed replay validation: ${n instanceof Error?n.message:String(n)}`)}}function $h(e){return e.map((t,n)=>{let o=xj(t,n+1);if(!o)throw new tn("JOURNAL_EVENT_UNRECOGNIZED",`Persisted journal event ${t.eventId} does not contain a Braid event envelope`);return o})}function Zx(e){switch(e.kind){case"run.requested":return e.operationId;case"conversation.created":case"conversation.imported":case"conversation.updated":case"conversation.selected":case"branch.created":case"branch.selected":return e.operation?.id;case"conversation.deleted":return e.operation.id;case"connection.removed":return e.operation.id;case"draft.recorded":return e.operation?.id;case"operation.requested":case"operation.updated":return e.operation.id;default:return}}function Kx(e,t){switch(t.kind){case"conversation.created":case"conversation.imported":case"conversation.updated":return t.conversation.id;case"conversation.selected":return t.conversationId;case"conversation.deleted":return t.selectedConversation.id;case"branch.created":case"branch.updated":return t.branch.conversationId;case"branch.selected":return t.conversationId;case"turn.created":case"turn.updated":return t.turn.conversationId;case"message.created":return t.message.conversationId;case"analysis.created":case"analysis.updated":case"analysis.completed":return t.analysis.source.conversationId;case"analysis.attachment.created":return t.attachment.destinationConversationId;case"feedback.decision.recorded":return t.decision.conversationId;case"draft.recorded":return e.branches.find(n=>n.id===t.draft.branchId)?.conversationId??e.conversationId;case"operation.requested":case"operation.updated":return t.operation.kind!=="conversation-delete"&&t.operation.target?.kind==="conversation"?t.operation.target.id:e.conversationId;default:return e.conversationId}}function _j(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e,n=t.__braidEvent,o=t.__braidEnvelope;if(n==null||typeof n!="object"||Array.isArray(n)||o===null||typeof o!="object"||Array.isArray(o))return!1;let r=o;return typeof r.sequence=="number"&&Number.isSafeInteger(r.sequence)&&r.sequence>0&&typeof r.revision=="number"&&Number.isSafeInteger(r.revision)&&r.revision>0&&typeof r.occurredAt=="string"&&typeof r.eventId=="string"&&(r.cursor===void 0||typeof r.cursor=="string")&&typeof n.kind=="string"}function xj(e,t){if(e.payloadState==="content-key-unavailable"||e.payloadState==="deleted"||e.payloadState==="redacted")return{eventId:e.eventId,sequence:t,revision:t,occurredAt:e.occurredAt,event:{kind:"content.unavailable",conversationId:e.conversationId,originalKind:e.kind,reason:e.payloadState}};if(_j(e.payload)){let n=e.payload.__braidEnvelope;return{eventId:e.eventId,sequence:n.sequence,revision:n.revision,occurredAt:n.occurredAt,...n.cursor===void 0?{}:{cursor:on(n.cursor)},event:e.payload.__braidEvent}}if(!(e.payload!==null&&typeof e.payload=="object"&&!Array.isArray(e.payload)&&("__braidEvent"in e.payload||"__braidEnvelope"in e.payload)))return{eventId:e.eventId,sequence:t,revision:t,occurredAt:e.occurredAt,...e.cursor===void 0?{}:{cursor:e.cursor},event:{kind:"unknown.event",unknown:{id:e.eventId,type:e.kind,namespace:"braid.storage",summary:"Stored event has no application envelope",sequence:e.sequence}}}}var au=class e{asynchronous=!0;#e;#t;#n;#r=new Map;#o=new Map;#i=Eo();#s;#a;#u=Promise.resolve();#c;constructor(t,n,o,r={}){this.#e=t,this.#t=n,this.#n=o.slice(-Th).map(i=>structuredClone(i)),this.#s=r.initialState===void 0?void 0:structuredClone(r.initialState),this.#a=r.replayEvents===void 0?void 0:r.replayEvents.map(i=>structuredClone(i))}static async fromStorage(t,n,o={}){let r,i,a,s=await t.latestStateSnapshot?.();if(s!=null)try{if(r=Vx(s),i=await t.events({...o,afterStorageId:s.storageId}),a=$h(i),a[0]!==void 0&&a[0].sequence!==r.sequence+1)throw new tn("JOURNAL_SNAPSHOT_TAIL_GAP",`Snapshot at sequence ${r.sequence} is not followed by a contiguous journal tail`);Hx(r,a)}catch{r=void 0,i=void 0,a=void 0}(i===void 0||a===void 0)&&(i=await t.events(o),a=$h(i));let d=new e(t,n,a,{...r===void 0?{}:{initialState:r},replayEvents:a}),c=t.runSequences===void 0?[]:await t.runSequences();for(let u of c)d.#o.set(u.runId,u.lastSequence);if(c.length===0)for(let u of i){let l=u.runId;d.#o.set(l,Math.max(d.#o.get(l)??0,u.sequence))}return d}envelope(t,n){let o=n.kind==="workspace.opened"?n.workspace:t.workspace,r=zx(o),i=St(`event-${r.slice(10)}-${t.sequence+1}-${R(n).slice(0,16)}`),a={eventId:i,sequence:t.sequence+1,revision:t.revision+1,occurredAt:this.#t.now(),event:n};return this.#r.set(i,{workspaceId:r,conversationId:Kx(t,n)}),a}append(t){return this.appendEnvelope(t)}appendWithState(t,n){let o=this.#e.appendWithSnapshot!==void 0&&qx(n,t)?Fx(t,n,this.#e.snapshotScopeId?.()??"storage-default"):void 0;return this.appendEnvelope(t,o)}appendEnvelope(t,n){if(this.#c!==void 0)throw this.#c;let o=t.eventId??St(`event-${t.sequence}-${R(t.event).slice(0,16)}`),r=this.#r.get(o);if(!r)throw new tn("JOURNAL_CONTEXT_MISSING",`Application event ${o} was not created by this storage journal`);let i=pa(t.event)??Bx(r.workspaceId,r.conversationId),a=Zx(t.event),s=(this.#o.get(i)??0)+1,d={__braidEvent:t.event,__braidEnvelope:{sequence:t.sequence,revision:t.revision,occurredAt:t.occurredAt,eventId:o,...t.cursor===void 0?{}:{cursor:t.cursor}}},c={workspaceId:r.workspaceId,conversationId:r.conversationId,runId:i,eventId:o,sequence:s,kind:t.event.kind,payload:Mx(d),occurredAt:t.occurredAt,...a===void 0?{}:{operationId:a},terminal:t.event.kind==="run.finished"},u=this.#u.then(async()=>{if(this.#c!==void 0)throw this.#c;return(n===void 0||this.#e.appendWithSnapshot===void 0?await this.#e.append([c]):await this.#e.appendWithSnapshot({events:[c],snapshot:n})).acceptedEventIds.length===0?(this.#r.delete(o),{appended:!1}):(this.#o.set(i,s),this.#n.push({...t,eventId:o}),this.#n.length>Th&&this.#n.shift(),this.#r.delete(o),{appended:!0})}).catch(l=>{throw this.#c=l,l});return this.#u=u.then(()=>{},()=>{}),u}all(){return this.#n.map(t=>structuredClone(t))}replay(){let t=this.#a??this.#n;return this.#a=void 0,t.map(n=>structuredClone(n))}initialState(){return this.#s===void 0?void 0:structuredClone(this.#s)}async flush(){if(await this.#u,this.#c!==void 0)throw this.#c}async close(){let t;try{await this.flush()}catch(n){t=n}try{await this.#e.close()}catch(n){t??=n}if(t!==void 0)throw t}current(t){return this.#e.current(t)}latest(t,n){return this.#e.latest(t,n)}appendEffect(t){this.#e.appendEffect(t)}reserveEffect(t){return this.#e.reserveEffect(t)}history(t){return this.#e.history(t)}fingerprint(t){return this.#e.fingerprint?.(t)??this.#i.fingerprint(t)}};var kj=Ao({name:"Braid starter",description:"A portable starter profile for the Braid terminal"}),Q9=Ao({name:"Braid starter",description:"A portable starter profile for the Braid terminal",harness:"pi",model:{default:"fixture/deterministic",provider:"fixture",reasoningEffort:"none"}});function Aj(e,t){let n=e.connectionOptions??{};return{...e,connectionOptions:{...n,credentials:n.credentials??t,credentialRefResolver:n.credentialRefResolver??(o=>ce(`cred:v1:${o}`))}}}async function Tj(e){let t=e.clock??new Yd,n=e.credentialStore??Uv(),o=Yi.now(),r=e.production===void 0?void 0:Lx(Aj({...e.production,...e.workspaceRoot===void 0?{}:{workspaceRoot:e.workspaceRoot}},n),e.connectionRegistry);su(e.startupObserver,"production-composition",o),o=Yi.now();let i=await qS({path:e.path,credentialStore:n,...e.storageRoot===void 0&&e.workspaceRoot===void 0?{}:{workspaceRoot:e.storageRoot??e.workspaceRoot},...e.databaseKeyRef===void 0?{}:{databaseKeyRef:e.databaseKeyRef},...e.databaseKeySource===void 0?{}:{databaseKeySource:e.databaseKeySource},...e.backupDirectory===void 0?{}:{backupDirectory:e.backupDirectory},startupObserver:a=>$j(e.startupObserver,`storage.${a.name}`,a.durationMs)});su(e.startupObserver,"storage-open",o);try{o=Yi.now();let a=await au.fromStorage(i,t);su(e.startupObserver,"journal-restore",o),o=Yi.now();let s=new ru({profile:e.profile??r?.profile??kj,execution:e.execution??r?.execution??(e.backendResolver?new wr(e.backendResolver):new Ia),clock:t,ids:e.ids??new Qd,journal:a,effectStorage:i,conversationStorage:i,...e.intelligence===void 0?{intelligence:{analyst:new So}}:{intelligence:e.intelligence},...e.effectCoordinator===void 0?{}:{effectCoordinator:e.effectCoordinator},...e.cancelTimeoutMs===void 0?{}:{cancelTimeoutMs:e.cancelTimeoutMs},...e.interactionResponseTimeoutMs===void 0?{}:{interactionResponseTimeoutMs:e.interactionResponseTimeoutMs}});return su(e.startupObserver,"application-create",o),{app:s,storage:i}}catch(a){throw await i.close().catch(()=>{}),a}}function $j(e,t,n){try{e?.({name:t,durationMs:n})}catch{}}function su(e,t,n){try{e?.({name:t,durationMs:Yi.now()-n})}catch{}}export{Tj as createDurableBraidApplication};
339
- /*! Bundled license information:
340
-
341
- @noble/hashes/esm/utils.js:
342
- (*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
343
- */
344
- //# sourceMappingURL=durable-runtime.js.map
1
+ export { createDurableBraidApplication } from '../app/composition.js';
2
+ //# sourceMappingURL=durable-runtime.js.map