zen-code 4.10.1 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/dist/app.js +151 -2699
  2. package/dist/chunk-069q9hkz.js +1 -0
  3. package/dist/chunk-06trk066.js +1 -0
  4. package/dist/chunk-0kfw8bwn.js +2 -0
  5. package/dist/chunk-0mq8786q.js +281 -0
  6. package/dist/chunk-0qz8rr2k.js +1 -0
  7. package/dist/chunk-1d47g6nc.js +2 -0
  8. package/dist/chunk-1gssqf6g.js +88 -0
  9. package/dist/chunk-1rcc9xzn.js +79 -0
  10. package/dist/chunk-2bjeg40f.js +1 -0
  11. package/dist/chunk-2gd8vzrf.js +2 -0
  12. package/dist/chunk-2gprcgep.js +6 -0
  13. package/dist/chunk-3k3c686f.js +1 -0
  14. package/dist/chunk-43h0n2td.js +1 -0
  15. package/dist/chunk-492hjs9k.js +26 -0
  16. package/dist/chunk-4eaqmt3c.js +16 -0
  17. package/dist/chunk-4fs853nh.js +2 -0
  18. package/dist/chunk-5fe27s34.js +2 -0
  19. package/dist/chunk-5hqvapp1.js +7 -0
  20. package/dist/chunk-6b3vfr39.js +2 -0
  21. package/dist/chunk-6j695pam.js +5 -0
  22. package/dist/chunk-6saqxa3z.js +2 -0
  23. package/dist/chunk-78ksrp8v.js +41 -0
  24. package/dist/chunk-7cx9kda0.js +228 -0
  25. package/dist/chunk-7qba2raw.js +2 -0
  26. package/dist/chunk-81b2s97q.js +1 -0
  27. package/dist/chunk-88w3txtb.js +160 -0
  28. package/dist/chunk-8ygdre0g.js +1 -0
  29. package/dist/chunk-9011y634.js +6 -0
  30. package/dist/chunk-9zcr1qh6.js +1 -0
  31. package/dist/chunk-a0nr8jva.js +2 -0
  32. package/dist/chunk-agevsn2e.js +1 -0
  33. package/dist/chunk-akc3s5aw.js +6 -0
  34. package/dist/chunk-b0beqmg2.js +2 -0
  35. package/dist/chunk-b175s7dm.js +1 -0
  36. package/dist/chunk-bk32cwxa.js +5 -0
  37. package/dist/chunk-bn077sjq.js +213 -0
  38. package/dist/chunk-c9yrpb3g.js +18 -0
  39. package/dist/chunk-cb0f54ar.js +3 -0
  40. package/dist/chunk-ctqtahz4.js +1 -0
  41. package/dist/chunk-d2sr8fnm.js +3 -0
  42. package/dist/chunk-d5gzkkgg.js +1 -0
  43. package/dist/chunk-dh2f4xyb.js +3 -0
  44. package/dist/chunk-dr32dt9y.js +1 -0
  45. package/dist/chunk-dv1vt080.js +1 -0
  46. package/dist/chunk-dz9sqfph.js +2 -0
  47. package/dist/chunk-e7mbewmw.js +1 -0
  48. package/dist/chunk-em03xqy9.js +1 -0
  49. package/dist/chunk-fkt5b511.js +1 -0
  50. package/dist/chunk-gphssgy6.js +2 -0
  51. package/dist/chunk-h2hk7vx4.js +1 -0
  52. package/dist/chunk-h7ypcqp3.js +279 -0
  53. package/dist/chunk-j8tq0e8m.js +2 -0
  54. package/dist/chunk-jd1razfg.js +91 -0
  55. package/dist/chunk-jhxvctg5.js +8 -0
  56. package/dist/chunk-kada5fyh.js +1 -0
  57. package/dist/chunk-kgc6ws03.js +1 -0
  58. package/dist/chunk-mk8ggmt8.js +17 -0
  59. package/dist/chunk-mv5m8bf4.js +140 -0
  60. package/dist/chunk-mv8a5svx.js +1 -0
  61. package/dist/chunk-n61yv4t5.js +2 -0
  62. package/dist/chunk-nt2yp4jh.js +1 -0
  63. package/dist/chunk-p7ew4trx.js +1 -0
  64. package/dist/chunk-pgnhcznr.js +4 -0
  65. package/dist/chunk-q8cfxky4.js +8 -0
  66. package/dist/chunk-q8zsxwd8.js +81 -0
  67. package/dist/chunk-qfa5v4n5.js +1 -0
  68. package/dist/chunk-qhzztj83.js +1 -0
  69. package/dist/chunk-snmkgfbe.js +15 -0
  70. package/dist/chunk-ss4bh5wb.js +2 -0
  71. package/dist/chunk-sv0k2v66.js +1 -0
  72. package/dist/chunk-tbav8trq.js +23 -0
  73. package/dist/chunk-tmyzfvsy.js +1 -0
  74. package/dist/chunk-ts4jreym.js +7 -0
  75. package/dist/chunk-tws3wcnm.js +2 -0
  76. package/dist/chunk-v0e9bsvt.js +89 -0
  77. package/dist/chunk-vwj4n000.js +4 -0
  78. package/dist/chunk-wd6s7gg7.js +175 -0
  79. package/dist/chunk-y524zd2h.js +54 -0
  80. package/dist/chunk-yb71zqvt.js +2 -0
  81. package/dist/chunk-yejgw2hm.js +112 -0
  82. package/dist/chunk-yfjs6pf8.js +3 -0
  83. package/dist/chunk-zhqdp4ak.js +2 -0
  84. package/dist/chunk-zkd3m39v.js +1 -0
  85. package/dist/cli.js +1 -3116
  86. package/dist/nonInteractive.js +180 -1950
  87. package/dist/zen-core.js +644 -0
  88. package/dist/zen-keyboard.js +3 -358
  89. package/package.json +5 -3
@@ -0,0 +1,7 @@
1
+ import{n as k}from"./chunk-2gd8vzrf.js";import{na as l,oa as m}from"./chunk-n61yv4t5.js";import{sa as T,ua as _,va as S,wa as x}from"./chunk-7qba2raw.js";import"./chunk-vwj4n000.js";import"./chunk-4eaqmt3c.js";import"./chunk-88w3txtb.js";import"./chunk-6saqxa3z.js";import"./chunk-v0e9bsvt.js";import"./chunk-jhxvctg5.js";import"./chunk-bk32cwxa.js";import"./chunk-qfa5v4n5.js";import{Rk as z}from"./chunk-0kfw8bwn.js";import"./chunk-78ksrp8v.js";import"./chunk-yb71zqvt.js";import"./chunk-4fs853nh.js";var Q=m(),n=z.object({thread_id:z.string().optional(),thread_ts:z.string().optional()}).catchall(z.unknown()),j=z.object({tags:z.array(z.string()).optional(),recursion_limit:z.number().int().optional(),configurable:n.optional()}).catchall(z.unknown()).describe("The configuration of an assistant.");z.object({assistant_id:z.string(),graph_id:z.string(),config:j,created_at:z.string(),updated_at:z.string(),metadata:z.object({}).catchall(z.any())});var H=z.object({source:z.union([z.literal("input"),z.literal("loop"),z.literal("update"),z.string()]).optional(),step:z.number().optional(),writes:z.any().nullable().optional(),parents:z.any().optional()}).catchall(z.unknown()),h=z.object({node:z.string(),input:z.unknown().optional()}),g=z.object({update:z.union([z.any(),z.array(z.tuple([z.string(),z.any()]))]).nullable().optional(),resume:z.unknown().optional(),goto:z.union([h,z.array(h),z.string(),z.array(z.string())]).optional()});z.object({limit:z.number().int().optional(),offset:z.number().int().optional()});var V=z.object({thread_id:z.string()}),w=z.object({thread_id:z.string(),run_id:z.string()}),s=z.object({graph_id:z.string().optional(),metadata:H.optional(),limit:z.number().int().optional(),offset:z.number().int().optional(),sort_by:z.enum(["assistant_id","graph_id","name","created_at","updated_at"]).optional(),sort_order:z.enum(["asc","desc"]).optional()}),o=z.object({graph_id:z.string().optional(),metadata:H.optional()}),t=z.object({xray:z.union([z.string(),z.boolean(),z.number()]).optional()}),c=z.object({name:z.string().optional(),description:z.string().optional(),metadata:H.optional(),config:j.optional()}).optional(),a=z.object({assistant_id:z.string().optional(),graph_id:z.string().describe("The ID of graph to create an assistant from."),name:z.string().optional(),description:z.string().optional(),metadata:H.optional(),config:j.optional(),if_exists:z.enum(["raise","do_nothing"]).optional()}),r=z.object({assistant_id:z.union([z.string(),z.string()]),checkpoint_id:z.string().optional(),input:z.any().optional(),command:g.optional(),metadata:H.optional(),config:j.optional(),webhook:z.string().optional(),interrupt_before:z.union([z.literal("*"),z.array(z.string())]).optional(),interrupt_after:z.union([z.literal("*"),z.array(z.string())]).optional(),on_disconnect:z.enum(["cancel","continue"]).optional().default("continue"),multitask_strategy:z.enum(["reject","rollback","interrupt","enqueue"]).optional(),stream_mode:z.array(z.enum(["values","messages","messages-tuple","updates","events","debug","custom"])).optional(),stream_subgraphs:z.boolean().optional(),stream_resumable:z.boolean().optional(),after_seconds:z.number().optional(),if_not_exists:z.enum(["create","reject"]).optional(),on_completion:z.enum(["complete","continue"]).optional(),feedback_keys:z.array(z.string()).optional(),langsmith_tracer:z.unknown().optional()}).describe("Payload for creating a stateful run."),e=z.object({limit:z.coerce.number().int().optional().default(10),offset:z.coerce.number().int().optional().default(0),status:z.enum(["pending","running","error","success","timeout","interrupted"]).optional()}),zz=z.object({wait:z.coerce.boolean().optional().default(!1),action:z.enum(["interrupt","rollback"]).optional().default("interrupt")}),Dz=z.object({cancel_on_disconnect:z.coerce.boolean().optional().default(!1),last_event_id:z.string().optional(),stream_mode:z.enum(["values","messages","messages-tuple","updates","events","debug","custom"]).optional()}),Kz=z.object({thread_id:z.string().describe("The ID of thread. If not provided, an ID is generated.").optional(),metadata:H.optional(),if_exists:z.union([z.literal("raise"),z.literal("do_nothing")]).optional()}).describe("Payload for creating a thread."),i=z.object({ids:z.array(z.string()).describe("List of thread IDs to include. Others are excluded.").optional(),metadata:H.describe("Metadata to search for.").optional(),status:z.enum(["idle","busy","interrupted","error"]).describe("Filter by thread status.").optional(),values:z.any().describe("Filter by thread values.").optional(),limit:z.number().int().gte(1).lte(1000).describe("Maximum number to return.").optional(),offset:z.number().int().gte(0).describe("Offset to start from.").optional(),sort_by:z.enum(["thread_id","status","created_at","updated_at"]).describe("Sort by field.").optional(),sort_order:z.enum(["asc","desc"]).describe("Sort order.").optional(),select:z.array(z.enum(["thread_id","created_at","updated_at","metadata","config","context","status","values","interrupts","title"])).describe("Specify which fields to return. If not provided, all fields are returned.").optional(),without_details:z.boolean().describe("Whether to return values.").optional()}).describe("Payload for listing threads.");z.object({values:z.union([z.record(z.string(),z.unknown()),z.array(z.record(z.string(),z.unknown()))]).nullish()}).describe("Payload for adding state to a thread.");var Oz=z.object({metadata:H.optional(),status:z.enum(["idle","busy","interrupted","error"]).optional(),values:z.any().optional()}).describe("Payload for patching a thread."),p=z.object({assistant_id:z.string(),input:z.any().optional(),command:g.optional(),metadata:H.optional(),config:j.optional(),webhook:z.string().optional(),interrupt_before:z.union([z.literal("*"),z.array(z.string())]).optional(),interrupt_after:z.union([z.literal("*"),z.array(z.string())]).optional(),on_disconnect:z.enum(["cancel","continue"]).optional().default("continue"),multitask_strategy:z.enum(["reject","rollback","interrupt","enqueue"]).optional(),stream_mode:z.array(z.enum(["values","messages","messages-tuple","updates","events","debug","custom"])).optional(),stream_subgraphs:z.boolean().optional(),stream_resumable:z.boolean().optional(),after_seconds:z.number().optional(),if_not_exists:z.enum(["create","reject"]).optional(),on_completion:z.enum(["complete","continue"]).optional(),feedback_keys:z.array(z.string()).optional(),langsmith_tracer:z.unknown().optional()}).describe("Payload for creating a run (background/wait)."),Xz=z.object({cancel_on_disconnect:z.coerce.boolean().optional().default(!1)}),Yz=z.object({cancel_on_disconnect:z.coerce.boolean().optional().default(!1)}),b=z.object({assistant_id:z.string().describe("The assistant ID or graph name to run."),input:z.any().optional().describe("The input to the graph."),command:g.optional(),metadata:H.optional().describe("Metadata to assign to the run."),config:j.optional(),context:z.object({}).catchall(z.any()).optional().describe("Static context added to the assistant."),webhook:z.string().optional(),interrupt_before:z.union([z.literal("*"),z.array(z.string())]).optional(),interrupt_after:z.union([z.literal("*"),z.array(z.string())]).optional(),stream_mode:z.union([z.enum(["values","messages","messages-tuple","tasks","checkpoints","updates","events","debug","custom"]),z.array(z.enum(["values","messages","messages-tuple","tasks","checkpoints","updates","events","debug","custom"]))]).optional().default(["values"]),feedback_keys:z.array(z.string()).optional(),stream_subgraphs:z.boolean().optional().default(!1),stream_resumable:z.boolean().optional().default(!1)}).describe("Payload for creating a stateless run."),Zz=z.array(b).min(1).describe("Payload for creating a batch of stateless runs."),$z=z.object({action:z.enum(["interrupt","rollback"]).optional().default("interrupt").describe("Action to take when cancelling the run."),wait:z.coerce.boolean().optional().default(!1)}),Jz=z.union([z.object({status:z.enum(["pending","running","all"]).describe("Filter runs by status to cancel.")}),z.object({thread_id:z.string().describe("The ID of the thread containing runs to cancel.")}),z.object({run_ids:z.array(z.string()).min(1).describe("List of run IDs to cancel.")})]);function E(K,$){let D=$.split("/").filter((Y)=>Y),X=new URL(K).pathname.split("/").filter((Y)=>Y),O={};return D.forEach((Y,Z)=>{if(Y.startsWith(":")){let W=Y.slice(1);O[W]=X[Z]}}),O}function A(K){let $=new URL(K).searchParams,D={};return $.forEach((X,O)=>{if(!isNaN(Number(X))&&X!=="")D[O]=Number(X);else if(X==="true"||X==="false")D[O]=X==="true";else D[O]=X}),D}function f(K,$){let D=K.safeParse($);if(!D.success)throw new P(D.error.issues);return D.data}class P extends Error{errors;constructor(K){super("Validation failed");this.name="ValidationError",this.errors=K}}function L(K,$=200,D){return new Response(JSON.stringify(K),{status:$,headers:{"Content-Type":"application/json",...D}})}function F(K,$=500){if(K instanceof P)return L({error:"Validation Error",details:K.errors},400);return L({error:K instanceof Error?K.message:"Unknown error"},$)}function R(K){let $,D=!1,X=new AbortController,O=new ReadableStream({async start(Y){$=Y;let Z=new TextEncoder,W={signal:X.signal,writeSSE:async({data:J,event:M,id:N})=>{if(D||X.signal.aborted)return;try{let B="";if(N)B+=`id: ${N}
2
+ `;if(M)B+=`event: ${M}
3
+ `;B+=`data: ${J}
4
+
5
+ `,$.enqueue(Z.encode(B))}catch(B){if(!D&&!X.signal.aborted)throw B}},close:()=>{if(!D){D=!0;try{$.close()}catch(J){}}}};try{await K(W)}catch(J){if(!X.signal.aborted)console.error("SSE stream error:",J)}finally{if(!D){D=!0;try{$.close()}catch(J){}}}},cancel(){if(D=!0,!X.signal.aborted)X.abort("Client disconnected")}});return new Response(O,{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}function u(K,$=process.env.HEARTBEAT_INTERVAL?parseInt(process.env.HEARTBEAT_INTERVAL):1500){return async(D)=>{let X=null,O=!1,Y=()=>{if(X)clearInterval(X),X=null},Z=()=>{Y(),X=setInterval(async()=>{if(D.signal.aborted||O){Y();return}try{await D.writeSSE({event:"ping",data:"{}"})}catch(M){Y()}},$)},W=()=>{Y()};D.signal.addEventListener("abort",W);let J={signal:D.signal,writeSSE:async(M)=>{if(D.signal.aborted)return;if(Y(),await D.writeSSE(M),!D.signal.aborted)Z()},close:()=>{Y(),D.close()}};Z();try{await K(J)}finally{O=!0,Y(),D.signal.removeEventListener("abort",W)}}}async function Mz(K,$){try{let D=await K.json(),X=f(s,D),O=await Q.assistants.search(k(X));return L(O,200,{"X-Pagination-Total":"0"})}catch(D){return F(D)}}async function Wz(K,$){try{let D=await K.json(),X=f(o,D),O=await Q.assistants.count(k(X));return L(O)}catch(D){return F(D)}}async function Nz(K,$){try{let O=new URL(K.url).pathname.split("/").filter((Z)=>Z)[1],Y=await Q.assistants.get(O);return L(Y)}catch(D){return F(D)}}async function fz(K,$){try{let O=new URL(K.url).pathname.split("/").filter((Y)=>Y)[1];return await Q.assistants.delete(O),L({})}catch(D){return F(D)}}async function Bz(K,$){try{let O=new URL(K.url).pathname.split("/").filter((J)=>J)[1],Y=await K.json(),Z=f(c,Y),W=await Q.assistants.update(O,k(Z));return L(W)}catch(D){return F(D)}}async function Fz(K,$){try{let O=new URL(K.url).pathname.split("/").filter((J)=>J)[1],Y=A(K.url),{xray:Z}=f(t,Y),W=await Q.assistants.getGraph(O,{xray:Z!==void 0?Z==="true":void 0});return L(W)}catch(D){return F(D)}}async function Qz(K,$){return F({},501)}async function Lz(K,$){return F({},501)}async function Ez(K,$){try{let O=new URL(K.url).pathname.split("/").filter((Z)=>Z)[1],Y=await Q.assistants.getSchemas(O);return L(Y)}catch(D){return F(D)}}async function kz(K,$){try{let O=new URL(K.url).pathname.split("/").filter((J)=>J)[1],Y=await K.json(),Z=f(c,Y),W=await Q.assistants.getVersions(O,k(Z));return L(W)}catch(D){return F(D)}}async function Uz(K,$){try{let O=new URL(K.url).pathname.split("/").filter((J)=>J)[1],Y=A(K.url),Z=Y.version?parseInt(Y.version):1,W=await Q.assistants.setLatest(O,Z);return L(W)}catch(D){return F(D)}}async function Vz(K,$){try{let D=await K.json(),X=f(a,D),O=await Q.assistants.create(k(X));return L(O)}catch(D){return F(D)}}async function Gz(K,$){try{let D=await K.json(),X=f(Kz,D),O=await Q.threads.create(k(X));return L(O)}catch(D){return F(D)}}async function Az(K,$){try{let D=await K.json(),X=f(i,D),O=await Q.threads.search(k(X));return L(O,200,{"X-Pagination-Total":O.length.toString()})}catch(D){return F(D)}}async function Iz(K,$){try{let D=await K.json(),X=f(i.partial(),D),O=await Q.threads.count(k(X));return L(O)}catch(D){return F(D)}}async function Hz(K,$){try{let D=E(K.url,"/threads/:thread_id"),{thread_id:X}=f(V,D),O=await Q.threads.get(X);return L(O)}catch(D){return F(D)}}async function vz(K,$){try{let D=E(K.url,"/threads/:thread_id"),{thread_id:X}=f(V,D),O=await K.json(),Y=f(Oz,O),Z=await Q.threads.patch(X,k(Y));return L(Z)}catch(D){return F(D)}}async function Tz(K,$){try{let D=E(K.url,"/threads/:thread_id"),{thread_id:X}=f(V,D);return await Q.threads.delete(X),new Response(null,{status:204})}catch(D){return F(D)}}async function xz(K,$){try{let D=E(K.url,"/threads/:thread_id/state"),{thread_id:X}=f(V,D),O=A(K.url),Y={subgraphs:O.subgraphs==="true"||O.subgraphs===!0},Z=await Q.threads.getState(X,Y);return L(Z)}catch(D){return F(D)}}async function jz(K,$){try{let D=E(K.url,"/threads/:thread_id/state"),{thread_id:X}=f(V,D),O=await K.json(),Y=await Q.threads.updateState(X,k(O));return L(Y)}catch(D){return F(D)}}async function _z(K,$){try{let D=E(K.url,"/threads/:thread_id/state/checkpoint"),{thread_id:X}=f(V,D),O=await K.json(),Y=A(K.url),Z={subgraphs:Y.subgraphs==="true"||Y.subgraphs===!0,...O},W=await Q.threads.getState(X,Z);return L(W)}catch(D){return F(D)}}async function wz(K,$){try{let D=E(K.url,"/threads/:thread_id/history"),{thread_id:X}=f(V,D),O=A(K.url),Y={limit:O.limit?parseInt(O.limit,10):void 0,before:O.before},Z=await Q.threads.getStateHistory(X,Y);return L(Z)}catch(D){return F(D)}}async function Cz(K,$){try{let D=E(K.url,"/threads/:thread_id/history"),{thread_id:X}=f(V,D),O=await K.json(),Y={limit:O.limit,before:O.before},Z=await Q.threads.getStateHistory(X,Y);return L(Z)}catch(D){return F(D)}}async function bz(K,$){try{let D=E(K.url,"/threads/:thread_id/copy"),{thread_id:X}=f(V,D),O=await Q.threads.copy(X);return L(O)}catch(D){return F(D)}}async function Sz(K,$){try{let D=E(K.url,"/threads/:thread_id/stream"),{thread_id:X}=f(V,D),O=A(K.url),Y={lastEventId:K.headers.get("Last-Event-ID")||O.last_event_id,streamModes:O.stream_modes?Array.isArray(O.stream_modes)?O.stream_modes:[O.stream_modes]:void 0};return new Response(`data: {"status": "stream_ready"}
6
+
7
+ `,{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}catch(D){return F(D)}}async function gz(K,$){try{let D=E(K.url,"/threads/:thread_id/runs/stream"),{thread_id:X}=f(V,D),O=await K.json(),Y=f(r,O);return R(u(async(Z)=>{Y.config=Y.config||{},Y.config.configurable=Y.config.configurable||{};let W=$?.langgraph_context;if(W)Object.assign(Y.config.configurable,W);let J=null,M=!1,N=()=>{M=!0};Z.signal.addEventListener("abort",N);try{J=Q.runs.stream(X,Y.assistant_id,k(Y));for await(let{event:B,data:U}of J){if(M||Z.signal.aborted)break;await Z.writeSSE({data:S(U)??"",event:B})}}catch(B){if(!Z.signal.aborted&&!M)throw B}finally{if(Z.signal.removeEventListener("abort",N),J){try{await J.return(void 0)}catch(B){}J=null}}}))}catch(D){return F(D)}}async function Pz(K,$){try{let D=E(K.url,"/threads/:thread_id/runs/:run_id/stream"),{thread_id:X,run_id:O}=f(w,D),Y=A(K.url),{cancel_on_disconnect:Z,last_event_id:W,stream_mode:J}=f(Dz,Y);return R(u(async(M)=>{let N=new AbortController,B=null,U=!1,v=[],G=()=>{N.abort("Client disconnected")};if(K.signal)K.signal.addEventListener("abort",G),v.push({signal:K.signal,handler:G});let y=()=>{U=!0,N.abort("SSE stream closed")};M.signal.addEventListener("abort",y),v.push({signal:M.signal,handler:y});try{B=Q.runs.joinStream(X,O,{signal:N.signal,cancelOnDisconnect:Z,lastEventId:W,streamMode:J?[J]:void 0});for await(let{event:I,data:C,id:q}of B){if(U||M.signal.aborted||N.signal.aborted)break;await M.writeSSE({data:S(C)??"",event:I,id:q})}}catch(I){if(!(N.signal.aborted||M.signal.aborted)&&!(I instanceof Error&&I.message.includes("user cancel")))console.error("Join stream error:",I),await M.writeSSE({event:"error",data:JSON.stringify({error:I instanceof Error?I.message:"Unknown error"})})}finally{for(let{signal:I,handler:C}of v)try{I.removeEventListener("abort",C)}catch(q){}if(B){try{await B.return(void 0)}catch(I){}B=null}}}))}catch(D){return F(D)}}async function Rz(K,$){try{let D=E(K.url,"/threads/:thread_id/runs"),{thread_id:X}=f(V,D),O=A(K.url),{limit:Y,offset:Z,status:W}=f(e,O),J=await Q.runs.list(X,{limit:Y,offset:Z,status:W});return L(J)}catch(D){return F(D)}}async function uz(K,$){try{let D=E(K.url,"/threads/:thread_id/runs/:run_id/cancel"),{thread_id:X,run_id:O}=f(w,D),Y=A(K.url),{wait:Z,action:W}=f(zz,Y),J=Q.runs.cancel(X,O,Z,W);if(Z)await J;return new Response(null,{status:Z?204:202})}catch(D){return F(D)}}async function yz(K,$){try{let D=E(K.url,"/threads/:thread_id/runs"),{thread_id:X}=f(V,D),O=await K.json(),Y=f(p,O),Z=k(Y);Z.config=Z.config||{},Z.config.configurable=Z.config.configurable||{};let W=$?.langgraph_context;if(W)Object.assign(Z.config.configurable,W);Z.config.configurable.graph_id=Y.assistant_id,Z.config.configurable.thread_id=X;let J=Q.threads,M=await J.createRun(X,Y.assistant_id,Z);return(async()=>{let N=!1;try{for await(let B of x(J,M,Z,{attempt:0,getGraph:T}));}catch(B){console.error("Background run error:",B)}finally{if(!N){N=!0;try{await _.globalMessageQueue.removeQueue(M.run_id)}catch(B){}}}})(),L(M,200,{"Content-Location":`/threads/${X}/runs/${M.run_id}`})}catch(D){return F(D)}}async function qz(K,$){try{let D=E(K.url,"/threads/:thread_id/runs/wait"),{thread_id:X}=f(V,D),O=await K.json(),Y=f(p,O),Z=A(K.url),{cancel_on_disconnect:W}=f(Xz,Z),J=k(Y);J.config=J.config||{},J.config.configurable=J.config.configurable||{};let M=$?.langgraph_context;if(M)Object.assign(J.config.configurable,M);J.config.configurable.graph_id=Y.assistant_id,J.config.configurable.thread_id=X;let N=Q.threads,B=await N.createRun(X,Y.assistant_id,J),U={};for await(let{event:v,data:G}of x(N,B,J,{attempt:0,getGraph:T}))if(v==="end"||v==="writes/value"){if(G&&typeof G==="object")Object.assign(U,G)}return L(U,200,{"Content-Location":`/threads/${X}/runs/${B.run_id}`})}catch(D){return F(D)}}async function hz(K,$){try{let D=E(K.url,"/threads/:thread_id/runs/:run_id"),{thread_id:X,run_id:O}=f(w,D),Z=(await Q.runs.list(X,{limit:1000})).find((W)=>W.run_id===O);if(!Z)return F(Error("Run not found"),404);return L(Z)}catch(D){return F(D)}}async function mz(K,$){try{let D=E(K.url,"/threads/:thread_id/runs/:run_id"),{thread_id:X,run_id:O}=f(w,D);return await Q.threads.updateRun(O,{status:"deleted"}),new Response(null,{status:204})}catch(D){return F(D)}}async function cz(K,$){try{let D=E(K.url,"/threads/:thread_id/runs/:run_id/join"),{thread_id:X,run_id:O}=f(w,D),Y=A(K.url),{cancel_on_disconnect:Z}=f(Yz,Y),J=(await Q.runs.list(X,{limit:1000})).find((B)=>B.run_id===O);if(!J)return F(Error("Run not found"),404);if(J.status==="success"||J.status==="error")return L({});let M=new AbortController;if(Z){let B=()=>{M.abort("Client disconnected")};K.signal?.addEventListener("abort",B)}let N={};for await(let{event:B,data:U}of Q.runs.joinStream(X,O,{signal:M.signal,cancelOnDisconnect:Z}))if(B.event==="end"||B.event==="writes/value"){if(U&&typeof U==="object")Object.assign(N,U)}return L(N)}catch(D){return F(D)}}async function iz(K,$){try{let D=await K.json(),X=f(b,D),O=k(X);O.config=O.config||{},O.config.configurable=O.config.configurable||{};let Y=$?.langgraph_context;if(Y)Object.assign(O.config.configurable,Y);let Z=Q.threads,W=await Z.create({metadata:{...O.metadata,temporary:!0}});O.config.configurable.graph_id=X.assistant_id,O.config.configurable.thread_id=W.thread_id,O.temporary=!0;let J=await Z.createRun(W.thread_id,X.assistant_id,O);return(async()=>{let M=!1;try{for await(let N of x(Z,J,O,{attempt:0,getGraph:T}));}catch(N){console.error("Stateless run error:",N)}finally{try{await Z.delete(W.thread_id)}catch(N){console.error("Error cleaning up temporary thread:",N)}if(!M){M=!0;try{await _.globalMessageQueue.removeQueue(J.run_id)}catch(N){}}}})(),L(J,200,{"Content-Location":`/threads/${W.thread_id}/runs/${J.run_id}`})}catch(D){return F(D)}}async function pz(K,$){try{let D=await K.json(),X=f(b,D),O=k(X);O.config=O.config||{},O.config.configurable=O.config.configurable||{};let Y=$?.langgraph_context;if(Y)Object.assign(O.config.configurable,Y);let Z=Q.threads,W=await Z.create({metadata:{...O.metadata,temporary:!0}});O.config.configurable.graph_id=X.assistant_id,O.config.configurable.thread_id=W.thread_id,O.temporary=!0;let J=await Z.createRun(W.thread_id,X.assistant_id,O);return R(u(async(M)=>{try{for await(let N of x(Z,J,O,{attempt:0,getGraph:T}))await M.writeSSE({data:JSON.stringify(N),event:"data"})}catch(N){if(N instanceof Error&&N.name!=="AbortError")throw console.error("Stream error:",N),N}finally{try{await Z.delete(W.thread_id)}catch(N){console.error("Error cleaning up temporary thread:",N)}}}))}catch(D){return F(D)}}async function dz(K,$){try{let D=await K.json(),X=f(b,D),O=k(X);O.config=O.config||{},O.config.configurable=O.config.configurable||{};let Y=$?.langgraph_context;if(Y)Object.assign(O.config.configurable,Y);let Z=Q.threads,W=await Z.create({metadata:{...O.metadata,temporary:!0}});O.config.configurable.graph_id=X.assistant_id,O.config.configurable.thread_id=W.thread_id,O.temporary=!0;let J=await Z.createRun(W.thread_id,X.assistant_id,O),M={};try{for await(let{event:N,data:B}of x(Z,J,O,{attempt:0,getGraph:T}))if(N==="end"||N==="writes/value"){if(B&&typeof B==="object")Object.assign(M,B)}}finally{try{await Z.delete(W.thread_id)}catch(N){console.error("Error cleaning up temporary thread:",N)}}return L(M,200,{"Content-Location":`/threads/${W.thread_id}/runs/${J.run_id}`})}catch(D){return F(D)}}async function lz(K,$){try{let D=await K.json(),X=f(Zz,D),O=Q.threads,Y=[],Z=X.map(async(J)=>{try{let M=k(J);M.config=M.config||{},M.config.configurable=M.config.configurable||{};let N=$?.langgraph_context;if(N)Object.assign(M.config.configurable,N);let B=await O.create({metadata:{...M.metadata,temporary:!0}});M.config.configurable.graph_id=J.assistant_id,M.config.configurable.thread_id=B.thread_id,M.temporary=!0;let U=await O.createRun(B.thread_id,J.assistant_id,M);return(async()=>{let v=!1;try{for await(let G of x(O,U,M,{attempt:0,getGraph:T}));}catch(G){console.error("Batch run error:",G)}finally{try{await O.delete(B.thread_id)}catch(G){console.error("Error cleaning up temporary thread:",G)}if(!v){v=!0;try{await _.globalMessageQueue.removeQueue(U.run_id)}catch(G){}}}})(),{thread_id:B.thread_id,run_id:U.run_id}}catch(M){return console.error("Batch run creation error:",M),{error:(M instanceof Error?M.message:"Unknown error")||"Unknown error"}}}),W=await Promise.all(Z);return Y.push(...W),L(Y,200)}catch(D){return F(D)}}async function nz(K,$){try{let D=await K.json(),X=f(Jz,D),O=new URL(K.url),Y=f($z,{action:O.searchParams.get("action")||"interrupt"}),Z=Q.threads,W=[];if("run_ids"in X&&X.run_ids)for(let J of X.run_ids)try{console.warn(`Cancel by run_id ${J} not fully implemented yet`)}catch(M){console.error(`Error cancelling run ${J}:`,M)}else if("thread_id"in X&&X.thread_id){let J=X.thread_id;try{let M=await Z.listRuns(J,{limit:1000,offset:0});for(let N of M)try{Q.runs.cancel(J,N.run_id,Y.wait,Y.action),W.push(N.run_id)}catch(B){console.error(`Error cancelling run ${N.run_id}:`,B)}}catch(M){console.error(`Error listing runs for thread ${J}:`,M)}}else if("status"in X&&X.status)console.warn(`Cancel by status ${X.status} not fully implemented yet`);return new Response(null,{status:204})}catch(D){return F(D)}}var sz=[{method:"POST",pattern:/^\/assistants\/search$/,handler:Mz},{method:"POST",pattern:/^\/assistants\/count$/,handler:Wz},{method:"GET",pattern:/^\/assistants\/[^/]+$/,handler:Nz},{method:"DELETE",pattern:/^\/assistants\/[^/]+$/,handler:fz},{method:"PATCH",pattern:/^\/assistants\/[^/]+$/,handler:Bz},{method:"GET",pattern:/^\/assistants\/[^/]+\/graph$/,handler:Fz},{method:"GET",pattern:/^\/assistants\/[^/]+\/subgraphs$/,handler:Qz},{method:"GET",pattern:/^\/assistants\/[^/]+\/subgraphs\/[^/]+$/,handler:Lz},{method:"GET",pattern:/^\/assistants\/[^/]+\/schemas$/,handler:Ez},{method:"POST",pattern:/^\/assistants\/[^/]+\/versions$/,handler:kz},{method:"POST",pattern:/^\/assistants\/[^/]+\/latest$/,handler:Uz},{method:"POST",pattern:/^\/assistants$/,handler:Vz},{method:"POST",pattern:/^\/threads$/,handler:Gz},{method:"POST",pattern:/^\/threads\/search$/,handler:Az},{method:"POST",pattern:/^\/threads\/count$/,handler:Iz},{method:"GET",pattern:/^\/threads\/[^/]+$/,handler:Hz},{method:"PATCH",pattern:/^\/threads\/[^/]+$/,handler:vz},{method:"DELETE",pattern:/^\/threads\/[^/]+$/,handler:Tz},{method:"GET",pattern:/^\/threads\/[^/]+\/state$/,handler:xz},{method:"POST",pattern:/^\/threads\/[^/]+\/state$/,handler:jz},{method:"POST",pattern:/^\/threads\/[^/]+\/state\/checkpoint$/,handler:_z},{method:"GET",pattern:/^\/threads\/[^/]+\/history$/,handler:wz},{method:"POST",pattern:/^\/threads\/[^/]+\/history$/,handler:Cz},{method:"POST",pattern:/^\/threads\/[^/]+\/copy$/,handler:bz},{method:"GET",pattern:/^\/threads\/[^/]+\/stream$/,handler:Sz},{method:"POST",pattern:/^\/threads\/[^/]+\/runs$/,handler:yz},{method:"POST",pattern:/^\/threads\/[^/]+\/runs\/stream$/,handler:gz},{method:"POST",pattern:/^\/threads\/[^/]+\/runs\/wait$/,handler:qz},{method:"POST",pattern:/^\/threads\/[^/]+\/runs\/[^/]+\/cancel$/,handler:uz},{method:"GET",pattern:/^\/threads\/[^/]+\/runs$/,handler:Rz},{method:"GET",pattern:/^\/threads\/[^/]+\/runs\/[^/]+$/,handler:hz},{method:"DELETE",pattern:/^\/threads\/[^/]+\/runs\/[^/]+$/,handler:mz},{method:"GET",pattern:/^\/threads\/[^/]+\/runs\/[^/]+\/join$/,handler:cz},{method:"GET",pattern:/^\/threads\/[^/]+\/runs\/[^/]+\/stream$/,handler:Pz},{method:"POST",pattern:/^\/runs$/,handler:iz},{method:"POST",pattern:/^\/runs\/stream$/,handler:pz},{method:"POST",pattern:/^\/runs\/wait$/,handler:dz},{method:"POST",pattern:/^\/runs\/batch$/,handler:lz},{method:"POST",pattern:/^\/runs\/cancel$/,handler:nz}],oz=(K)=>{let $=new URL(K.url).pathname.toString(),D="";if($.includes("/threads"))D=$.split("/threads")[0];else if($.includes("/assistants"))D=$.split("/assistants")[0];return new Request(K.url.replace(D,""),{method:K.method,headers:K.headers,body:K.body,duplex:K.duplex})};async function d(K,$={}){K=oz(K);try{await _.initGlobal();let X=new URL(K.url).pathname,O=K.method;for(let Y of sz)if(Y.method===O&&Y.pattern.test(X))return await Y.handler(K,$);return new Response("Not Found",{status:404})}catch(D){return console.error("Request error:",D),F(D)}}var tz=new l;tz.all("*",async(K)=>{let $={langgraph_context:K.get("langgraph_context")};return await d(K.req.raw,$)});export{tz as default};
@@ -0,0 +1,2 @@
1
+ import{createRequire as f}from"node:module";var i=Object.create,{getPrototypeOf:s,defineProperty:a,getOwnPropertyNames:v}=Object,m=Object.prototype.hasOwnProperty;function d(e){return this[e]}var g,c,j=(e,r,t)=>{var l=e!=null&&typeof e==="object";if(l){var u=r?g??=new WeakMap:c??=new WeakMap,p=u.get(e);if(p)return p}t=e!=null?i(s(e)):{};let o=r||!e||!e.__esModule?a(t,"default",{value:e,enumerable:!0}):t;for(let n of v(e))if(!m.call(o,n))a(o,n,{get:d.bind(e,n),enumerable:!0});if(l)u.set(e,o);return o},x=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),y=(e)=>e;function O(e,r){this[e]=y.bind(null,r)}var w=(e,r)=>{for(var t in r)a(e,t,{get:r[t],enumerable:!0,configurable:!0,set:O.bind(r,t)})},P=f(import.meta.url);
2
+ export{j as Jg,x as Kg,w as Lg};