@ag-ui/client 1.0.0-canary.1789569879.0 → 1.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.
package/README.md CHANGED
@@ -76,3 +76,22 @@ Bug reports and pull requests are welcome! Please read our [contributing guide](
76
76
  ## License
77
77
 
78
78
  MIT © 2025 AG-UI Protocol Contributors
79
+
80
+ ## Activity snapshots
81
+
82
+ `MESSAGES_SNAPSHOT.metadata["@ag-ui/client"].authoritativeActivityTypes`
83
+ controls which activity types the snapshot replaces. An array owns those types;
84
+ `[]` owns none, and `null` owns all types, even for an empty snapshot. Without
85
+ a declaration, the existing rule applies: a snapshot containing any activity
86
+ replaces all activities, while a transcript-only snapshot preserves them. A missing
87
+ namespace or missing field uses this legacy rule. An invalid namespace or field
88
+ owns no types, including arrays containing non-string entries.
89
+
90
+ Authority controls deletion of omitted activity messages. A matching message ID
91
+ always updates in place, even for a type outside the declared scope. Existing
92
+ message positions are preserved and new IDs are appended in snapshot order.
93
+ This convention does not reconcile changed IDs or reposition restored activities.
94
+
95
+ History projectors must preserve full authority and extend explicit scopes with
96
+ the types they reconstruct. `withAuthoritativeActivityTypes` implements this
97
+ rule; call it on the incoming snapshot before replacing its messages.
package/dist/index.d.mts CHANGED
@@ -731,5 +731,19 @@ declare const enforceEvents: (debugLogger?: DebugLoggerInput) => (source$: Obser
731
731
  */
732
732
  declare function enforceOutgoingInput(input: RunAgentInput): RunAgentInput;
733
733
  //#endregion
734
- export { AbstractAgent, type AgentConfig, type AgentDebugConfig, type AgentStateMutation, type AgentSubscriber, type AgentSubscriberParams, BackwardCompatibility_0_0_39, BackwardCompatibility_0_0_45, BackwardCompatibility_0_0_57, CompatibilityBoundary, DebugLogger, type DebugLoggerInput, FilterToolCallsMiddleware, FunctionMiddleware, HttpAgent, type HttpAgentConfig, type HttpAgentFetchFn, Middleware, type MiddlewareFunction, type ResolvedAgentDebugConfig, type RunAgentParameters, type RunAgentResult, type UnrecognizedEvent, buildResumeArray, compactEvents, convertToLegacyEvents, createDebugLogger, defaultApplyEvents, enforceEvents, enforceOutgoingInput, getRunOutcome, isInterruptExpired, isRecognizedEvent, parseProtoStream, parseSSEStream, randomUUID, resolveAgentDebugConfig, resolveDebugLogger, runHttpRequest, structuredClone_, transformChunks, transformHttpEventStream, verifyEvents };
734
+ //#region src/activity-history.d.ts
735
+ /** Package-owned convention. The protocol-reserved `ag-ui` namespace is untouched. */
736
+ declare const ACTIVITY_HISTORY_METADATA = "@ag-ui/client";
737
+ /**
738
+ * Null owns all types; arrays own their types. Absent declarations use legacy
739
+ * inference, while invalid declarations grant no omission-based deletion.
740
+ */
741
+ declare function authoritativeActivityTypes(event: MessagesSnapshotEvent): string[] | null | undefined;
742
+ /**
743
+ * Add a projector scope, preserving full authority. Call on the incoming snapshot
744
+ * before replacing its messages so inferred authority describes the original set.
745
+ */
746
+ declare function withAuthoritativeActivityTypes(event: MessagesSnapshotEvent, activityTypes: readonly string[]): MessagesSnapshotEvent;
747
+ //#endregion
748
+ export { ACTIVITY_HISTORY_METADATA, AbstractAgent, type AgentConfig, type AgentDebugConfig, type AgentStateMutation, type AgentSubscriber, type AgentSubscriberParams, BackwardCompatibility_0_0_39, BackwardCompatibility_0_0_45, BackwardCompatibility_0_0_57, CompatibilityBoundary, DebugLogger, type DebugLoggerInput, FilterToolCallsMiddleware, FunctionMiddleware, HttpAgent, type HttpAgentConfig, type HttpAgentFetchFn, Middleware, type MiddlewareFunction, type ResolvedAgentDebugConfig, type RunAgentParameters, type RunAgentResult, type UnrecognizedEvent, authoritativeActivityTypes, buildResumeArray, compactEvents, convertToLegacyEvents, createDebugLogger, defaultApplyEvents, enforceEvents, enforceOutgoingInput, getRunOutcome, isInterruptExpired, isRecognizedEvent, parseProtoStream, parseSSEStream, randomUUID, resolveAgentDebugConfig, resolveDebugLogger, runHttpRequest, structuredClone_, transformChunks, transformHttpEventStream, verifyEvents, withAuthoritativeActivityTypes };
735
749
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/agent/types.ts","../src/debug-logger.ts","../src/legacy/types.ts","../src/agent/subscriber.ts","../src/agent/http.ts","../src/middleware/middleware.ts","../src/middleware/filter-tool-calls.ts","../src/middleware/backward-compatibility-0-0-39.ts","../src/middleware/backward-compatibility-0-0-45.ts","../src/middleware/backward-compatibility-0-0-57.ts","../src/middleware/compatibility-boundary.ts","../src/agent/agent.ts","../src/apply/default.ts","../src/verify/verify.ts","../src/run/http-request.ts","../src/transform/http.ts","../src/transform/sse.ts","../src/transform/proto.ts","../src/legacy/convert.ts","../src/utils.ts","../src/compact/compact.ts","../src/chunks/transform.ts","../src/interrupts/index.ts","../src/enforce/enforce.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/agent/types.ts","../src/debug-logger.ts","../src/legacy/types.ts","../src/agent/subscriber.ts","../src/agent/http.ts","../src/middleware/middleware.ts","../src/middleware/filter-tool-calls.ts","../src/middleware/backward-compatibility-0-0-39.ts","../src/middleware/backward-compatibility-0-0-45.ts","../src/middleware/backward-compatibility-0-0-57.ts","../src/middleware/compatibility-boundary.ts","../src/agent/agent.ts","../src/apply/default.ts","../src/verify/verify.ts","../src/run/http-request.ts","../src/transform/http.ts","../src/transform/sse.ts","../src/transform/proto.ts","../src/legacy/convert.ts","../src/utils.ts","../src/compact/compact.ts","../src/chunks/transform.ts","../src/interrupts/index.ts","../src/enforce/enforce.ts","../src/activity-history.ts"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -731,5 +731,19 @@ declare const enforceEvents: (debugLogger?: DebugLoggerInput) => (source$: Obser
731
731
  */
732
732
  declare function enforceOutgoingInput(input: RunAgentInput): RunAgentInput;
733
733
  //#endregion
734
- export { AbstractAgent, AgentConfig, AgentDebugConfig, AgentStateMutation, AgentSubscriber, AgentSubscriberParams, BackwardCompatibility_0_0_39, BackwardCompatibility_0_0_45, BackwardCompatibility_0_0_57, CompatibilityBoundary, DebugLogger, DebugLoggerInput, FilterToolCallsMiddleware, FunctionMiddleware, HttpAgent, HttpAgentConfig, HttpAgentFetchFn, Middleware, type MiddlewareFunction, ResolvedAgentDebugConfig, RunAgentParameters, RunAgentResult, UnrecognizedEvent, buildResumeArray, compactEvents, convertToLegacyEvents, createDebugLogger, defaultApplyEvents, enforceEvents, enforceOutgoingInput, getRunOutcome, isInterruptExpired, isRecognizedEvent, parseProtoStream, parseSSEStream, randomUUID, resolveAgentDebugConfig, resolveDebugLogger, runHttpRequest, structuredClone_, transformChunks, transformHttpEventStream, verifyEvents };
734
+ //#region src/activity-history.d.ts
735
+ /** Package-owned convention. The protocol-reserved `ag-ui` namespace is untouched. */
736
+ declare const ACTIVITY_HISTORY_METADATA = "@ag-ui/client";
737
+ /**
738
+ * Null owns all types; arrays own their types. Absent declarations use legacy
739
+ * inference, while invalid declarations grant no omission-based deletion.
740
+ */
741
+ declare function authoritativeActivityTypes(event: MessagesSnapshotEvent): string[] | null | undefined;
742
+ /**
743
+ * Add a projector scope, preserving full authority. Call on the incoming snapshot
744
+ * before replacing its messages so inferred authority describes the original set.
745
+ */
746
+ declare function withAuthoritativeActivityTypes(event: MessagesSnapshotEvent, activityTypes: readonly string[]): MessagesSnapshotEvent;
747
+ //#endregion
748
+ export { ACTIVITY_HISTORY_METADATA, AbstractAgent, AgentConfig, AgentDebugConfig, AgentStateMutation, AgentSubscriber, AgentSubscriberParams, BackwardCompatibility_0_0_39, BackwardCompatibility_0_0_45, BackwardCompatibility_0_0_57, CompatibilityBoundary, DebugLogger, DebugLoggerInput, FilterToolCallsMiddleware, FunctionMiddleware, HttpAgent, HttpAgentConfig, HttpAgentFetchFn, Middleware, type MiddlewareFunction, ResolvedAgentDebugConfig, RunAgentParameters, RunAgentResult, UnrecognizedEvent, authoritativeActivityTypes, buildResumeArray, compactEvents, convertToLegacyEvents, createDebugLogger, defaultApplyEvents, enforceEvents, enforceOutgoingInput, getRunOutcome, isInterruptExpired, isRecognizedEvent, parseProtoStream, parseSSEStream, randomUUID, resolveAgentDebugConfig, resolveDebugLogger, runHttpRequest, structuredClone_, transformChunks, transformHttpEventStream, verifyEvents, withAuthoritativeActivityTypes };
735
749
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/agent/types.ts","../src/debug-logger.ts","../src/legacy/types.ts","../src/agent/subscriber.ts","../src/agent/http.ts","../src/middleware/middleware.ts","../src/middleware/filter-tool-calls.ts","../src/middleware/backward-compatibility-0-0-39.ts","../src/middleware/backward-compatibility-0-0-45.ts","../src/middleware/backward-compatibility-0-0-57.ts","../src/middleware/compatibility-boundary.ts","../src/agent/agent.ts","../src/apply/default.ts","../src/verify/verify.ts","../src/run/http-request.ts","../src/transform/http.ts","../src/transform/sse.ts","../src/transform/proto.ts","../src/legacy/convert.ts","../src/utils.ts","../src/compact/compact.ts","../src/chunks/transform.ts","../src/interrupts/index.ts","../src/enforce/enforce.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/agent/types.ts","../src/debug-logger.ts","../src/legacy/types.ts","../src/agent/subscriber.ts","../src/agent/http.ts","../src/middleware/middleware.ts","../src/middleware/filter-tool-calls.ts","../src/middleware/backward-compatibility-0-0-39.ts","../src/middleware/backward-compatibility-0-0-45.ts","../src/middleware/backward-compatibility-0-0-57.ts","../src/middleware/compatibility-boundary.ts","../src/agent/agent.ts","../src/apply/default.ts","../src/verify/verify.ts","../src/run/http-request.ts","../src/transform/http.ts","../src/transform/sse.ts","../src/transform/proto.ts","../src/legacy/convert.ts","../src/utils.ts","../src/compact/compact.ts","../src/chunks/transform.ts","../src/interrupts/index.ts","../src/enforce/enforce.ts","../src/activity-history.ts"],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
- var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,a)=>(a=n==null?{}:e(i(n)),o(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));let c=require(`uuid`),l=require(`@ag-ui/core`),u=require(`fast-json-patch`);u=s(u);let d=require(`rxjs`),f=require(`rxjs/operators`),p=require(`untruncate-json`);p=s(p);let m=require(`@ag-ui/proto`);m=s(m);let h=require(`compare-versions`),g=require(`@ag-ui/core/schemas`),_=require(`zod/v4`);const v=e=>{if(typeof structuredClone==`function`)return structuredClone(e);try{return JSON.parse(JSON.stringify(e))}catch{return Array.isArray(e)?[...e]:{...e}}};function y(){return(0,c.v4)()}function ee(e){return e instanceof TypeError?/read[- ]?only|not extensible|cannot add property|cannot delete property|can't be deleted|unable to delete property|object is frozen|is not writable/i.test(e.message):!1}function b(e){if(Object.freeze(e),typeof e==`object`&&e)for(let t of Object.values(e))typeof t==`object`&&t&&!Object.isFrozen(t)&&b(t);return e}const x=512*1024;function te(e,t,n){let r=0,i=[e,t],a=new WeakSet;for(;i.length>0;){let e=i.pop();if(typeof e==`string`){if(r+=e.length,r>n)return!0}else if(typeof e==`object`&&e){if(a.has(e))continue;if(a.add(e),Array.isArray(e))for(let t=0;t<e.length;t++)i.push(e[t]);else{let t=Object.keys(e);for(let a=0;a<t.length;a++){let o=t[a];if(r+=o.length,r>n)return!0;i.push(e[o])}}}}return!1}async function S(e,t,n,r){let i=typeof process<`u`&&process.env!==void 0,a=i&&(process.env.NODE_ENV===`test`||!!process.env.VITEST_WORKER_ID),o=i&&(process.env.NODE_ENV===`development`||process.env.NODE_ENV===`test`||!!process.env.VITEST_WORKER_ID),s=o&&!te(t,n,x),c=s?v(t):t,l=s?v(n):n,u=!1,d=!1,f;for(let t of e)try{s&&(b(c),b(l));let e=await r(t,c,l);if(e===void 0)continue;let n=!1;if(e.messages!==void 0&&e.messages!==c&&(c=v(e.messages),u=!0,n=!0),e.state!==void 0&&e.state!==l&&(l=v(e.state),d=!0,n=!0),s&&n&&te(c,l,x)&&(s=!1),f=e.stopPropagation,f===!0)break}catch(e){if(a&&e instanceof TypeError)throw e;s&&o&&ee(e)?console.error(`AG-UI: Subscriber attempted to mutate frozen inputs in-place. Return mutations via AgentStateMutation instead of mutating directly.`,e):console.error(`Subscriber error:`,e);continue}return{...u?{messages:Object.isFrozen(c)?v(c):c}:{},...d?{state:Object.isFrozen(l)?v(l):l}:{},...f===void 0?{}:{stopPropagation:f}}}function C(e){if(!e)return{enabled:!1,events:!1,lifecycle:!1,verbose:!1};if(e===!0)return{enabled:!0,events:!0,lifecycle:!0,verbose:!0};let t=e.events??!0,n=e.lifecycle??!0,r=e.verbose??!1;return{enabled:t||n,events:t,lifecycle:n,verbose:r}}function w(e){if(e instanceof T)return e;if(e===!0)return new T(C(!0))}var T=class{constructor(e){this.config=e}event(e,t,n,r){this.config.events&&(this.config.verbose?console.debug(`[${e}] ${t}`,typeof n==`string`?n:JSON.stringify(n)):console.debug(`[${e}] ${t}`,r??n))}lifecycle(e,t,n){this.config.lifecycle&&(n?console.debug(`[${e}] ${t}`,n):console.debug(`[${e}] ${t}`))}get eventsEnabled(){return this.config.events}get lifecycleEnabled(){return this.config.lifecycle}get enabled(){return this.config.enabled}};function E(e){return e.enabled?new T(e):void 0}function ne(e,t,n){if(t){let r=e.find(e=>e.id===t);if(r?.role===`assistant`)return r;r&&console.warn(`TOOL_CALL_START: parentMessageId '${t}' matches a '${r.role}' message, not assistant — falling back to toolCallId`);let i={id:r?n:t,role:`assistant`,toolCalls:[]};return e.push(i),i}let r={id:n,role:`assistant`,toolCalls:[]};return e.push(r),r}function D(e,t){return!e||t.metadata===void 0?!1:(e.metadata=(0,l.mergeMetadata)(e.metadata,v(t.metadata)),!0)}const O=(e,t,n,r,i)=>{let a=w(i),o=v(n.messages),s=v(e.state),c={},m=[],h=new Set,g=e=>{let t=e.outcome?.type===`success`?e.outcome.pendingToolCallIds:void 0;return t!==void 0&&t.length>0?[...t]:m.filter(e=>!h.has(e))},_=e=>{e.messages!==void 0&&(o=e.messages,c.messages=e.messages),e.state!==void 0&&(s=e.state,c.state=e.state)},y=()=>{let e=v(c);return c={},e.messages!==void 0||e.state!==void 0?(0,d.of)(e):d.EMPTY};return t.pipe((0,f.concatMap)(async t=>{let i=await S(r,o,s,(r,i,a)=>r.onEvent?.({event:t,agent:n,input:e,messages:i,state:a}));if(_(i),i.stopPropagation===!0?a?.event(`APPLY`,`Event dropped:`,t,{type:t.type,reason:`stopPropagation by subscriber`}):a?.event(`APPLY`,`Event applied:`,t,{type:t.type,subscribers:r.length}),i.stopPropagation===!0)return y();switch(t.type){case l.EventType.TEXT_MESSAGE_START:{let i=await S(r,o,s,(r,i,a)=>r.onTextMessageStartEvent?.({event:t,messages:i,state:a,agent:n,input:e}));if(_(i),i.stopPropagation!==!0){let{messageId:e,role:n=`assistant`,name:r,subagentRunId:i}=t,a=o.find(t=>t.id===e);if(a?.role===`activity`)return console.warn(`TEXT_MESSAGE_START: Message '${e}' is an activity message — message ids must be unique across activity and text messages`),y();let s=a;if(!s){let t={id:e,role:n,content:``,...r!==void 0&&{name:r},...i!=null&&{subagentRunId:i}};o.push(t),s=t}let c=D(s,t);(!a||c)&&_({messages:o})}return y()}case l.EventType.TEXT_MESSAGE_CONTENT:{let{messageId:i,delta:a}=t,c=o.find(e=>e.id===i);if(!c)return console.warn(`TEXT_MESSAGE_CONTENT: No message found with ID '${i}'`),y();if(c.role===`activity`)return console.warn(`TEXT_MESSAGE_CONTENT: Message '${i}' is an activity message — message ids must be unique across activity and text messages`),y();let l=await S(r,o,s,(r,i,a)=>r.onTextMessageContentEvent?.({event:t,messages:i,state:a,agent:n,input:e,textMessageBuffer:typeof c.content==`string`?c.content:``}));return _(l),l.stopPropagation!==!0&&(c.content=`${typeof c.content==`string`?c.content:``}${a}`,D(c,t),_({messages:o})),y()}case l.EventType.TEXT_MESSAGE_END:{let{messageId:i}=t,a=o.find(e=>e.id===i);if(!a)return console.warn(`TEXT_MESSAGE_END: No message found with ID '${i}'`),y();if(a.role===`activity`)return console.warn(`TEXT_MESSAGE_END: Message '${i}' is an activity message — message ids must be unique across activity and text messages`),y();let c=await S(r,o,s,(r,i,o)=>r.onTextMessageEndEvent?.({event:t,messages:i,state:o,agent:n,input:e,textMessageBuffer:typeof a.content==`string`?a.content:``}));return _(c),c.stopPropagation!==!0&&D(a,t)&&_({messages:o}),await Promise.all(r.map(t=>{t.onNewMessage?.({message:a,messages:o,state:s,agent:n,input:e})})),y()}case l.EventType.TOOL_CALL_START:{let i=await S(r,o,s,(r,i,a)=>r.onToolCallStartEvent?.({event:t,messages:i,state:a,agent:n,input:e}));if(_(i),i.stopPropagation!==!0){let{toolCallId:e,toolCallName:n,parentMessageId:r,subagentRunId:i}=t;m.includes(e)||m.push(e);let a=o.find(t=>t.toolCalls?.some(t=>t.id===e))?.toolCalls?.find(t=>t.id===e);if(a){let r=a.function.name!==n;return r&&(console.warn(`TOOL_CALL_START: tool call '${e}' already exists with name '${a.function.name}' — updating it to '${n}'`),a.function.name=n),(D(a,t)||r)&&_({messages:o}),y()}let s=new Set(o.map(e=>e.id)),c=ne(o,r,e);!s.has(c.id)&&i!=null&&c.subagentRunId===void 0&&(c.subagentRunId=i),c.toolCalls??=[];let l={id:e,type:`function`,function:{name:n,arguments:``}};c.toolCalls.push(l),D(l,t),_({messages:o})}return y()}case l.EventType.TOOL_CALL_ARGS:{let{toolCallId:i,delta:a}=t,c=o.find(e=>e.toolCalls?.some(e=>e.id===i));if(!c)return console.warn(`TOOL_CALL_ARGS: No message found containing tool call with ID '${i}'`),y();let l=c.toolCalls?.find(e=>e.id===i);if(!l)return console.warn(`TOOL_CALL_ARGS: No tool call found with ID '${i}'`),y();let u=await S(r,o,s,(r,i,a)=>{let o=l.function.arguments,s=l.function.name,c={};try{c=(0,p.default)(o)}catch{}return r.onToolCallArgsEvent?.({event:t,messages:i,state:a,agent:n,input:e,toolCallBuffer:o,toolCallName:s,partialToolCallArgs:c})});return _(u),u.stopPropagation!==!0&&(l.function.arguments+=a,D(l,t),_({messages:o})),y()}case l.EventType.TOOL_CALL_END:{let{toolCallId:i}=t,a=o.find(e=>e.toolCalls?.some(e=>e.id===i));if(!a)return console.warn(`TOOL_CALL_END: No message found containing tool call with ID '${i}'`),y();let c=a.toolCalls?.find(e=>e.id===i);if(!c)return console.warn(`TOOL_CALL_END: No tool call found with ID '${i}'`),y();let l=await S(r,o,s,(r,i,a)=>{let o=c.function.arguments,s=c.function.name,l={};try{l=JSON.parse(o)}catch{}return r.onToolCallEndEvent?.({event:t,messages:i,state:a,agent:n,input:e,toolCallName:s,toolCallArgs:l})});return _(l),l.stopPropagation!==!0&&D(c,t)&&_({messages:o}),await Promise.all(r.map(t=>{t.onNewToolCall?.({toolCall:c,messages:o,state:s,agent:n,input:e})})),y()}case l.EventType.TOOL_CALL_RESULT:{let i=await S(r,o,s,(r,i,a)=>r.onToolCallResultEvent?.({event:t,messages:i,state:a,agent:n,input:e}));if(_(i),i.stopPropagation!==!0){let{messageId:i,toolCallId:a,content:c,role:l,subagentRunId:u}=t;h.add(a);let d={id:i,toolCallId:a,role:l||`tool`,content:c,...u!=null&&{subagentRunId:u}};D(d,t);let f=o.findIndex(e=>e.role===`assistant`&&e.toolCalls?.some(e=>e.id===a));if(f===-1)o.push(d);else{let e=f+1;for(;e<o.length&&o[e].role===`tool`;)e++;o.splice(e,0,d)}await Promise.all(r.map(t=>{t.onNewMessage?.({message:d,messages:o,state:s,agent:n,input:e})})),_({messages:o})}return y()}case l.EventType.STATE_SNAPSHOT:{let i=await S(r,o,s,(r,i,a)=>r.onStateSnapshotEvent?.({event:t,messages:i,state:a,agent:n,input:e}));if(_(i),i.stopPropagation!==!0){let{snapshot:e}=t;s=e,_({state:s})}return y()}case l.EventType.STATE_DELTA:{let i=await S(r,o,s,(r,i,a)=>r.onStateDeltaEvent?.({event:t,messages:i,state:a,agent:n,input:e}));if(_(i),i.stopPropagation!==!0){let{delta:e}=t;try{s=u.default.applyPatch(s,e,!0,!1).newDocument,_({state:s})}catch(t){let n=t instanceof Error?t.message:String(t);console.warn(`Failed to apply state patch:\nCurrent state: ${JSON.stringify(s,null,2)}\nPatch operations: ${JSON.stringify(e,null,2)}\nError: ${n}`)}}return y()}case l.EventType.MESSAGES_SNAPSHOT:{let i=await S(r,o,s,(r,i,a)=>r.onMessagesSnapshotEvent?.({event:t,messages:i,state:a,agent:n,input:e}));if(_(i),i.stopPropagation!==!0){let{messages:e}=t,n=e.map(e=>{if(e.subagentRunId!==null)return e;let t={...e};return delete t.subagentRunId,t}),r=new Map(n.map(e=>[e.id,e])),i=n.some(e=>e.role===`activity`),a=n.some(e=>e.role===`reasoning`),s=e=>e.role===`activity`&&!i||e.role===`reasoning`&&!a;o=o.filter(e=>s(e)||r.has(e.id)).map(e=>s(e)?e:r.get(e.id));let c=new Set(o.map(e=>e.id));for(let e of n)c.has(e.id)||o.push(e);_({messages:o})}return y()}case l.EventType.ACTIVITY_SNAPSHOT:{let i=t,a=o.findIndex(e=>e.id===i.messageId),c=a>=0?o[a]:void 0,l=c?.role===`activity`?c:void 0,u=i.replace??!0,d=await S(r,o,s,(t,r,a)=>t.onActivitySnapshotEvent?.({event:i,messages:r,state:a,agent:n,input:e,activityMessage:l,existingMessage:c}));if(_(d),d.stopPropagation!==!0){let t={id:i.messageId,role:`activity`,activityType:i.activityType,content:v(i.content),...i.subagentRunId!=null&&{subagentRunId:i.subagentRunId}},c,d;a===-1?(o.push(t),c=t,d=t):l?(u&&(o[a]={...l,activityType:i.activityType,content:v(i.content),subagentRunId:i.subagentRunId},i.subagentRunId??delete o[a].subagentRunId),d=o[a]):u&&(o[a]=t,c=t,d=t),D(d,i),_({messages:o}),c&&await Promise.all(r.map(t=>t.onNewMessage?.({message:c,messages:o,state:s,agent:n,input:e})))}return y()}case l.EventType.ACTIVITY_DELTA:{let i=t,a=o.findIndex(e=>e.id===i.messageId);if(a===-1)return y();let c=o[a];if(c.role!==`activity`)return console.warn(`ACTIVITY_DELTA: Message '${i.messageId}' is not an activity message`),y();let l=c,d=await S(r,o,s,(t,r,a)=>t.onActivityDeltaEvent?.({event:i,messages:r,state:a,agent:n,input:e,activityMessage:l}));if(_(d),d.stopPropagation!==!0)try{D(l,i)&&_({messages:o});let e=v(l.content??{}),t=u.default.applyPatch(e,i.patch??[],!0,!1).newDocument;o[a]={...l,content:v(t),activityType:i.activityType},_({messages:o})}catch(e){let t=e instanceof Error?e.message:String(e);console.warn(`Failed to apply activity patch for '${i.messageId}': ${t}`)}return y()}case l.EventType.RAW:return _(await S(r,o,s,(r,i,a)=>r.onRawEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),y();case l.EventType.CUSTOM:return _(await S(r,o,s,(r,i,a)=>r.onCustomEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),y();case l.EventType.RUN_STARTED:{let i=await S(r,o,s,(r,i,a)=>r.onRunStartedEvent?.({event:t,messages:i,state:a,agent:n,input:e}));if(_(i),m=[],h=new Set,i.stopPropagation!==!0){let e=t;if(e.input?.messages){for(let t of e.input.messages){let e=t;if(t.subagentRunId===null){let n={...t};delete n.subagentRunId,e=n}o.find(t=>t.id===e.id)||o.push(e)}_({messages:o})}}return y()}case l.EventType.RUN_FINISHED:{let i=t,a=i.outcome?.type===`interrupt`?{event:i,outcome:`interrupt`,interrupts:i.outcome.interrupts}:i.outcome?.type===`cancelled`?{event:i,outcome:`cancelled`}:{event:i,outcome:`success`,result:i.result,pendingToolCallIds:g(i)},c=await S(r,o,s,(t,r,i)=>t.onRunFinishedEvent?.({...a,messages:r,state:i,agent:n,input:e}));return _(c),c.stopPropagation!==!0&&(n.pendingInterrupts=a.outcome===`interrupt`?a.interrupts.map(e=>{if(e.subagentRunId!==null)return e;let t={...e};return delete t.subagentRunId,t}):[]),y()}case l.EventType.RUN_ERROR:return _(await S(r,o,s,(r,i,a)=>r.onRunErrorEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),y();case l.EventType.STEP_STARTED:return _(await S(r,o,s,(r,i,a)=>r.onStepStartedEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),y();case l.EventType.STEP_FINISHED:return _(await S(r,o,s,(r,i,a)=>r.onStepFinishedEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),y();case l.EventType.TEXT_MESSAGE_CHUNK:throw Error(`TEXT_MESSAGE_CHUNK must be transformed before being applied`);case l.EventType.TOOL_CALL_CHUNK:throw Error(`TOOL_CALL_CHUNK must be transformed before being applied`);case l.EventType.REASONING_START:return _(await S(r,o,s,(r,i,a)=>r.onReasoningStartEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),y();case l.EventType.REASONING_MESSAGE_START:{let i=await S(r,o,s,(r,i,a)=>r.onReasoningMessageStartEvent?.({event:t,messages:i,state:a,agent:n,input:e}));if(_(i),i.stopPropagation!==!0){let{messageId:e,subagentRunId:n}=t,r=o.find(t=>t.id===e);if(r?.role===`activity`)return console.warn(`REASONING_MESSAGE_START: Message '${e}' is an activity message — message ids must be unique across activity and reasoning messages`),y();let i=r;if(!i){let t={id:e,role:`reasoning`,content:``,...n!=null&&{subagentRunId:n}};o.push(t),i=t}let a=D(i,t);(!r||a)&&_({messages:o})}return y()}case l.EventType.REASONING_MESSAGE_CONTENT:{let{messageId:i,delta:a}=t,c=o.find(e=>e.id===i);if(!c)return console.warn(`REASONING_MESSAGE_CONTENT: No message found with ID '${i}'`),y();if(c.role===`activity`)return console.warn(`REASONING_MESSAGE_CONTENT: Message '${i}' is an activity message — message ids must be unique across activity and reasoning messages`),y();let l=await S(r,o,s,(r,i,a)=>r.onReasoningMessageContentEvent?.({event:t,messages:i,state:a,agent:n,input:e,reasoningMessageBuffer:typeof c.content==`string`?c.content:``}));return _(l),l.stopPropagation!==!0&&(c.content=`${typeof c.content==`string`?c.content:``}${a}`,D(c,t),_({messages:o})),y()}case l.EventType.REASONING_MESSAGE_END:{let{messageId:i}=t,a=o.find(e=>e.id===i);if(!a)return console.warn(`REASONING_MESSAGE_END: No message found with ID '${i}'`),y();if(a.role===`activity`)return console.warn(`REASONING_MESSAGE_END: Message '${i}' is an activity message — message ids must be unique across activity and reasoning messages`),y();let c=await S(r,o,s,(r,i,o)=>r.onReasoningMessageEndEvent?.({event:t,messages:i,state:o,agent:n,input:e,reasoningMessageBuffer:typeof a.content==`string`?a.content:``}));return _(c),c.stopPropagation!==!0&&D(a,t)&&_({messages:o}),await Promise.all(r.map(t=>{t.onNewMessage?.({message:a,messages:o,state:s,agent:n,input:e})})),y()}case l.EventType.REASONING_MESSAGE_CHUNK:throw Error(`REASONING_MESSAGE_CHUNK must be transformed before being applied`);case l.EventType.REASONING_END:return _(await S(r,o,s,(r,i,a)=>r.onReasoningEndEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),y();case l.EventType.REASONING_ENCRYPTED_VALUE:{let{subtype:i,entityId:a,encryptedValue:l}=t,u=await S(r,o,s,(r,i,a)=>r.onReasoningEncryptedValueEvent?.({event:t,messages:i,state:a,agent:n,input:e}));if(_(u),u.stopPropagation!==!0){let e=!1;if(i===`tool-call`){for(let t of o)if(t.role===`assistant`&&t.toolCalls){let n=t.toolCalls.find(e=>e.id===a);if(n){n.encryptedValue=l,e=!0;break}}}else{let t=o.find(e=>e.id===a);t?.role!==`activity`&&t&&(t.encryptedValue=l,e=!0)}e&&(c.messages=o)}return y()}case l.EventType.SUBAGENT_STARTED:return _(await S(r,o,s,(r,i,a)=>r.onSubagentStartedEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),y();case l.EventType.SUBAGENT_FINISHED:return _(await S(r,o,s,(r,i,a)=>r.onSubagentFinishedEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),y();case l.EventType.SUBAGENT_ERROR:return _(await S(r,o,s,(r,i,a)=>r.onSubagentErrorEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),y()}return t.type,y()}),(0,f.mergeAll)(),r.length>0?(0,f.defaultIfEmpty)({}):e=>e)},k=e=>t=>{let n=w(e),r=new Set,i=new Set,a=new Set,o=new Set,s={message:new Map,toolCall:new Map,activity:new Map,reasoning:new Map},c=!1,u=!1,p=!1,m=new Map,h=e=>{let t=m.get(e);return t||(t=new Map,m.set(e,t)),t},g=()=>{for(let e of m.values())if(e.size>0)return!0;return!1},_=new Map,v=new Set,y=!1,ee=()=>{r.clear(),i.clear(),a.clear(),o.clear(),s.message.clear(),s.toolCall.clear(),s.activity.clear(),s.reasoning.clear(),m.clear(),_.clear(),v.clear(),c=!1,u=!1,y=!0},b=(e,t)=>{let n=e??[];if(Array.isArray(n))for(let e of n){if(!e||typeof e.id!=`string`)continue;if(e.subagentRunId===null)return new l.AGUIError(`Cannot send a message (id '${e.id}') with 'subagentRunId: null'. The field is optional — omit it entirely.`);let n=e.role===`reasoning`?s.reasoning:e.role===`activity`?s.activity:s.message;(t||!n.has(e.id))&&n.set(e.id,{subagentRunId:e.subagentRunId});for(let n of e.toolCalls??[])n&&typeof n.id==`string`&&(t||!s.toolCall.has(n.id))&&s.toolCall.set(n.id,{subagentRunId:e.subagentRunId??void 0})}},x=(e,t,n,r,i)=>{if(t!==void 0&&n&&n.subagentRunId!==t)return new l.AGUIError(`Cannot send '${e}': subagentRunId '${t}' does not match the ${r} '${i}' opener's subagent '${n.subagentRunId??`(the parent agent)`}'.`)};return t.pipe((0,f.mergeMap)(e=>{let t=e.type;if(n?.event(`VERIFY`,`Event:`,e,{type:e.type}),u&&t!==l.EventType.RUN_STARTED)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send event type '${t}': The run has already errored with 'RUN_ERROR'. No further events can be sent.`));if(c&&t!==l.EventType.RUN_ERROR&&t!==l.EventType.RUN_STARTED)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send event type '${t}': The run has already finished with 'RUN_FINISHED'. Start a new run with 'RUN_STARTED'.`));if(!p){if(p=!0,t!==l.EventType.RUN_STARTED&&t!==l.EventType.RUN_ERROR)return(0,d.throwError)(()=>new l.AGUIError(`First event must be 'RUN_STARTED'`))}else if(t===l.EventType.RUN_STARTED){if(y&&!c&&!u)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'RUN_STARTED' while a run is still active. The previous run must be finished with 'RUN_FINISHED' before starting a new run.`));(c||u)&&ee()}if(e.subagentRunId===null)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send '${t}' with 'subagentRunId: null'. The field is optional — omit it entirely.`));if(t===l.EventType.SUBAGENT_STARTED||t===l.EventType.SUBAGENT_FINISHED||t===l.EventType.SUBAGENT_ERROR){let n=t===l.EventType.SUBAGENT_STARTED?[`description`,`parentSubagentRunId`,`parentToolCallId`,`parentMessageId`]:t===l.EventType.SUBAGENT_FINISHED?[`outcome`]:[`code`];for(let r of n)if(e[r]===null)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send '${t}' with '${r}: null'. The field is optional — omit it entirely.`));let r=e.outcome;if(r!=null&&r.type!==`success`&&r.type!==`suspended`)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send '${t}' with outcome type '${String(r.type)}'. The outcome is either { type: "success" } or { type: "suspended" }.`));if(r&&r.interruptIds===null)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send '${t}' with 'outcome.interruptIds: null'. The field is optional — omit it entirely.`));if(r&&Array.isArray(r.interruptIds)&&r.interruptIds.some(e=>typeof e!=`string`))return(0,d.throwError)(()=>new l.AGUIError(`Cannot send '${t}' with a non-string entry in 'outcome.interruptIds'. Interrupt ids are strings.`))}if(t===l.EventType.RUN_FINISHED){let t=e.outcome;if(t?.type===`interrupt`&&Array.isArray(t.interrupts)){for(let e of t.interrupts)if(e&&e.subagentRunId===null)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'RUN_FINISHED' with an interrupt (id '${e.id}') carrying 'subagentRunId: null'. The field is optional — omit it entirely.`))}}switch(t){case l.EventType.TEXT_MESSAGE_START:{let n=e.messageId;if(r.has(n))return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'TEXT_MESSAGE_START' event: A text message with ID '${n}' is already in progress. Complete it with 'TEXT_MESSAGE_END' first.`));let i=s.message.get(n);if(i){let r=x(t,e.subagentRunId,i,`message`,n);if(r)return(0,d.throwError)(()=>r)}return r.add(n),i||s.message.set(n,{subagentRunId:e.subagentRunId}),(0,d.of)(e)}case l.EventType.TEXT_MESSAGE_CONTENT:{let n=e.messageId;if(!r.has(n))return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'TEXT_MESSAGE_CONTENT' event: No active text message found with ID '${n}'. Start a text message with 'TEXT_MESSAGE_START' first.`));let i=x(t,e.subagentRunId,s.message.get(n),`message`,n);return i?(0,d.throwError)(()=>i):(0,d.of)(e)}case l.EventType.TEXT_MESSAGE_END:{let n=e.messageId;if(!r.has(n))return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'TEXT_MESSAGE_END' event: No active text message found with ID '${n}'. A 'TEXT_MESSAGE_START' event must be sent first.`));let i=x(t,e.subagentRunId,s.message.get(n),`message`,n);return i?(0,d.throwError)(()=>i):(r.delete(n),(0,d.of)(e))}case l.EventType.TOOL_CALL_START:{let n=e.toolCallId;if(i.has(n))return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'TOOL_CALL_START' event: A tool call with ID '${n}' is already in progress. Complete it with 'TOOL_CALL_END' first.`));let r=e.parentMessageId,a=e.subagentRunId,o;if(r!==void 0){let e=s.message.get(r);if(e){if(a!==void 0&&a!==e.subagentRunId)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'TOOL_CALL_START': subagentRunId '${a}' does not match its parent message '${r}' owner '${e.subagentRunId??`(the parent agent)`}'. A tool call belongs to the message that carries it.`));o=e}}let c=s.toolCall.get(n);if(c){let e=x(t,a,c,`tool call`,n);if(e)return(0,d.throwError)(()=>e);if(a===void 0&&o&&o.subagentRunId!==c.subagentRunId)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'TOOL_CALL_START': tool call '${n}' is owned by '${c.subagentRunId??`(the parent agent)`}' but its parent message '${r}' is owned by '${o.subagentRunId??`(the parent agent)`}'. A tool call belongs to the message that carries it.`))}return i.add(n),c||s.toolCall.set(n,a===void 0?o??{subagentRunId:void 0}:{subagentRunId:a}),(0,d.of)(e)}case l.EventType.TOOL_CALL_ARGS:{let n=e.toolCallId;if(!i.has(n))return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'TOOL_CALL_ARGS' event: No active tool call found with ID '${n}'. Start a tool call with 'TOOL_CALL_START' first.`));let r=x(t,e.subagentRunId,s.toolCall.get(n),`tool call`,n);return r?(0,d.throwError)(()=>r):(0,d.of)(e)}case l.EventType.TOOL_CALL_END:{let n=e.toolCallId;if(!i.has(n))return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'TOOL_CALL_END' event: No active tool call found with ID '${n}'. A 'TOOL_CALL_START' event must be sent first.`));let r=x(t,e.subagentRunId,s.toolCall.get(n),`tool call`,n);return r?(0,d.throwError)(()=>r):(i.delete(n),(0,d.of)(e))}case l.EventType.STEP_STARTED:{let t=e.stepName,n=e.subagentRunId;return h(n).has(t)?(0,d.throwError)(()=>new l.AGUIError(`Step "${t}" is already active for 'STEP_STARTED'${n===void 0?``:` in subagent '${n}'`}`)):(h(n).set(t,!0),(0,d.of)(e))}case l.EventType.STEP_FINISHED:{let t=e.stepName,n=e.subagentRunId;if(!h(n).has(t)){let e,r=!1;for(let[i,a]of m)if(i!==n&&a.has(t)){e=i,r=!0;break}return r?(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'STEP_FINISHED' for step "${t}" attributed to ${n===void 0?`the parent agent`:`subagent '${n}'`}: that step is open under ${e===void 0?`the parent agent`:`subagent '${e}'`}. A step must be finished by whoever started it.`)):(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'STEP_FINISHED' for step "${t}" that was not started`))}return h(n).delete(t),(0,d.of)(e)}case l.EventType.ACTIVITY_SNAPSHOT:{let t=e.messageId;return(!s.activity.has(t)||e.replace!==!1)&&s.activity.set(t,{subagentRunId:e.subagentRunId}),(0,d.of)(e)}case l.EventType.TOOL_CALL_RESULT:{let t=e.messageId;return typeof t==`string`&&s.message.set(t,{subagentRunId:e.subagentRunId}),(0,d.of)(e)}case l.EventType.REASONING_START:case l.EventType.REASONING_MESSAGE_START:{let n=e.messageId,r=t===l.EventType.REASONING_START,i=r?a:o;if(i.has(n))return(0,d.throwError)(()=>new l.AGUIError(r?`Cannot send 'REASONING_START' event: A reasoning span with ID '${n}' is already in progress. Complete it with 'REASONING_END' first.`:`Cannot send 'REASONING_MESSAGE_START' event: A reasoning message with ID '${n}' is already in progress. Complete it with 'REASONING_MESSAGE_END' first.`));let c=s.reasoning.get(n);if(c){let r=x(t,e.subagentRunId,c,`reasoning message`,n);if(r)return(0,d.throwError)(()=>r)}return i.add(n),c||s.reasoning.set(n,{subagentRunId:e.subagentRunId}),(0,d.of)(e)}case l.EventType.REASONING_MESSAGE_CONTENT:case l.EventType.REASONING_MESSAGE_END:case l.EventType.REASONING_END:{let n=e.messageId,r=t===l.EventType.REASONING_END,i=r?a:o;if(!i.has(n))return(0,d.throwError)(()=>new l.AGUIError(r?`Cannot send 'REASONING_END' event: No active reasoning span found with ID '${n}'. A 'REASONING_START' event must be sent first.`:`Cannot send '${t}' event: No active reasoning message found with ID '${n}'. Start a reasoning message with 'REASONING_MESSAGE_START' first.`));let c=x(t,e.subagentRunId,s.reasoning.get(n),`reasoning message`,n);return c?(0,d.throwError)(()=>c):((t===l.EventType.REASONING_END||t===l.EventType.REASONING_MESSAGE_END)&&i.delete(n),(0,d.of)(e))}case l.EventType.REASONING_ENCRYPTED_VALUE:{let n=e.entityId,r=e.subtype,i=r===`tool-call`?s.toolCall.get(n):r===`message`?s.message.get(n)??s.reasoning.get(n):s.reasoning.get(n),a=r===`tool-call`?`tool call`:r===`message`?`message`:`reasoning message`,o=x(t,e.subagentRunId,i,a,n);return o?(0,d.throwError)(()=>o):(0,d.of)(e)}case l.EventType.ACTIVITY_DELTA:{let n=e.messageId,r=x(t,e.subagentRunId,s.activity.get(n),`activity`,n);return r?(0,d.throwError)(()=>r):(0,d.of)(e)}case l.EventType.SUBAGENT_STARTED:{if(typeof e.subagentRunId!=`string`)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'SUBAGENT_STARTED' without a 'subagentRunId'.`));if(typeof e.name!=`string`)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'SUBAGENT_STARTED' without a 'name'.`));let t=e.subagentRunId,n=e.parentSubagentRunId;return _.has(t)?(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'SUBAGENT_STARTED': subagent '${t}' is already active. Finish it with 'SUBAGENT_FINISHED' first.`)):v.has(t)?(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'SUBAGENT_STARTED': subagent '${t}' has already finished in this run. Subagent IDs are per-invocation and cannot be reused.`)):n!==void 0&&!_.has(n)&&!v.has(n)?(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'SUBAGENT_STARTED': parentSubagentRunId '${n}' has not been started in this run.`)):(_.set(t,!0),(0,d.of)(e))}case l.EventType.SUBAGENT_FINISHED:case l.EventType.SUBAGENT_ERROR:{if(typeof e.subagentRunId!=`string`)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send '${t}' without a 'subagentRunId'.`));if(t===l.EventType.SUBAGENT_ERROR&&typeof e.message!=`string`)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'SUBAGENT_ERROR' without a 'message'.`));let n=e.subagentRunId;return _.has(n)?(_.delete(n),v.add(n),(0,d.of)(e)):(0,d.throwError)(()=>new l.AGUIError(`Cannot send '${t}': no active subagent found with ID '${n}'. A 'SUBAGENT_STARTED' event must be sent first.`))}case l.EventType.MESSAGES_SNAPSHOT:{let t=b(e.messages,!0);if(t)return(0,d.throwError)(()=>t)}return(0,d.of)(e);case l.EventType.RUN_STARTED:y=!0;{let t=b((e.input??{}).messages,!1);if(t)return(0,d.throwError)(()=>t)}return(0,d.of)(e);case l.EventType.RUN_FINISHED:if(g()){let e=[];for(let[t,n]of m)for(let r of n.keys())e.push(t===void 0?r:`${r} (subagent '${t}')`);let t=e.join(`, `);return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'RUN_FINISHED' while steps are still active: ${t}`))}if(r.size>0){let e=Array.from(r.keys()).join(`, `);return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'RUN_FINISHED' while text messages are still active: ${e}`))}if(o.size>0){let e=Array.from(o.keys()).join(`, `);return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'RUN_FINISHED' while reasoning messages are still active: ${e}`))}if(a.size>0){let e=Array.from(a.keys()).join(`, `);return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'RUN_FINISHED' while reasoning spans are still active: ${e}`))}if(i.size>0){let e=Array.from(i.keys()).join(`, `);return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'RUN_FINISHED' while tool calls are still active: ${e}`))}if(_.size>0){let e=Array.from(_.keys()).join(`, `);return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'RUN_FINISHED' while subagents are still active: ${e}`))}return c=!0,(0,d.of)(e);case l.EventType.RUN_ERROR:return u=!0,(0,d.of)(e);case l.EventType.CUSTOM:return(0,d.of)(e);default:return(0,d.of)(e)}}))};let A=function(e){return e.HEADERS=`headers`,e.DATA=`data`,e}({});const re=e=>(0,d.defer)(()=>(0,d.from)(e())).pipe((0,f.switchMap)(e=>{if(!e.ok){let t=e.headers.get(`content-type`)||``;return(0,d.from)(e.text()).pipe((0,f.mergeMap)(n=>{let r=n;if(t.includes(`application/json`))try{r=JSON.parse(n)}catch{}let i=Error(`HTTP ${e.status}: ${typeof r==`string`?r:JSON.stringify(r)}`);return i.status=e.status,i.payload=r,(0,d.throwError)(()=>i)}))}let t={type:A.HEADERS,status:e.status,headers:e.headers},n=e.body?.getReader();return n?new d.Observable(e=>(e.next(t),(async()=>{try{for(;;){let{done:t,value:r}=await n.read();if(t)break;let i={type:A.DATA,data:r};e.next(i)}e.complete()}catch(t){e.error(t)}})(),()=>{n.cancel().catch(e=>{if(e?.name!==`AbortError`)throw e})})):(0,d.throwError)(()=>Error(`Failed to getReader() from response`))})),ie=10*1024*1024,ae=(e,t)=>{let n=w(t),r=new d.Subject,i=new TextDecoder(`utf-8`,{fatal:!1}),a=``;e.subscribe({next:e=>{if(e.type!==A.HEADERS&&e.type===A.DATA&&e.data){let t=i.decode(e.data,{stream:!0});a+=t;let n=a.split(/\n\n/);a=n.pop()||``;for(let e of n)o(e);if(a.length>ie){r.error(Error(`SSE buffer size exceeded maximum limit of ${ie/(1024*1024)} MB`));return}}},error:e=>r.error(e),complete:()=>{a&&(a+=i.decode(),o(a)),r.complete()}});function o(e){let t=e.split(`
1
+ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,a)=>(a=n==null?{}:e(i(n)),o(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));let c=require(`uuid`),l=require(`@ag-ui/core`),u=require(`fast-json-patch`);u=s(u);let d=require(`rxjs`),f=require(`rxjs/operators`),p=require(`untruncate-json`);p=s(p);let m=require(`@ag-ui/proto`);m=s(m);let h=require(`compare-versions`),g=require(`@ag-ui/core/schemas`),_=require(`zod/v4`);const v=`@ag-ui/client`;function y(e){if(!e.metadata||!Object.prototype.hasOwnProperty.call(e.metadata,v))return;let t=e.metadata?.[v];if(!t||typeof t!=`object`||Array.isArray(t))return[];if(!Object.prototype.hasOwnProperty.call(t,`authoritativeActivityTypes`))return;let n=t.authoritativeActivityTypes;return n===null?null:Array.isArray(n)&&n.every(e=>typeof e==`string`)?n:[]}function ee(e,t){let n=e.metadata?.[v],r=y(e),i=r===null||r===void 0&&e.messages.some(e=>e.role===`activity`);return{...e,metadata:{...e.metadata,[v]:{...n&&typeof n==`object`&&!Array.isArray(n)?n:{},authoritativeActivityTypes:i?null:[...new Set([...r??[],...t])]}}}}const b=e=>{if(typeof structuredClone==`function`)return structuredClone(e);try{return JSON.parse(JSON.stringify(e))}catch{return Array.isArray(e)?[...e]:{...e}}};function x(){return(0,c.v4)()}function te(e){return e instanceof TypeError?/read[- ]?only|not extensible|cannot add property|cannot delete property|can't be deleted|unable to delete property|object is frozen|is not writable/i.test(e.message):!1}function S(e){if(Object.freeze(e),typeof e==`object`&&e)for(let t of Object.values(e))typeof t==`object`&&t&&!Object.isFrozen(t)&&S(t);return e}const ne=512*1024;function re(e,t,n){let r=0,i=[e,t],a=new WeakSet;for(;i.length>0;){let e=i.pop();if(typeof e==`string`){if(r+=e.length,r>n)return!0}else if(typeof e==`object`&&e){if(a.has(e))continue;if(a.add(e),Array.isArray(e))for(let t=0;t<e.length;t++)i.push(e[t]);else{let t=Object.keys(e);for(let a=0;a<t.length;a++){let o=t[a];if(r+=o.length,r>n)return!0;i.push(e[o])}}}}return!1}async function C(e,t,n,r){let i=typeof process<`u`&&process.env!==void 0,a=i&&(process.env.NODE_ENV===`test`||!!process.env.VITEST_WORKER_ID),o=i&&(process.env.NODE_ENV===`development`||process.env.NODE_ENV===`test`||!!process.env.VITEST_WORKER_ID),s=o&&!re(t,n,ne),c=s?b(t):t,l=s?b(n):n,u=!1,d=!1,f;for(let t of e)try{s&&(S(c),S(l));let e=await r(t,c,l);if(e===void 0)continue;let n=!1;if(e.messages!==void 0&&e.messages!==c&&(c=b(e.messages),u=!0,n=!0),e.state!==void 0&&e.state!==l&&(l=b(e.state),d=!0,n=!0),s&&n&&re(c,l,ne)&&(s=!1),f=e.stopPropagation,f===!0)break}catch(e){if(a&&e instanceof TypeError)throw e;s&&o&&te(e)?console.error(`AG-UI: Subscriber attempted to mutate frozen inputs in-place. Return mutations via AgentStateMutation instead of mutating directly.`,e):console.error(`Subscriber error:`,e);continue}return{...u?{messages:Object.isFrozen(c)?b(c):c}:{},...d?{state:Object.isFrozen(l)?b(l):l}:{},...f===void 0?{}:{stopPropagation:f}}}function w(e){if(!e)return{enabled:!1,events:!1,lifecycle:!1,verbose:!1};if(e===!0)return{enabled:!0,events:!0,lifecycle:!0,verbose:!0};let t=e.events??!0,n=e.lifecycle??!0,r=e.verbose??!1;return{enabled:t||n,events:t,lifecycle:n,verbose:r}}function T(e){if(e instanceof E)return e;if(e===!0)return new E(w(!0))}var E=class{constructor(e){this.config=e}event(e,t,n,r){this.config.events&&(this.config.verbose?console.debug(`[${e}] ${t}`,typeof n==`string`?n:JSON.stringify(n)):console.debug(`[${e}] ${t}`,r??n))}lifecycle(e,t,n){this.config.lifecycle&&(n?console.debug(`[${e}] ${t}`,n):console.debug(`[${e}] ${t}`))}get eventsEnabled(){return this.config.events}get lifecycleEnabled(){return this.config.lifecycle}get enabled(){return this.config.enabled}};function D(e){return e.enabled?new E(e):void 0}function ie(e,t,n){if(t){let r=e.find(e=>e.id===t);if(r?.role===`assistant`)return r;r&&console.warn(`TOOL_CALL_START: parentMessageId '${t}' matches a '${r.role}' message, not assistant — falling back to toolCallId`);let i={id:r?n:t,role:`assistant`,toolCalls:[]};return e.push(i),i}let r={id:n,role:`assistant`,toolCalls:[]};return e.push(r),r}function O(e,t){return!e||t.metadata===void 0?!1:(e.metadata=(0,l.mergeMetadata)(e.metadata,b(t.metadata)),!0)}const k=(e,t,n,r,i)=>{let a=T(i),o=b(n.messages),s=b(e.state),c={},m=[],h=new Set,g=e=>{let t=e.outcome?.type===`success`?e.outcome.pendingToolCallIds:void 0;return t!==void 0&&t.length>0?[...t]:m.filter(e=>!h.has(e))},_=e=>{e.messages!==void 0&&(o=e.messages,c.messages=e.messages),e.state!==void 0&&(s=e.state,c.state=e.state)},v=()=>{let e=b(c);return c={},e.messages!==void 0||e.state!==void 0?(0,d.of)(e):d.EMPTY};return t.pipe((0,f.concatMap)(async t=>{let i=await C(r,o,s,(r,i,a)=>r.onEvent?.({event:t,agent:n,input:e,messages:i,state:a}));if(_(i),i.stopPropagation===!0?a?.event(`APPLY`,`Event dropped:`,t,{type:t.type,reason:`stopPropagation by subscriber`}):a?.event(`APPLY`,`Event applied:`,t,{type:t.type,subscribers:r.length}),i.stopPropagation===!0)return v();switch(t.type){case l.EventType.TEXT_MESSAGE_START:{let i=await C(r,o,s,(r,i,a)=>r.onTextMessageStartEvent?.({event:t,messages:i,state:a,agent:n,input:e}));if(_(i),i.stopPropagation!==!0){let{messageId:e,role:n=`assistant`,name:r,subagentRunId:i}=t,a=o.find(t=>t.id===e);if(a?.role===`activity`)return console.warn(`TEXT_MESSAGE_START: Message '${e}' is an activity message — message ids must be unique across activity and text messages`),v();let s=a;if(!s){let t={id:e,role:n,content:``,...r!==void 0&&{name:r},...i!=null&&{subagentRunId:i}};o.push(t),s=t}let c=O(s,t);(!a||c)&&_({messages:o})}return v()}case l.EventType.TEXT_MESSAGE_CONTENT:{let{messageId:i,delta:a}=t,c=o.find(e=>e.id===i);if(!c)return console.warn(`TEXT_MESSAGE_CONTENT: No message found with ID '${i}'`),v();if(c.role===`activity`)return console.warn(`TEXT_MESSAGE_CONTENT: Message '${i}' is an activity message — message ids must be unique across activity and text messages`),v();let l=await C(r,o,s,(r,i,a)=>r.onTextMessageContentEvent?.({event:t,messages:i,state:a,agent:n,input:e,textMessageBuffer:typeof c.content==`string`?c.content:``}));return _(l),l.stopPropagation!==!0&&(c.content=`${typeof c.content==`string`?c.content:``}${a}`,O(c,t),_({messages:o})),v()}case l.EventType.TEXT_MESSAGE_END:{let{messageId:i}=t,a=o.find(e=>e.id===i);if(!a)return console.warn(`TEXT_MESSAGE_END: No message found with ID '${i}'`),v();if(a.role===`activity`)return console.warn(`TEXT_MESSAGE_END: Message '${i}' is an activity message — message ids must be unique across activity and text messages`),v();let c=await C(r,o,s,(r,i,o)=>r.onTextMessageEndEvent?.({event:t,messages:i,state:o,agent:n,input:e,textMessageBuffer:typeof a.content==`string`?a.content:``}));return _(c),c.stopPropagation!==!0&&O(a,t)&&_({messages:o}),await Promise.all(r.map(t=>{t.onNewMessage?.({message:a,messages:o,state:s,agent:n,input:e})})),v()}case l.EventType.TOOL_CALL_START:{let i=await C(r,o,s,(r,i,a)=>r.onToolCallStartEvent?.({event:t,messages:i,state:a,agent:n,input:e}));if(_(i),i.stopPropagation!==!0){let{toolCallId:e,toolCallName:n,parentMessageId:r,subagentRunId:i}=t;m.includes(e)||m.push(e);let a=o.find(t=>t.toolCalls?.some(t=>t.id===e))?.toolCalls?.find(t=>t.id===e);if(a){let r=a.function.name!==n;return r&&(console.warn(`TOOL_CALL_START: tool call '${e}' already exists with name '${a.function.name}' — updating it to '${n}'`),a.function.name=n),(O(a,t)||r)&&_({messages:o}),v()}let s=new Set(o.map(e=>e.id)),c=ie(o,r,e);!s.has(c.id)&&i!=null&&c.subagentRunId===void 0&&(c.subagentRunId=i),c.toolCalls??=[];let l={id:e,type:`function`,function:{name:n,arguments:``}};c.toolCalls.push(l),O(l,t),_({messages:o})}return v()}case l.EventType.TOOL_CALL_ARGS:{let{toolCallId:i,delta:a}=t,c=o.find(e=>e.toolCalls?.some(e=>e.id===i));if(!c)return console.warn(`TOOL_CALL_ARGS: No message found containing tool call with ID '${i}'`),v();let l=c.toolCalls?.find(e=>e.id===i);if(!l)return console.warn(`TOOL_CALL_ARGS: No tool call found with ID '${i}'`),v();let u=await C(r,o,s,(r,i,a)=>{let o=l.function.arguments,s=l.function.name,c={};try{c=(0,p.default)(o)}catch{}return r.onToolCallArgsEvent?.({event:t,messages:i,state:a,agent:n,input:e,toolCallBuffer:o,toolCallName:s,partialToolCallArgs:c})});return _(u),u.stopPropagation!==!0&&(l.function.arguments+=a,O(l,t),_({messages:o})),v()}case l.EventType.TOOL_CALL_END:{let{toolCallId:i}=t,a=o.find(e=>e.toolCalls?.some(e=>e.id===i));if(!a)return console.warn(`TOOL_CALL_END: No message found containing tool call with ID '${i}'`),v();let c=a.toolCalls?.find(e=>e.id===i);if(!c)return console.warn(`TOOL_CALL_END: No tool call found with ID '${i}'`),v();let l=await C(r,o,s,(r,i,a)=>{let o=c.function.arguments,s=c.function.name,l={};try{l=JSON.parse(o)}catch{}return r.onToolCallEndEvent?.({event:t,messages:i,state:a,agent:n,input:e,toolCallName:s,toolCallArgs:l})});return _(l),l.stopPropagation!==!0&&O(c,t)&&_({messages:o}),await Promise.all(r.map(t=>{t.onNewToolCall?.({toolCall:c,messages:o,state:s,agent:n,input:e})})),v()}case l.EventType.TOOL_CALL_RESULT:{let i=await C(r,o,s,(r,i,a)=>r.onToolCallResultEvent?.({event:t,messages:i,state:a,agent:n,input:e}));if(_(i),i.stopPropagation!==!0){let{messageId:i,toolCallId:a,content:c,role:l,subagentRunId:u}=t;h.add(a);let d={id:i,toolCallId:a,role:l||`tool`,content:c,...u!=null&&{subagentRunId:u}};O(d,t);let f=o.findIndex(e=>e.role===`assistant`&&e.toolCalls?.some(e=>e.id===a));if(f===-1)o.push(d);else{let e=f+1;for(;e<o.length&&o[e].role===`tool`;)e++;o.splice(e,0,d)}await Promise.all(r.map(t=>{t.onNewMessage?.({message:d,messages:o,state:s,agent:n,input:e})})),_({messages:o})}return v()}case l.EventType.STATE_SNAPSHOT:{let i=await C(r,o,s,(r,i,a)=>r.onStateSnapshotEvent?.({event:t,messages:i,state:a,agent:n,input:e}));if(_(i),i.stopPropagation!==!0){let{snapshot:e}=t;s=e,_({state:s})}return v()}case l.EventType.STATE_DELTA:{let i=await C(r,o,s,(r,i,a)=>r.onStateDeltaEvent?.({event:t,messages:i,state:a,agent:n,input:e}));if(_(i),i.stopPropagation!==!0){let{delta:e}=t;try{s=u.default.applyPatch(s,e,!0,!1).newDocument,_({state:s})}catch(t){let n=t instanceof Error?t.message:String(t);console.warn(`Failed to apply state patch:\nCurrent state: ${JSON.stringify(s,null,2)}\nPatch operations: ${JSON.stringify(e,null,2)}\nError: ${n}`)}}return v()}case l.EventType.MESSAGES_SNAPSHOT:{let i=await C(r,o,s,(r,i,a)=>r.onMessagesSnapshotEvent?.({event:t,messages:i,state:a,agent:n,input:e}));if(_(i),i.stopPropagation!==!0){let{messages:e}=t,n=e.map(e=>{if(e.subagentRunId!==null)return e;let t={...e};return delete t.subagentRunId,t}),r=new Map(n.map(e=>[e.id,e])),i=y(t),a=n.some(e=>e.role===`activity`),s=n.some(e=>e.role===`reasoning`),c=e=>e.role===`activity`&&(i?!i.includes(e.activityType):i!==null&&!a)||e.role===`reasoning`&&!s;o=o.filter(e=>r.has(e.id)||c(e)).map(e=>r.get(e.id)??e);let l=new Set(o.map(e=>e.id));for(let e of n)l.has(e.id)||o.push(e);_({messages:o})}return v()}case l.EventType.ACTIVITY_SNAPSHOT:{let i=t,a=o.findIndex(e=>e.id===i.messageId),c=a>=0?o[a]:void 0,l=c?.role===`activity`?c:void 0,u=i.replace??!0,d=await C(r,o,s,(t,r,a)=>t.onActivitySnapshotEvent?.({event:i,messages:r,state:a,agent:n,input:e,activityMessage:l,existingMessage:c}));if(_(d),d.stopPropagation!==!0){let t={id:i.messageId,role:`activity`,activityType:i.activityType,content:b(i.content),...i.subagentRunId!=null&&{subagentRunId:i.subagentRunId}},c,d;a===-1?(o.push(t),c=t,d=t):l?(u&&(o[a]={...l,activityType:i.activityType,content:b(i.content),subagentRunId:i.subagentRunId},i.subagentRunId??delete o[a].subagentRunId),d=o[a]):u&&(o[a]=t,c=t,d=t),O(d,i),_({messages:o}),c&&await Promise.all(r.map(t=>t.onNewMessage?.({message:c,messages:o,state:s,agent:n,input:e})))}return v()}case l.EventType.ACTIVITY_DELTA:{let i=t,a=o.findIndex(e=>e.id===i.messageId);if(a===-1)return v();let c=o[a];if(c.role!==`activity`)return console.warn(`ACTIVITY_DELTA: Message '${i.messageId}' is not an activity message`),v();let l=c,d=await C(r,o,s,(t,r,a)=>t.onActivityDeltaEvent?.({event:i,messages:r,state:a,agent:n,input:e,activityMessage:l}));if(_(d),d.stopPropagation!==!0)try{O(l,i)&&_({messages:o});let e=b(l.content??{}),t=u.default.applyPatch(e,i.patch??[],!0,!1).newDocument;o[a]={...l,content:b(t),activityType:i.activityType},_({messages:o})}catch(e){let t=e instanceof Error?e.message:String(e);console.warn(`Failed to apply activity patch for '${i.messageId}': ${t}`)}return v()}case l.EventType.RAW:return _(await C(r,o,s,(r,i,a)=>r.onRawEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),v();case l.EventType.CUSTOM:return _(await C(r,o,s,(r,i,a)=>r.onCustomEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),v();case l.EventType.RUN_STARTED:{let i=await C(r,o,s,(r,i,a)=>r.onRunStartedEvent?.({event:t,messages:i,state:a,agent:n,input:e}));if(_(i),m=[],h=new Set,i.stopPropagation!==!0){let e=t;if(e.input?.messages){for(let t of e.input.messages){let e=t;if(t.subagentRunId===null){let n={...t};delete n.subagentRunId,e=n}o.find(t=>t.id===e.id)||o.push(e)}_({messages:o})}}return v()}case l.EventType.RUN_FINISHED:{let i=t,a=i.outcome?.type===`interrupt`?{event:i,outcome:`interrupt`,interrupts:i.outcome.interrupts}:i.outcome?.type===`cancelled`?{event:i,outcome:`cancelled`}:{event:i,outcome:`success`,result:i.result,pendingToolCallIds:g(i)},c=await C(r,o,s,(t,r,i)=>t.onRunFinishedEvent?.({...a,messages:r,state:i,agent:n,input:e}));return _(c),c.stopPropagation!==!0&&(n.pendingInterrupts=a.outcome===`interrupt`?a.interrupts.map(e=>{if(e.subagentRunId!==null)return e;let t={...e};return delete t.subagentRunId,t}):[]),v()}case l.EventType.RUN_ERROR:return _(await C(r,o,s,(r,i,a)=>r.onRunErrorEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),v();case l.EventType.STEP_STARTED:return _(await C(r,o,s,(r,i,a)=>r.onStepStartedEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),v();case l.EventType.STEP_FINISHED:return _(await C(r,o,s,(r,i,a)=>r.onStepFinishedEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),v();case l.EventType.TEXT_MESSAGE_CHUNK:throw Error(`TEXT_MESSAGE_CHUNK must be transformed before being applied`);case l.EventType.TOOL_CALL_CHUNK:throw Error(`TOOL_CALL_CHUNK must be transformed before being applied`);case l.EventType.REASONING_START:return _(await C(r,o,s,(r,i,a)=>r.onReasoningStartEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),v();case l.EventType.REASONING_MESSAGE_START:{let i=await C(r,o,s,(r,i,a)=>r.onReasoningMessageStartEvent?.({event:t,messages:i,state:a,agent:n,input:e}));if(_(i),i.stopPropagation!==!0){let{messageId:e,subagentRunId:n}=t,r=o.find(t=>t.id===e);if(r?.role===`activity`)return console.warn(`REASONING_MESSAGE_START: Message '${e}' is an activity message — message ids must be unique across activity and reasoning messages`),v();let i=r;if(!i){let t={id:e,role:`reasoning`,content:``,...n!=null&&{subagentRunId:n}};o.push(t),i=t}let a=O(i,t);(!r||a)&&_({messages:o})}return v()}case l.EventType.REASONING_MESSAGE_CONTENT:{let{messageId:i,delta:a}=t,c=o.find(e=>e.id===i);if(!c)return console.warn(`REASONING_MESSAGE_CONTENT: No message found with ID '${i}'`),v();if(c.role===`activity`)return console.warn(`REASONING_MESSAGE_CONTENT: Message '${i}' is an activity message — message ids must be unique across activity and reasoning messages`),v();let l=await C(r,o,s,(r,i,a)=>r.onReasoningMessageContentEvent?.({event:t,messages:i,state:a,agent:n,input:e,reasoningMessageBuffer:typeof c.content==`string`?c.content:``}));return _(l),l.stopPropagation!==!0&&(c.content=`${typeof c.content==`string`?c.content:``}${a}`,O(c,t),_({messages:o})),v()}case l.EventType.REASONING_MESSAGE_END:{let{messageId:i}=t,a=o.find(e=>e.id===i);if(!a)return console.warn(`REASONING_MESSAGE_END: No message found with ID '${i}'`),v();if(a.role===`activity`)return console.warn(`REASONING_MESSAGE_END: Message '${i}' is an activity message — message ids must be unique across activity and reasoning messages`),v();let c=await C(r,o,s,(r,i,o)=>r.onReasoningMessageEndEvent?.({event:t,messages:i,state:o,agent:n,input:e,reasoningMessageBuffer:typeof a.content==`string`?a.content:``}));return _(c),c.stopPropagation!==!0&&O(a,t)&&_({messages:o}),await Promise.all(r.map(t=>{t.onNewMessage?.({message:a,messages:o,state:s,agent:n,input:e})})),v()}case l.EventType.REASONING_MESSAGE_CHUNK:throw Error(`REASONING_MESSAGE_CHUNK must be transformed before being applied`);case l.EventType.REASONING_END:return _(await C(r,o,s,(r,i,a)=>r.onReasoningEndEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),v();case l.EventType.REASONING_ENCRYPTED_VALUE:{let{subtype:i,entityId:a,encryptedValue:l}=t,u=await C(r,o,s,(r,i,a)=>r.onReasoningEncryptedValueEvent?.({event:t,messages:i,state:a,agent:n,input:e}));if(_(u),u.stopPropagation!==!0){let e=!1;if(i===`tool-call`){for(let t of o)if(t.role===`assistant`&&t.toolCalls){let n=t.toolCalls.find(e=>e.id===a);if(n){n.encryptedValue=l,e=!0;break}}}else{let t=o.find(e=>e.id===a);t?.role!==`activity`&&t&&(t.encryptedValue=l,e=!0)}e&&(c.messages=o)}return v()}case l.EventType.SUBAGENT_STARTED:return _(await C(r,o,s,(r,i,a)=>r.onSubagentStartedEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),v();case l.EventType.SUBAGENT_FINISHED:return _(await C(r,o,s,(r,i,a)=>r.onSubagentFinishedEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),v();case l.EventType.SUBAGENT_ERROR:return _(await C(r,o,s,(r,i,a)=>r.onSubagentErrorEvent?.({event:t,messages:i,state:a,agent:n,input:e}))),v()}return t.type,v()}),(0,f.mergeAll)(),r.length>0?(0,f.defaultIfEmpty)({}):e=>e)},A=e=>t=>{let n=T(e),r=new Set,i=new Set,a=new Set,o=new Set,s={message:new Map,toolCall:new Map,activity:new Map,reasoning:new Map},c=!1,u=!1,p=!1,m=new Map,h=e=>{let t=m.get(e);return t||(t=new Map,m.set(e,t)),t},g=()=>{for(let e of m.values())if(e.size>0)return!0;return!1},_=new Map,v=new Set,y=!1,ee=()=>{r.clear(),i.clear(),a.clear(),o.clear(),s.message.clear(),s.toolCall.clear(),s.activity.clear(),s.reasoning.clear(),m.clear(),_.clear(),v.clear(),c=!1,u=!1,y=!0},b=(e,t)=>{let n=e??[];if(Array.isArray(n))for(let e of n){if(!e||typeof e.id!=`string`)continue;if(e.subagentRunId===null)return new l.AGUIError(`Cannot send a message (id '${e.id}') with 'subagentRunId: null'. The field is optional — omit it entirely.`);let n=e.role===`reasoning`?s.reasoning:e.role===`activity`?s.activity:s.message;(t||!n.has(e.id))&&n.set(e.id,{subagentRunId:e.subagentRunId});for(let n of e.toolCalls??[])n&&typeof n.id==`string`&&(t||!s.toolCall.has(n.id))&&s.toolCall.set(n.id,{subagentRunId:e.subagentRunId??void 0})}},x=(e,t,n,r,i)=>{if(t!==void 0&&n&&n.subagentRunId!==t)return new l.AGUIError(`Cannot send '${e}': subagentRunId '${t}' does not match the ${r} '${i}' opener's subagent '${n.subagentRunId??`(the parent agent)`}'.`)};return t.pipe((0,f.mergeMap)(e=>{let t=e.type;if(n?.event(`VERIFY`,`Event:`,e,{type:e.type}),u&&t!==l.EventType.RUN_STARTED)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send event type '${t}': The run has already errored with 'RUN_ERROR'. No further events can be sent.`));if(c&&t!==l.EventType.RUN_ERROR&&t!==l.EventType.RUN_STARTED)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send event type '${t}': The run has already finished with 'RUN_FINISHED'. Start a new run with 'RUN_STARTED'.`));if(!p){if(p=!0,t!==l.EventType.RUN_STARTED&&t!==l.EventType.RUN_ERROR)return(0,d.throwError)(()=>new l.AGUIError(`First event must be 'RUN_STARTED'`))}else if(t===l.EventType.RUN_STARTED){if(y&&!c&&!u)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'RUN_STARTED' while a run is still active. The previous run must be finished with 'RUN_FINISHED' before starting a new run.`));(c||u)&&ee()}if(e.subagentRunId===null)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send '${t}' with 'subagentRunId: null'. The field is optional — omit it entirely.`));if(t===l.EventType.SUBAGENT_STARTED||t===l.EventType.SUBAGENT_FINISHED||t===l.EventType.SUBAGENT_ERROR){let n=t===l.EventType.SUBAGENT_STARTED?[`description`,`parentSubagentRunId`,`parentToolCallId`,`parentMessageId`]:t===l.EventType.SUBAGENT_FINISHED?[`outcome`]:[`code`];for(let r of n)if(e[r]===null)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send '${t}' with '${r}: null'. The field is optional — omit it entirely.`));let r=e.outcome;if(r!=null&&r.type!==`success`&&r.type!==`suspended`)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send '${t}' with outcome type '${String(r.type)}'. The outcome is either { type: "success" } or { type: "suspended" }.`));if(r&&r.interruptIds===null)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send '${t}' with 'outcome.interruptIds: null'. The field is optional — omit it entirely.`));if(r&&Array.isArray(r.interruptIds)&&r.interruptIds.some(e=>typeof e!=`string`))return(0,d.throwError)(()=>new l.AGUIError(`Cannot send '${t}' with a non-string entry in 'outcome.interruptIds'. Interrupt ids are strings.`))}if(t===l.EventType.RUN_FINISHED){let t=e.outcome;if(t?.type===`interrupt`&&Array.isArray(t.interrupts)){for(let e of t.interrupts)if(e&&e.subagentRunId===null)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'RUN_FINISHED' with an interrupt (id '${e.id}') carrying 'subagentRunId: null'. The field is optional — omit it entirely.`))}}switch(t){case l.EventType.TEXT_MESSAGE_START:{let n=e.messageId;if(r.has(n))return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'TEXT_MESSAGE_START' event: A text message with ID '${n}' is already in progress. Complete it with 'TEXT_MESSAGE_END' first.`));let i=s.message.get(n);if(i){let r=x(t,e.subagentRunId,i,`message`,n);if(r)return(0,d.throwError)(()=>r)}return r.add(n),i||s.message.set(n,{subagentRunId:e.subagentRunId}),(0,d.of)(e)}case l.EventType.TEXT_MESSAGE_CONTENT:{let n=e.messageId;if(!r.has(n))return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'TEXT_MESSAGE_CONTENT' event: No active text message found with ID '${n}'. Start a text message with 'TEXT_MESSAGE_START' first.`));let i=x(t,e.subagentRunId,s.message.get(n),`message`,n);return i?(0,d.throwError)(()=>i):(0,d.of)(e)}case l.EventType.TEXT_MESSAGE_END:{let n=e.messageId;if(!r.has(n))return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'TEXT_MESSAGE_END' event: No active text message found with ID '${n}'. A 'TEXT_MESSAGE_START' event must be sent first.`));let i=x(t,e.subagentRunId,s.message.get(n),`message`,n);return i?(0,d.throwError)(()=>i):(r.delete(n),(0,d.of)(e))}case l.EventType.TOOL_CALL_START:{let n=e.toolCallId;if(i.has(n))return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'TOOL_CALL_START' event: A tool call with ID '${n}' is already in progress. Complete it with 'TOOL_CALL_END' first.`));let r=e.parentMessageId,a=e.subagentRunId,o;if(r!==void 0){let e=s.message.get(r);if(e){if(a!==void 0&&a!==e.subagentRunId)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'TOOL_CALL_START': subagentRunId '${a}' does not match its parent message '${r}' owner '${e.subagentRunId??`(the parent agent)`}'. A tool call belongs to the message that carries it.`));o=e}}let c=s.toolCall.get(n);if(c){let e=x(t,a,c,`tool call`,n);if(e)return(0,d.throwError)(()=>e);if(a===void 0&&o&&o.subagentRunId!==c.subagentRunId)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'TOOL_CALL_START': tool call '${n}' is owned by '${c.subagentRunId??`(the parent agent)`}' but its parent message '${r}' is owned by '${o.subagentRunId??`(the parent agent)`}'. A tool call belongs to the message that carries it.`))}return i.add(n),c||s.toolCall.set(n,a===void 0?o??{subagentRunId:void 0}:{subagentRunId:a}),(0,d.of)(e)}case l.EventType.TOOL_CALL_ARGS:{let n=e.toolCallId;if(!i.has(n))return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'TOOL_CALL_ARGS' event: No active tool call found with ID '${n}'. Start a tool call with 'TOOL_CALL_START' first.`));let r=x(t,e.subagentRunId,s.toolCall.get(n),`tool call`,n);return r?(0,d.throwError)(()=>r):(0,d.of)(e)}case l.EventType.TOOL_CALL_END:{let n=e.toolCallId;if(!i.has(n))return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'TOOL_CALL_END' event: No active tool call found with ID '${n}'. A 'TOOL_CALL_START' event must be sent first.`));let r=x(t,e.subagentRunId,s.toolCall.get(n),`tool call`,n);return r?(0,d.throwError)(()=>r):(i.delete(n),(0,d.of)(e))}case l.EventType.STEP_STARTED:{let t=e.stepName,n=e.subagentRunId;return h(n).has(t)?(0,d.throwError)(()=>new l.AGUIError(`Step "${t}" is already active for 'STEP_STARTED'${n===void 0?``:` in subagent '${n}'`}`)):(h(n).set(t,!0),(0,d.of)(e))}case l.EventType.STEP_FINISHED:{let t=e.stepName,n=e.subagentRunId;if(!h(n).has(t)){let e,r=!1;for(let[i,a]of m)if(i!==n&&a.has(t)){e=i,r=!0;break}return r?(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'STEP_FINISHED' for step "${t}" attributed to ${n===void 0?`the parent agent`:`subagent '${n}'`}: that step is open under ${e===void 0?`the parent agent`:`subagent '${e}'`}. A step must be finished by whoever started it.`)):(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'STEP_FINISHED' for step "${t}" that was not started`))}return h(n).delete(t),(0,d.of)(e)}case l.EventType.ACTIVITY_SNAPSHOT:{let t=e.messageId;return(!s.activity.has(t)||e.replace!==!1)&&s.activity.set(t,{subagentRunId:e.subagentRunId}),(0,d.of)(e)}case l.EventType.TOOL_CALL_RESULT:{let t=e.messageId;return typeof t==`string`&&s.message.set(t,{subagentRunId:e.subagentRunId}),(0,d.of)(e)}case l.EventType.REASONING_START:case l.EventType.REASONING_MESSAGE_START:{let n=e.messageId,r=t===l.EventType.REASONING_START,i=r?a:o;if(i.has(n))return(0,d.throwError)(()=>new l.AGUIError(r?`Cannot send 'REASONING_START' event: A reasoning span with ID '${n}' is already in progress. Complete it with 'REASONING_END' first.`:`Cannot send 'REASONING_MESSAGE_START' event: A reasoning message with ID '${n}' is already in progress. Complete it with 'REASONING_MESSAGE_END' first.`));let c=s.reasoning.get(n);if(c){let r=x(t,e.subagentRunId,c,`reasoning message`,n);if(r)return(0,d.throwError)(()=>r)}return i.add(n),c||s.reasoning.set(n,{subagentRunId:e.subagentRunId}),(0,d.of)(e)}case l.EventType.REASONING_MESSAGE_CONTENT:case l.EventType.REASONING_MESSAGE_END:case l.EventType.REASONING_END:{let n=e.messageId,r=t===l.EventType.REASONING_END,i=r?a:o;if(!i.has(n))return(0,d.throwError)(()=>new l.AGUIError(r?`Cannot send 'REASONING_END' event: No active reasoning span found with ID '${n}'. A 'REASONING_START' event must be sent first.`:`Cannot send '${t}' event: No active reasoning message found with ID '${n}'. Start a reasoning message with 'REASONING_MESSAGE_START' first.`));let c=x(t,e.subagentRunId,s.reasoning.get(n),`reasoning message`,n);return c?(0,d.throwError)(()=>c):((t===l.EventType.REASONING_END||t===l.EventType.REASONING_MESSAGE_END)&&i.delete(n),(0,d.of)(e))}case l.EventType.REASONING_ENCRYPTED_VALUE:{let n=e.entityId,r=e.subtype,i=r===`tool-call`?s.toolCall.get(n):r===`message`?s.message.get(n)??s.reasoning.get(n):s.reasoning.get(n),a=r===`tool-call`?`tool call`:r===`message`?`message`:`reasoning message`,o=x(t,e.subagentRunId,i,a,n);return o?(0,d.throwError)(()=>o):(0,d.of)(e)}case l.EventType.ACTIVITY_DELTA:{let n=e.messageId,r=x(t,e.subagentRunId,s.activity.get(n),`activity`,n);return r?(0,d.throwError)(()=>r):(0,d.of)(e)}case l.EventType.SUBAGENT_STARTED:{if(typeof e.subagentRunId!=`string`)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'SUBAGENT_STARTED' without a 'subagentRunId'.`));if(typeof e.name!=`string`)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'SUBAGENT_STARTED' without a 'name'.`));let t=e.subagentRunId,n=e.parentSubagentRunId;return _.has(t)?(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'SUBAGENT_STARTED': subagent '${t}' is already active. Finish it with 'SUBAGENT_FINISHED' first.`)):v.has(t)?(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'SUBAGENT_STARTED': subagent '${t}' has already finished in this run. Subagent IDs are per-invocation and cannot be reused.`)):n!==void 0&&!_.has(n)&&!v.has(n)?(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'SUBAGENT_STARTED': parentSubagentRunId '${n}' has not been started in this run.`)):(_.set(t,!0),(0,d.of)(e))}case l.EventType.SUBAGENT_FINISHED:case l.EventType.SUBAGENT_ERROR:{if(typeof e.subagentRunId!=`string`)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send '${t}' without a 'subagentRunId'.`));if(t===l.EventType.SUBAGENT_ERROR&&typeof e.message!=`string`)return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'SUBAGENT_ERROR' without a 'message'.`));let n=e.subagentRunId;return _.has(n)?(_.delete(n),v.add(n),(0,d.of)(e)):(0,d.throwError)(()=>new l.AGUIError(`Cannot send '${t}': no active subagent found with ID '${n}'. A 'SUBAGENT_STARTED' event must be sent first.`))}case l.EventType.MESSAGES_SNAPSHOT:{let t=b(e.messages,!0);if(t)return(0,d.throwError)(()=>t)}return(0,d.of)(e);case l.EventType.RUN_STARTED:y=!0;{let t=b((e.input??{}).messages,!1);if(t)return(0,d.throwError)(()=>t)}return(0,d.of)(e);case l.EventType.RUN_FINISHED:if(g()){let e=[];for(let[t,n]of m)for(let r of n.keys())e.push(t===void 0?r:`${r} (subagent '${t}')`);let t=e.join(`, `);return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'RUN_FINISHED' while steps are still active: ${t}`))}if(r.size>0){let e=Array.from(r.keys()).join(`, `);return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'RUN_FINISHED' while text messages are still active: ${e}`))}if(o.size>0){let e=Array.from(o.keys()).join(`, `);return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'RUN_FINISHED' while reasoning messages are still active: ${e}`))}if(a.size>0){let e=Array.from(a.keys()).join(`, `);return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'RUN_FINISHED' while reasoning spans are still active: ${e}`))}if(i.size>0){let e=Array.from(i.keys()).join(`, `);return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'RUN_FINISHED' while tool calls are still active: ${e}`))}if(_.size>0){let e=Array.from(_.keys()).join(`, `);return(0,d.throwError)(()=>new l.AGUIError(`Cannot send 'RUN_FINISHED' while subagents are still active: ${e}`))}return c=!0,(0,d.of)(e);case l.EventType.RUN_ERROR:return u=!0,(0,d.of)(e);case l.EventType.CUSTOM:return(0,d.of)(e);default:return(0,d.of)(e)}}))};let j=function(e){return e.HEADERS=`headers`,e.DATA=`data`,e}({});const ae=e=>(0,d.defer)(()=>(0,d.from)(e())).pipe((0,f.switchMap)(e=>{if(!e.ok){let t=e.headers.get(`content-type`)||``;return(0,d.from)(e.text()).pipe((0,f.mergeMap)(n=>{let r=n;if(t.includes(`application/json`))try{r=JSON.parse(n)}catch{}let i=Error(`HTTP ${e.status}: ${typeof r==`string`?r:JSON.stringify(r)}`);return i.status=e.status,i.payload=r,(0,d.throwError)(()=>i)}))}let t={type:j.HEADERS,status:e.status,headers:e.headers},n=e.body?.getReader();return n?new d.Observable(e=>(e.next(t),(async()=>{try{for(;;){let{done:t,value:r}=await n.read();if(t)break;let i={type:j.DATA,data:r};e.next(i)}e.complete()}catch(t){e.error(t)}})(),()=>{n.cancel().catch(e=>{if(e?.name!==`AbortError`)throw e})})):(0,d.throwError)(()=>Error(`Failed to getReader() from response`))})),oe=10*1024*1024,se=(e,t)=>{let n=T(t),r=new d.Subject,i=new TextDecoder(`utf-8`,{fatal:!1}),a=``;e.subscribe({next:e=>{if(e.type!==j.HEADERS&&e.type===j.DATA&&e.data){let t=i.decode(e.data,{stream:!0});a+=t;let n=a.split(/\n\n/);a=n.pop()||``;for(let e of n)o(e);if(a.length>oe){r.error(Error(`SSE buffer size exceeded maximum limit of ${oe/(1024*1024)} MB`));return}}},error:e=>r.error(e),complete:()=>{a&&(a+=i.decode(),o(a)),r.complete()}});function o(e){let t=e.split(`
2
2
  `),i=[];for(let e of t)e.startsWith(`data:`)&&i.push(e.slice(5).replace(/^ /,``));if(i.length>0)try{let e=i.join(`
3
- `),t=JSON.parse(e);n?.event(`SSE`,`Event received:`,t,{type:t?.type}),r.next(t)}catch(e){r.error(e)}}return r.asObservable()},oe=10*1024*1024,se=()=>typeof process<`u`&&process.env!==void 0&&!!process.env.SUPPRESS_TRANSFORMATION_WARNINGS,ce=(e,t)=>{let n=w(t),r=new d.Subject,i=new Uint8Array,a=!1;e.subscribe({next:e=>{if(e.type!==A.HEADERS&&e.type===A.DATA&&e.data){let t=new Uint8Array(i.length+e.data.length);t.set(i,0),t.set(e.data,i.length),i=t,o()}},error:e=>r.error(e),complete:()=>{if(o(),!a){if(i.length>0){r.error(Error(`The binary stream ended mid-frame: ${i.length} trailing bytes could not be read as a complete message.`));return}r.complete()}}});function o(){if(!a)for(;i.length>=4;){let e=4+new DataView(i.buffer,i.byteOffset,4).getUint32(0,!1);if(e>oe){r.error(Error(`Protobuf message size exceeded maximum limit of ${oe/(1024*1024)} MB`));return}if(i.length<e)break;try{let t=i.slice(4,e),a=m.decode(t);n?.event(`PROTO`,`Event received:`,a,{type:a.type}),r.next(a)}catch(e){if(e instanceof m.AGUIUnknownEventTypeError)se()||console.warn(`[ag-ui][proto] Dropped an event this build does not know: the protocol has a variant this SDK predates.`);else{let t=e instanceof Error?e.message:String(e);a=!0,r.error(Error(`Failed to decode protocol buffer message: ${t}`));return}}i=i.slice(e)}}return r.asObservable()},le=(e,t)=>{let n=w(t),r=new d.Subject,i=new d.ReplaySubject(1),a=!1,o,s=!1,c=()=>{s=!0,o?.unsubscribe()},u=e=>{c(),r.error(e)},f=()=>{c(),r.complete()};return o=e.subscribe({next:e=>{if(i.next(e),e.type===A.HEADERS&&!a){a=!0;let t=e.headers.get(`content-type`);n?.lifecycle(`HTTP`,`Stream format detected:`,{contentType:t,parser:t===m.AGUI_MEDIA_TYPE?`protobuf`:`sse`}),t===m.AGUI_MEDIA_TYPE?ce(i,n).subscribe({next:e=>r.next(e),error:e=>u(e),complete:()=>f()}):ae(i,n).subscribe({next:e=>{if(typeof e!=`object`||!e||Array.isArray(e)){let t=Error(`Invalid event: the frame is not a JSON object.`);n?.event(`HTTP`,`Event invalid:`,{json:e,error:String(t)}),u(t);return}let t=e;if(typeof t.type!=`string`||t.type.length===0){let t=Error(`Invalid event: the frame carries no event type.`);n?.event(`HTTP`,`Event invalid:`,{json:e,error:String(t)}),u(t);return}n?.event(`HTTP`,`Event received:`,e,{type:t.type}),r.next(e)},error:e=>{if(e?.name===`AbortError`){r.next({type:l.EventType.RUN_ERROR,message:e.message||`Request aborted`,code:`abort`,rawEvent:e}),f();return}return u(e)},complete:()=>f()})}else a||u(Error(`No headers event received before data events`))},error:e=>{i.error(e),u(e)},complete:()=>{i.complete()}}),s&&o.unsubscribe(),r.asObservable()},j={TextMessageStart:`TextMessageStart`,TextMessageContent:`TextMessageContent`,TextMessageEnd:`TextMessageEnd`,ActionExecutionStart:`ActionExecutionStart`,ActionExecutionArgs:`ActionExecutionArgs`,ActionExecutionEnd:`ActionExecutionEnd`,ActionExecutionResult:`ActionExecutionResult`,AgentStateMessage:`AgentStateMessage`,MetaEvent:`MetaEvent`,RunStarted:`RunStarted`,RunFinished:`RunFinished`,RunError:`RunError`,NodeStarted:`NodeStarted`,NodeFinished:`NodeFinished`},ue=e=>{if(typeof e==`string`)return e;if(!Array.isArray(e))return;let t=e.filter(e=>e.type===`text`).map(e=>e.text).filter(e=>e.length>0);if(t.length!==0)return t.join(`
4
- `)};function de(e,t){return(0,l.contentHasMedia)(t)&&M(`[ag-ui][legacy] The result of tool call '${e}' carries content parts the legacy protocol cannot represent; only its text parts are bridged and the rest is dropped.`),(0,l.contentToText)(t)}const M=e=>{typeof process<`u`&&process.env!==void 0&&process.env.SUPPRESS_TRANSFORMATION_WARNINGS||console.warn(e)},fe=(e,t,n)=>r=>{let i={},a=!0,o=!0,s=``,c=null,d=null,m=[],h={},g=!1,_=e=>{typeof e==`object`&&e&&(`messages`in e&&delete e.messages,i=e)};return r.pipe((0,f.mergeMap)(r=>{switch(r.type){case l.EventType.TEXT_MESSAGE_START:{let e=r;return[{type:j.TextMessageStart,messageId:e.messageId,role:e.role}]}case l.EventType.TEXT_MESSAGE_CONTENT:{let e=r;return[{type:j.TextMessageContent,messageId:e.messageId,content:e.delta}]}case l.EventType.TEXT_MESSAGE_END:{let e=r;return[{type:j.TextMessageEnd,messageId:e.messageId}]}case l.EventType.TOOL_CALL_START:{let e=r;return m.push({id:e.toolCallId,type:`function`,function:{name:e.toolCallName,arguments:``}}),o=!0,h[e.toolCallId]=e.toolCallName,[{type:j.ActionExecutionStart,actionExecutionId:e.toolCallId,actionName:e.toolCallName,parentMessageId:e.parentMessageId}]}case l.EventType.TOOL_CALL_ARGS:{let c=r,l=m.find(e=>e.id===c.toolCallId);if(!l)return M(`[ag-ui][legacy] TOOL_CALL_ARGS: No tool call found with ID '${c.toolCallId}'`),[];l.function.arguments+=c.delta;let u=!1;if(d){let e=d.find(e=>e.tool==l.function.name);if(e)try{let t=JSON.parse((0,p.default)(l.function.arguments));e.tool_argument&&e.tool_argument in t?(_({...i,[e.state_key]:t[e.tool_argument]}),u=!0):e.tool_argument||(_({...i,[e.state_key]:t}),u=!0)}catch{}}return[{type:j.ActionExecutionArgs,actionExecutionId:c.toolCallId,args:c.delta},...u?[{type:j.AgentStateMessage,threadId:e,agentName:n,nodeName:s,runId:t,running:a,role:`assistant`,state:JSON.stringify(i),active:o}]:[]]}case l.EventType.TOOL_CALL_END:{let e=r;return[{type:j.ActionExecutionEnd,actionExecutionId:e.toolCallId}]}case l.EventType.TOOL_CALL_RESULT:{let e=r,t=h[e.toolCallId];return(t===void 0||t===``)&&M(`[ag-ui][legacy] No usable tool name was seen for tool call '${e.toolCallId}' (${t===void 0?`no TOOL_CALL_START reached this bridge`:`its TOOL_CALL_START carried an empty toolCallName`}), so its result is being bridged with the fabricated action name "unknown". Downstream consumers route on that name.`),[{type:j.ActionExecutionResult,actionExecutionId:e.toolCallId,result:de(e.toolCallId,e.content),actionName:t||`unknown`}]}case l.EventType.RAW:return g||(g=!0,M(`[ag-ui][legacy] Dropping RAW events: the legacy runtime protocol has no equivalent, so the provider payloads they carry do not reach the legacy stream. Reported once per stream.`)),[];case l.EventType.CUSTOM:{let e=r;switch(e.name){case`Exit`:a=!1;break;case`PredictState`:d=e.value;break}return[{type:j.MetaEvent,name:e.name,value:e.value}]}case l.EventType.STATE_SNAPSHOT:return _(r.snapshot),[{type:j.AgentStateMessage,threadId:e,agentName:n,nodeName:s,runId:t,running:a,role:`assistant`,state:JSON.stringify(i),active:o}];case l.EventType.STATE_DELTA:{let c=r,l;try{l=u.default.applyPatch(i,c.delta,!0,!1).newDocument}catch(e){let t=e instanceof Error?e.message:String(e);return M(`[ag-ui][legacy] Failed to apply state patch:\nCurrent state: ${JSON.stringify(i,null,2)}\nPatch operations: ${JSON.stringify(c.delta,null,2)}\nError: ${t}`),[]}return _(l),[{type:j.AgentStateMessage,threadId:e,agentName:n,nodeName:s,runId:t,running:a,role:`assistant`,state:JSON.stringify(i),active:o}]}case l.EventType.MESSAGES_SNAPSHOT:return c=r.messages,[{type:j.AgentStateMessage,threadId:e,agentName:n,nodeName:s,runId:t,running:a,role:`assistant`,state:JSON.stringify({...i,...c?{messages:c}:{}}),active:!0}];case l.EventType.RUN_STARTED:return[];case l.EventType.RUN_FINISHED:{if(c&&(i.messages=c),Object.keys(i).length===0)return[];let r=null;if(c)try{r=pe(c)}catch(e){return[{type:j.RunError,message:e.message}]}return[{type:j.AgentStateMessage,threadId:e,agentName:n,nodeName:s,runId:t,running:a,role:`assistant`,state:JSON.stringify({...i,...r?{messages:r}:{}}),active:!1}]}case l.EventType.RUN_ERROR:{let e=r;return[{type:j.RunError,message:e.message,code:e.code}]}case l.EventType.STEP_STARTED:return s=r.stepName,m=[],d=null,[{type:j.AgentStateMessage,threadId:e,agentName:n,nodeName:s,runId:t,running:a,role:`assistant`,state:JSON.stringify(i),active:!0}];case l.EventType.STEP_FINISHED:return m=[],d=null,[{type:j.AgentStateMessage,threadId:e,agentName:n,nodeName:s,runId:t,running:a,role:`assistant`,state:JSON.stringify(i),active:!1}];default:return[]}}))};function pe(e){let t=[];for(let n of e)if(n.role===`assistant`||n.role===`user`||n.role===`system`){let e=ue(n.content);if(e){let r={id:n.id,role:n.role,content:e};t.push(r)}if(n.role===`assistant`&&n.toolCalls&&n.toolCalls.length>0)for(let e of n.toolCalls){let r;try{r=JSON.parse(e.function.arguments)}catch(t){throw Error(`Failed to parse arguments for tool call '${e.id}' (${e.function.name}): ${t.message}`)}let i={id:e.id,name:e.function.name,arguments:r,parentMessageId:n.id};t.push(i)}}else if(n.role===`tool`){let r=`unknown`;for(let t of e)if(t.role===`assistant`&&t.toolCalls?.length){for(let e of t.toolCalls)if(e.id===n.toolCallId){r=e.function.name;break}}let i={id:n.id,result:de(n.toolCallId,n.content),actionExecutionId:n.toolCallId,actionName:r};t.push(i)}return t}const me=e=>e.kind===`tool`?e.fields.toolCallId:e.fields.messageId,he=e=>e===`tool`?`toolCallId`:`messageId`,N=(e,t,n,r,i)=>{if(r!==void 0&&r!==i)throw Error(`Cannot continue ${e} '${t}': chunk ${n} '${r}' does not match the open stream's ${n} ${i===void 0?`(absent)`:`'${i}'`}.`)},P=(e,t)=>t.metadata===void 0?e:{...e,metadata:t.metadata},ge=(e,t)=>{let n=P(e,t);return t.rawEvent===void 0?n:{...n,rawEvent:t.rawEvent}},F=e=>new Set(Object.keys(e.shape)),_e=F(g.TextMessageChunkEventSchema),ve=F(g.ToolCallChunkEventSchema),ye=F(g.ReasoningMessageChunkEventSchema),I=(e,t)=>{let n;for(let r of Object.keys(e))t.has(r)||((n??={})[r]=e[r]);return n},be=e=>{typeof process<`u`&&process.env!==void 0&&process.env.SUPPRESS_TRANSFORMATION_WARNINGS||console.warn(`[ag-ui][transform] ${e} Set SUPPRESS_TRANSFORMATION_WARNINGS=true to silence.`)},L=(e,t,n,r)=>{if(t===void 0||n||e.length===0)return;let i=e[e.length-1],a=Object.keys(t).filter(e=>Object.prototype.hasOwnProperty.call(i,e));a.length>0&&be(`A ${r} carried ${a.map(e=>`'${e}'`).join(`, `)}, which the synthesized ${String(i.type)} already describes. The synthesized value is kept and the chunk's is dropped — this stage does not judge a described field, so the producer's value cannot be substituted for its own.`),e[e.length-1]={...t,...i}},R=e=>t=>{let n=w(e),r=new Map,i=e=>{let t=r.get(e);if(!t)return[];switch(r.delete(e),t.kind){case`text`:{let e={type:l.EventType.TEXT_MESSAGE_END,messageId:t.fields.messageId,...t.fields.subagentRunId!==void 0&&{subagentRunId:t.fields.subagentRunId}};return n?.event(`TRANSFORM`,`TEXT_MESSAGE_END`,e,{messageId:e.messageId}),[e]}case`tool`:{let e={type:l.EventType.TOOL_CALL_END,toolCallId:t.fields.toolCallId,...t.fields.subagentRunId!==void 0&&{subagentRunId:t.fields.subagentRunId}};return n?.event(`TRANSFORM`,`TOOL_CALL_END`,e,{toolCallId:e.toolCallId}),[e]}case`reasoning`:{let e={type:l.EventType.REASONING_MESSAGE_END,messageId:t.fields.messageId,...t.fields.subagentRunId!==void 0&&{subagentRunId:t.fields.subagentRunId}};return n?.event(`TRANSFORM`,`REASONING_MESSAGE_END`,e,{messageId:e.messageId}),[e]}}},a=()=>[...r.keys()].flatMap(e=>i(e)),o=(e,t)=>{for(let[n,i]of r)if(i.kind===e&&me(i)===t)return{owner:n}},s=(e,t,n,i,a)=>{if(t!==void 0){let r=o(e,t);if(r){if(n!==void 0&&n!==r.owner)throw Error(`Cannot continue ${a} '${t}': chunk subagentRunId '${n}' does not match the open stream's subagent '${r.owner??`(the parent agent)`}'.`);return r.owner}return n}if(n!==void 0)return n;if(r.get(void 0)?.kind===e)return;let s=[...r.entries()].filter(([,t])=>t.kind===e);if(s.length===1)return s[0][0];if(s.length>1)throw Error(`Ambiguous ${i}: it carries neither a ${he(e)} nor a subagentRunId, but ${s.length} lanes have an open ${a}. Attribute the chunk to the subagent it belongs to.`)};return t.pipe((0,d.mergeMap)(e=>{switch(e.type){case l.EventType.TEXT_MESSAGE_START:case l.EventType.TEXT_MESSAGE_CONTENT:case l.EventType.TEXT_MESSAGE_END:case l.EventType.TOOL_CALL_START:case l.EventType.TOOL_CALL_ARGS:case l.EventType.TOOL_CALL_END:case l.EventType.TOOL_CALL_RESULT:case l.EventType.STATE_SNAPSHOT:case l.EventType.STATE_DELTA:case l.EventType.CUSTOM:case l.EventType.STEP_STARTED:case l.EventType.STEP_FINISHED:case l.EventType.REASONING_START:case l.EventType.REASONING_MESSAGE_START:case l.EventType.REASONING_MESSAGE_CONTENT:case l.EventType.REASONING_MESSAGE_END:case l.EventType.REASONING_END:return[...i(e.subagentRunId??void 0),e];case l.EventType.RUN_STARTED:case l.EventType.RUN_FINISHED:case l.EventType.RUN_ERROR:case l.EventType.MESSAGES_SNAPSHOT:return[...a(),e];case l.EventType.RAW:case l.EventType.ACTIVITY_SNAPSHOT:case l.EventType.ACTIVITY_DELTA:case l.EventType.REASONING_ENCRYPTED_VALUE:case l.EventType.SUBAGENT_STARTED:return[e];case l.EventType.SUBAGENT_FINISHED:case l.EventType.SUBAGENT_ERROR:{let t=e.subagentRunId;return t==null?[e]:[...i(t),e]}case l.EventType.TEXT_MESSAGE_CHUNK:{let t=e,a=I(e,_e),o=s(`text`,t.messageId,t.subagentRunId??void 0,`TEXT_MESSAGE_CHUNK`,`text message`),c=r.get(o),u=[],d=!1,f;if(c?.kind===`text`&&(t.messageId===void 0||t.messageId===c.fields.messageId))N(`text message`,c.fields.messageId,`role`,t.role,c.fields.role),N(`text message`,c.fields.messageId,`name`,t.name,c.fields.name),f=c.fields;else{if(u.push(...i(o)),t.messageId===void 0)throw Error(`First TEXT_MESSAGE_CHUNK must have a messageId`);f={messageId:t.messageId,role:t.role===void 0?`assistant`:t.role,name:t.name,subagentRunId:t.subagentRunId},r.set(o,{kind:`text`,fields:f});let e=P({type:l.EventType.TEXT_MESSAGE_START,messageId:t.messageId,role:f.role,...t.name!==void 0&&{name:t.name},...t.subagentRunId!==void 0&&{subagentRunId:t.subagentRunId}},t);u.push(e),n?.event(`TRANSFORM`,`TEXT_MESSAGE_START`,e,{messageId:t.messageId})}if(t.delta!==void 0||t.rawEvent!==void 0){let e=t.subagentRunId===void 0?f.subagentRunId:t.subagentRunId,r=ge({...a,type:l.EventType.TEXT_MESSAGE_CONTENT,messageId:f.messageId,delta:t.delta===void 0?``:t.delta,...e!==void 0&&{subagentRunId:e}},t);u.push(r),d=!0,n?.event(`TRANSFORM`,`TEXT_MESSAGE_CONTENT`,r,{messageId:f.messageId})}if(u.length===0&&(t.metadata!==void 0||t.rawEvent!==void 0||t.subagentRunId===null||a!==void 0)){let e=t.subagentRunId===void 0?f.subagentRunId:t.subagentRunId;u.push({...a,type:l.EventType.TEXT_MESSAGE_CONTENT,messageId:f.messageId,delta:``,...t.metadata!==void 0&&{metadata:t.metadata},...t.rawEvent!==void 0&&{rawEvent:t.rawEvent},...e!==void 0&&{subagentRunId:e}}),d=!0}return L(u,a,d,`TEXT_MESSAGE_CHUNK`),u}case l.EventType.TOOL_CALL_CHUNK:{let t=e,a=I(e,ve),o=s(`tool`,t.toolCallId,t.subagentRunId??void 0,`TOOL_CALL_CHUNK`,`tool call`),c=r.get(o),u=[],d=!1,f;if(c?.kind===`tool`&&(t.toolCallId===void 0||t.toolCallId===c.fields.toolCallId))N(`tool call`,c.fields.toolCallId,`toolCallName`,t.toolCallName,c.fields.toolCallName),N(`tool call`,c.fields.toolCallId,`parentMessageId`,t.parentMessageId,c.fields.parentMessageId),f=c.fields;else{if(u.push(...i(o)),t.toolCallId===void 0)throw Error(`First TOOL_CALL_CHUNK must have a toolCallId`);if(t.toolCallName===void 0)throw Error(`First TOOL_CALL_CHUNK must have a toolCallName`);f={toolCallId:t.toolCallId,toolCallName:t.toolCallName,parentMessageId:t.parentMessageId,subagentRunId:t.subagentRunId},r.set(o,{kind:`tool`,fields:f});let e=P({type:l.EventType.TOOL_CALL_START,toolCallId:t.toolCallId,toolCallName:t.toolCallName,...t.parentMessageId!==void 0&&{parentMessageId:t.parentMessageId},...t.subagentRunId!==void 0&&{subagentRunId:t.subagentRunId}},t);u.push(e),n?.event(`TRANSFORM`,`TOOL_CALL_START`,e,{toolCallId:t.toolCallId,toolCallName:t.toolCallName})}if(t.delta!==void 0||t.rawEvent!==void 0){let e=t.subagentRunId===void 0?f.subagentRunId:t.subagentRunId,r=ge({...a,type:l.EventType.TOOL_CALL_ARGS,toolCallId:f.toolCallId,delta:t.delta===void 0?``:t.delta,...e!==void 0&&{subagentRunId:e}},t);u.push(r),d=!0,n?.event(`TRANSFORM`,`TOOL_CALL_ARGS`,r,{toolCallId:f.toolCallId})}if(u.length===0&&(t.metadata!==void 0||t.rawEvent!==void 0||t.subagentRunId===null||a!==void 0)){let e=t.subagentRunId===void 0?f.subagentRunId:t.subagentRunId;u.push({...a,type:l.EventType.TOOL_CALL_ARGS,toolCallId:f.toolCallId,delta:``,...t.metadata!==void 0&&{metadata:t.metadata},...t.rawEvent!==void 0&&{rawEvent:t.rawEvent},...e!==void 0&&{subagentRunId:e}}),d=!0}return L(u,a,d,`TOOL_CALL_CHUNK`),u}case l.EventType.REASONING_MESSAGE_CHUNK:{let t=e,a=I(e,ye),o=s(`reasoning`,t.messageId,t.subagentRunId??void 0,`REASONING_MESSAGE_CHUNK`,`reasoning message`),c=r.get(o),u=[],d=!1,f;if(c?.kind===`reasoning`&&(t.messageId===void 0||t.messageId===c.fields.messageId))f=c.fields;else{if(u.push(...i(o)),t.messageId===void 0)throw Error(`First REASONING_MESSAGE_CHUNK must have a messageId`);f={messageId:t.messageId,subagentRunId:t.subagentRunId},r.set(o,{kind:`reasoning`,fields:f});let e=P({type:l.EventType.REASONING_MESSAGE_START,messageId:t.messageId,role:`reasoning`,...t.subagentRunId!==void 0&&{subagentRunId:t.subagentRunId}},t);u.push(e),n?.event(`TRANSFORM`,`REASONING_MESSAGE_START`,e,{messageId:t.messageId})}if(t.delta!==void 0||t.rawEvent!==void 0){let e=t.subagentRunId===void 0?f.subagentRunId:t.subagentRunId,r=ge({...a,type:l.EventType.REASONING_MESSAGE_CONTENT,messageId:f.messageId,delta:t.delta===void 0?``:t.delta,...e!==void 0&&{subagentRunId:e}},t);u.push(r),d=!0,n?.event(`TRANSFORM`,`REASONING_MESSAGE_CONTENT`,r,{messageId:f.messageId})}if(u.length===0&&(t.metadata!==void 0||t.rawEvent!==void 0||t.subagentRunId===null||a!==void 0)){let e=t.subagentRunId===void 0?f.subagentRunId:t.subagentRunId;u.push({...a,type:l.EventType.REASONING_MESSAGE_CONTENT,messageId:f.messageId,delta:``,...t.metadata!==void 0&&{metadata:t.metadata},...t.rawEvent!==void 0&&{rawEvent:t.rawEvent},...e!==void 0&&{subagentRunId:e}}),d=!0}return L(u,a,d,`REASONING_MESSAGE_CHUNK`),u}}return e.type,[e]}),(0,d.finalize)(()=>{a()}))},z=Symbol(`agui.strip.drop`);function B(e){let t=e;for(;;){if(t instanceof _.z.ZodOptional||t instanceof _.z.ZodNullable||t instanceof _.z.ZodDefault||t instanceof _.z.ZodReadonly||t instanceof _.z.ZodCatch){t=t.unwrap();continue}if(t instanceof _.z.ZodPipe){t=t.def.in;continue}if(t instanceof _.z.ZodLazy){t=t.def.getter();continue}return t}}function xe(e){let t=e.def;return typeof t?.discriminator==`string`?t.discriminator:void 0}function Se(e){let t=e,n=Array.isArray(t.def?.values)?t.def.values:t.values?Array.from(t.values):void 0;return n&&n.length===1?n[0]:t.value}function Ce(e){let t=B(e);return t instanceof _.z.ZodLiteral?Se(t):void 0}function V(e,t,n,r){let i=B(t);if(i instanceof _.z.ZodObject){if(typeof e!=`object`||!e||Array.isArray(e))return e;let t=i.shape,a=e,o={},s=i.meta()?.specOpen===!0;for(let e of Object.keys(a)){let i=Object.prototype.hasOwnProperty.call(t,e)?t[e]:void 0;if(i===void 0){if(s){o[e]=a[e];continue}r.push(`${n}/${e}`);continue}let c=r.length,l=V(a[e],i,`${n}/${e}`,r);if(l===z){if(r.length=c,i.safeParse(void 0).success){r.push(`${n}/${e}`);continue}return z}o[e]=l}return o}if(i instanceof _.z.ZodArray){if(!Array.isArray(e))return e;let t=i.element,a=[];return e.forEach((e,i)=>{let o=r.length,s=V(e,t,`${n}/${i}`,r);if(s===z){r.length=o,r.push(`${n}/${i}`);return}a.push(s)}),a}if(i instanceof _.z.ZodRecord){if(typeof e!=`object`||!e||Array.isArray(e))return e;let t=i.def.valueType,a=e,o={};for(let e of Object.keys(a)){let i=r.length,s=V(a[e],t,`${n}/${e}`,r);if(s===z){r.length=i,r.push(`${n}/${e}`);continue}o[e]=s}return o}if(i instanceof _.z.ZodUnion){let t=i.options,a=xe(i);if(a!==void 0){if(typeof e!=`object`||!e||Array.isArray(e))return e;let i=e[a];for(let o of t){let t=B(o);if(!(t instanceof _.z.ZodObject))continue;let s=t.shape;if(Ce(s[a])===i)return V(e,o,n,r)}return z}let o=t.filter(e=>B(e)instanceof _.z.ZodObject),s=typeof e==`object`&&!!e&&!Array.isArray(e);if(o.length>1&&s)return e;for(let i of t){let t=B(i);if(t instanceof _.z.ZodArray&&Array.isArray(e)||t instanceof _.z.ZodObject&&s)return V(e,i,n,r)}return e}return e}function we(e,t){let n=[],r=V(e,t,``,n);if(r===z)throw Error(`Internal error: the stripper found the whole value unrecognisable, which the schemas are not supposed to allow — schema/stripper mismatch.`);return{value:r,stripped:n}}const Te=new Set(Object.values(l.EventType));function Ee(e){return Te.has(e.type)}const De=new Map(g.EventSchema.options.map(e=>{let t=e.shape;return[String(Se(t.type)),e]})),Oe=()=>typeof process<`u`&&process.env!==void 0&&!!process.env.SUPPRESS_TRANSFORMATION_WARNINGS;function H(e){Oe()||console.warn(`[ag-ui][enforce] ${e}`)}const U=e=>t=>{let n=w(e);return t.pipe((0,f.mergeMap)(e=>{if(!Ee(e))return H(`Dropping unrecognised event '${String(e.type)}': no middleware translated it and the protocol does not describe it.`),n?.event(`ENFORCE`,`Unrecognised event dropped:`,e,{type:e.type}),d.EMPTY;let t=De.get(e.type);if(t===void 0)throw Error(`No validator for recognised event type '${String(e.type)}'`);let{value:r,stripped:i}=we(e,t);for(let t of i)H(`Removed unrecognised material at '${t}' on ${String(e.type)}. Nothing handled it; see the repo-root DEPRECATIONS.md if it is a retired shape.`);return(0,d.of)(t.parse(r))}))};function ke(e){let{value:t,stripped:n}=we((0,l.omitOptionalNulls)(e,`RunAgentInput`),g.RunAgentInputSchema);for(let e of n)H(`Removed unrecognised material at '${e}' from the outgoing input.`);return g.RunAgentInputSchema.parse(t)}var W=class{runNext(e,t){return t.run(e).pipe(R(!1))}runNextWithState(e,t){let n=v(e.messages||[]),r=v(e.state===void 0?{}:e.state),i=new d.ReplaySubject;return O(e,i,t,[]).subscribe({next:e=>{e.messages!==void 0&&(n=e.messages),e.state!==void 0&&(r=e.state)},error:()=>{}}),this.runNext(e,t).pipe((0,f.concatMap)(async e=>(i.next(e),await new Promise(e=>setTimeout(e,0)),{event:e,messages:v(n),state:v(r)})))}},Ae=class extends W{constructor(e){super(),this.fn=e}run(e,t){return this.fn(e,t)}};function je(e){return e.startsWith(`image/`)?`image`:e.startsWith(`audio/`)?`audio`:e.startsWith(`video/`)?`video`:`document`}function Me(e){return typeof e==`object`&&!!e&&`type`in e&&e.type===`binary`&&`mimeType`in e&&typeof e.mimeType==`string`}function Ne(e){let t=je(e.mimeType);return e.data?{type:t,source:{type:`data`,value:e.data,mimeType:e.mimeType},...e.filename?{metadata:{filename:e.filename}}:{}}:e.url?{type:t,source:{type:`url`,value:e.url,mimeType:e.mimeType},...e.filename?{metadata:{filename:e.filename}}:{}}:((typeof process>`u`||process.env===void 0||!process.env.SUPPRESS_TRANSFORMATION_WARNINGS)&&console.warn(`[ag-ui][compat] A binary content part carries only an id ('${e.id??``}') and cannot be converted to a modern media part; a 1.0 peer will not accept it. Provide data or a url. See the repo-root DEPRECATIONS.md.`),e)}function Pe(e,t,n){if(typeof e!=`object`||!e||!(`type`in e)||e.type!==t.type||!(`source`in e))return!1;let r=e.source;return typeof r!=`object`||!r||!(`type`in r)||r.type!==t.source.type||!(`value`in r)||r.value!==t.source.value||!(`mimeType`in r)||r.mimeType!==t.source.mimeType?!1:!n||`metadata`in e&&typeof e.metadata==`object`&&e.metadata!==null&&`filename`in e.metadata&&e.metadata.filename===n}function Fe(e){let t=e.content;if(!Array.isArray(t))return e;let n=t.flatMap(e=>{if(Me(e)){let n=Ne(e);return n.type!==`binary`&&t.some(t=>Pe(t,n,e.filename))?[]:[n]}return[e]});return{...e,content:n}}const G=`THINKING_START`,K=`THINKING_END`,Ie=`THINKING_TEXT_MESSAGE_START`,q=`THINKING_TEXT_MESSAGE_CONTENT`,J=`THINKING_TEXT_MESSAGE_END`;function Le(e,t){typeof process<`u`&&process.env!==void 0&&process.env.SUPPRESS_TRANSFORMATION_WARNINGS||console.warn(`[ag-ui][compat] Converting deprecated ${e} to ${t}. The old shape leaves the protocol after its shim window — see the repo-root DEPRECATIONS.md. Set SUPPRESS_TRANSFORMATION_WARNINGS=true to silence.`)}function Re(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Y(e,t,n){if(!Re(e)||e[t]!==null)return e;Le(`${n}.${t}: null`,`an absent field`);let{[t]:r,...i}=e;return i}function X(e,t,n){if(!Re(e)||!Array.isArray(e[t]))return e;let r=e[t],i=r.map(n);return i.some((e,t)=>e!==r[t])?{...e,[t]:i}:e}function ze(e){return X(e,`content`,e=>{if(!Re(e))return e;switch(e.type){case`image`:case`audio`:case`video`:case`document`:return Y(e,`metadata`,`${e.type} input content`);default:return e}})}function Be(e){let t=Y(e,`forwardedProps`,`RunAgentInput`);return t=X(t,`tools`,e=>Y(e,`parameters`,`Tool`)),t=X(t,`resume`,e=>Y(e,`payload`,`ResumeEntry`)),X(t,`messages`,ze)}var Z=class extends W{constructor(...e){super(...e),this.currentReasoningId=null,this.currentMessageId=null}warn(e,t){Le(e,t)}mintedContinuationId(e,t){if(t!==null)return t;let n=y();return this.warnAside(`Minting a messageId ('${n}') for ${e}: no THINKING opener preceded it, so there was no id to continue. The id is this client's invention, not the producer's, and verification will reject the translated event for naming something nothing opened.`),n}warnAside(e){typeof process<`u`&&process.env!==void 0&&process.env.SUPPRESS_TRANSFORMATION_WARNINGS||console.warn(`[ag-ui][compat] ${e} Set SUPPRESS_TRANSFORMATION_WARNINGS=true to silence.`)}run(e,t){return this.currentReasoningId=null,this.currentMessageId=null,e.messages=e.messages.map(Fe),t.run(e).pipe((0,f.map)(e=>this.transformEvent(e)))}transformEvent(e){if(e.rawEvent===null){this.warn(`${e.type}.rawEvent: null`,`an absent field`);let{rawEvent:t,...n}=e;e=n}if((e.type===l.EventType.RUN_FINISHED||e.type===l.EventType.SUBAGENT_FINISHED)&&e.result===null){this.warn(`${e.type}.result: null`,`an absent field`);let{result:t,...n}=e;e=n}switch(e.type){case G:{this.currentReasoningId=y();let{title:t,...n}=e;return this.warn(G,l.EventType.REASONING_START),t!==void 0&&this.warnAside(`Dropping ${G}.title ${JSON.stringify(t)}: ${l.EventType.REASONING_START} has no title field, so the span's label cannot be carried and nothing downstream can recover it.`),{...n,type:l.EventType.REASONING_START,messageId:this.currentReasoningId}}case Ie:return this.currentMessageId=y(),this.warn(Ie,l.EventType.REASONING_MESSAGE_START),{...e,type:l.EventType.REASONING_MESSAGE_START,messageId:this.currentMessageId,role:`reasoning`};case q:{let{delta:t,...n}=e;return this.warn(q,l.EventType.REASONING_MESSAGE_CONTENT),{...n,type:l.EventType.REASONING_MESSAGE_CONTENT,messageId:this.mintedContinuationId(q,this.currentMessageId),delta:t}}case J:{let t=this.mintedContinuationId(J,this.currentMessageId);return this.currentMessageId=null,this.warn(J,l.EventType.REASONING_MESSAGE_END),{...e,type:l.EventType.REASONING_MESSAGE_END,messageId:t}}case K:{let t=this.mintedContinuationId(K,this.currentReasoningId);return this.currentReasoningId=null,this.warn(K,l.EventType.REASONING_END),{...e,type:l.EventType.REASONING_END,messageId:t}}case l.EventType.TOOL_CALL_START:case l.EventType.TOOL_CALL_CHUNK:{let t=e;if(t.parentMessageId===null){this.warn(`${e.type}.parentMessageId: null`,`an absent field`);let{parentMessageId:n,...r}=t;return r}return e}case l.EventType.RUN_FINISHED:{let t=e;if(t.outcome===null){this.warn(`RUN_FINISHED.outcome: null`,`an absent field`);let{outcome:e,...n}=t;return n}return e}case l.EventType.MESSAGES_SNAPSHOT:{let t=e;return Array.isArray(t.messages)?{...t,messages:t.messages.map(e=>this.upgradeInboundMessage(e))}:e}case l.EventType.RUN_STARTED:{let t=Be(e.input),n=t===e.input?e:{...e,input:t},r=n;return!r.input||!Array.isArray(r.input.messages)?n:{...r,input:{...r.input,messages:r.input.messages.map(e=>this.upgradeInboundMessage(e))}}}default:return e}}upgradeInboundMessage(e){e=ze(e);let t=e.content;return!Array.isArray(t)||!t.some(e=>typeof e==`object`&&!!e&&e.type===`binary`)?e:(this.warn(`binary input content`,`the modern media content parts`),Fe(e))}};const Ve=()=>e=>(0,d.defer)(()=>{let t=new Z;return e.pipe((0,f.map)(e=>t.transformEvent(e)))});function He(e){return e.outcome}function Ue(e,t=new Date){return e.expiresAt===void 0?!1:new Date(e.expiresAt)<=t}function We(e,t){let n=new Set(e.map(e=>e.id)),r=new Set(Object.keys(t)),i=[...n].filter(e=>!r.has(e));if(i.length>0)throw Error(`buildResumeArray: missing responses for open interrupts: ${i.join(`, `)}`);let a=[...r].filter(e=>!n.has(e));if(a.length>0)throw Error(`buildResumeArray: responses reference unknown interrupt ids: ${a.join(`, `)}`);return e.map(e=>{let n=t[e.id],r={interruptId:e.id,status:n.status};return n.status===`resolved`&&n.payload!==void 0&&(r.payload=n.payload),n.metadata!==void 0&&(r.metadata=n.metadata),r})}var Ge=class extends W{constructor(e){if(super(),e.allowedToolCalls&&e.disallowedToolCalls)throw Error(`Cannot specify both allowedToolCalls and disallowedToolCalls`);if(!e.allowedToolCalls&&!e.disallowedToolCalls)throw Error(`Must specify either allowedToolCalls or disallowedToolCalls`);e.allowedToolCalls?this.allowedTools=new Set(e.allowedToolCalls):e.disallowedToolCalls&&(this.disallowedTools=new Set(e.disallowedToolCalls))}run(e,t){return(0,d.defer)(()=>{let n=new Set;return this.runNext(e,t).pipe((0,f.filter)(e=>{if(e.type===l.EventType.RUN_STARTED)return n.clear(),!0;if(e.type===l.EventType.TOOL_CALL_START){let t=e;return this.shouldFilterTool(t.toolCallName)?(n.add(t.toolCallId),!1):!0}if(e.type===l.EventType.TOOL_CALL_ARGS){let t=e;return!n.has(t.toolCallId)}if(e.type===l.EventType.TOOL_CALL_END){let t=e;return!n.has(t.toolCallId)}if(e.type===l.EventType.TOOL_CALL_RESULT){let t=e;return n.has(t.toolCallId)?(n.delete(t.toolCallId),!1):!0}return!0}))})}shouldFilterTool(e){return this.allowedTools?!this.allowedTools.has(e):this.disallowedTools?this.disallowedTools.has(e):!1}};function Ke(){return typeof process<`u`&&process.env!==void 0&&!!process.env.SUPPRESS_TRANSFORMATION_WARNINGS}function qe(e){Ke()||console.warn(`[ag-ui][compat] Flattening message content for a <=0.0.39 peer DROPS non-text parts (${e.join(`, `)}). The peer cannot receive them; upgrade it to keep media content. See the repo-root DEPRECATIONS.md.`)}function Je(e){Ke()||console.warn(`[ag-ui][compat] Not flattening message content for a <=0.0.39 peer: ${e} content part(s) claim type "text" but carry a malformed 'text' value. That is a defect in the message, not media the peer cannot represent, and a downgrade must not repair it — the content is passed on unchanged so the outgoing enforcement boundary reports it. See the repo-root DEPRECATIONS.md.`)}function Ye(e){let t=e.content;if(Array.isArray(t)){let n=e=>typeof e==`object`&&!!e&&`type`in e&&e.type===`text`,r=e=>n(e)&&typeof e.text==`string`,i=t.filter(e=>n(e)&&!r(e));if(i.length>0)return Je(i.length),e;let a=t.filter(e=>!r(e)).map(e=>typeof e==`object`&&e&&`type`in e?String(e.type):typeof e);a.length>0&&qe(a);let o=t.filter(r).map(e=>e.text).join(``);return{...e,content:o}}return typeof t==`string`?e:t===void 0?{...e,content:``}:e}var Xe=class extends W{run(e,t){let{parentRunId:n,...r}=e,i={...r,messages:r.messages.map(Ye)};return this.runNext(i,t)}};const Ze=`THINKING_START`,Qe=`THINKING_END`,$e=`THINKING_TEXT_MESSAGE_START`,et=`THINKING_TEXT_MESSAGE_CONTENT`,tt=`THINKING_TEXT_MESSAGE_END`;var nt=class extends W{constructor(...e){super(...e),this.currentReasoningId=null,this.currentMessageId=null}warnAboutTransformation(e,t){typeof process<`u`&&process.env!==void 0&&process.env.SUPPRESS_TRANSFORMATION_WARNINGS||console.warn(`AG-UI is converting ${e} to ${t}. To remove this warning, upgrade your AG-UI integration package (e.g. @ag-ui/langgraph). To surpress it, set SUPPRESS_TRANSFORMATION_WARNINGS=true in your .env file.`)}run(e,t){return this.currentReasoningId=null,this.currentMessageId=null,this.runNext(e,t).pipe((0,f.map)(e=>this.transformEvent(e)))}transformEvent(e){switch(e.type){case Ze:{this.currentReasoningId=y();let{title:t,...n}=e;return this.warnAboutTransformation(Ze,l.EventType.REASONING_START),{...n,type:l.EventType.REASONING_START,messageId:this.currentReasoningId}}case $e:return this.currentMessageId=y(),this.warnAboutTransformation($e,l.EventType.REASONING_MESSAGE_START),{...e,type:l.EventType.REASONING_MESSAGE_START,messageId:this.currentMessageId,role:`reasoning`};case et:{let{delta:t,...n}=e;return this.warnAboutTransformation(et,l.EventType.REASONING_MESSAGE_CONTENT),{...n,type:l.EventType.REASONING_MESSAGE_CONTENT,messageId:this.currentMessageId??y(),delta:t}}case tt:{let t=this.currentMessageId??y();return this.warnAboutTransformation(tt,l.EventType.REASONING_MESSAGE_END),{...e,type:l.EventType.REASONING_MESSAGE_END,messageId:t}}case Qe:{let t=this.currentReasoningId??y();return this.warnAboutTransformation(Qe,l.EventType.REASONING_END),{...e,type:l.EventType.REASONING_END,messageId:t}}default:return e}}};const rt=`SUBAGENT_STARTED`,it=`SUBAGENT_FINISHED`,at=`SUBAGENT_ERROR`;function Q(e){if(e&&typeof e==`object`&&`subagentRunId`in e){let{subagentRunId:t,...n}=e;return n}return e}function ot(e){return e.map(e=>Q(e))}var st=class extends W{warnDroppedLifecycleEvent(e){typeof process<`u`&&process.env!==void 0&&process.env.SUPPRESS_TRANSFORMATION_WARNINGS||console.warn(`AG-UI is dropping ${e} because the target agent predates subagent support. To remove this warning, upgrade your AG-UI integration package. To suppress it, set SUPPRESS_TRANSFORMATION_WARNINGS=true in your .env file.`)}run(e,t){let n={...e,messages:(e.messages??[]).map(e=>Q(e))};return this.runNext(n,t).pipe((0,f.tap)(e=>{let t=e.type;(t===rt||t===it||t===at)&&this.warnDroppedLifecycleEvent(t)}),(0,f.filter)(e=>{let t=e.type;return t!==rt&&t!==it&&t!==at}),(0,f.map)(e=>{let t=Q(e);if(t.type===l.EventType.MESSAGES_SNAPSHOT){let e=t;if(Array.isArray(e.messages))return{...e,messages:ot(e.messages)}}if(t.type===l.EventType.RUN_FINISHED){let e=t;if(e.outcome&&Array.isArray(e.outcome.interrupts))return{...e,outcome:{...e.outcome,interrupts:e.outcome.interrupts.map(e=>Q(e))}}}if(t.type===l.EventType.RUN_STARTED){let e=t;if(e.input&&Array.isArray(e.input.messages))return{...e,input:{...e.input,messages:ot(e.input.messages)}}}return t}))}},$=`1.0.0-canary.1789569879.0`;let ct=!1;const lt=(e,t)=>/^\d+\.\d+$/.test(e)?(0,h.compareVersions)(e,t)>0?`newer`:`not-newer`:`uninterpretable`,ut=e=>{let t=e.protocolVersion;if(!(t===void 0||t===`1.0`))switch(lt(t,`1.0`)){case`uninterpretable`:console.warn(`[ag-ui] The producer declared protocol version '${t}', which this client cannot interpret.`);return;case`newer`:console.warn(`[ag-ui] The producer speaks protocol ${t}; this client speaks 1.0. Unrecognised material will be stripped with warnings.`);return;case`not-newer`:return}};var dt=class e{resolvePeerCeiling(t){if(this.resolvingPeerCeiling)return $;let n=Object.getOwnPropertyDescriptor(this,`maxVersion`),r=Object.getOwnPropertyDescriptor(this,`maxProtocolVersion`),i=Object.getPrototypeOf(this);for(;i&&i!==e.prototype;)n??=Object.getOwnPropertyDescriptor(i,`maxVersion`),r??=Object.getOwnPropertyDescriptor(i,`maxProtocolVersion`),i=Object.getPrototypeOf(i);if(t===`maxVersion`&&n)return $;let a=t===`maxProtocolVersion`?n:r;if(!a)return $;this.resolvingPeerCeiling=!0;try{return a.get?a.get.call(this):a.value}finally{this.resolvingPeerCeiling=!1}}get maxProtocolVersion(){return this.resolvePeerCeiling(`maxProtocolVersion`)}get maxVersion(){return!this.resolvingPeerCeiling&&!ct&&(ct=!0,console.warn(`[ag-ui] AbstractAgent.maxVersion is deprecated — use maxProtocolVersion. Same value; the new name says whose version it is and that it is a ceiling.`)),this.resolvePeerCeiling(`maxVersion`)}get debug(){return this._debug}set debug(e){this._debug=C(e),this._debugLogger=E(this._debug)}get debugLogger(){return this._debugLogger}set debugLogger(e){typeof e==`boolean`?this._debugLogger=e?E(C(!0)):void 0:this._debugLogger=e}resolvedCeilingDuringConstruction(){let e=this.maxProtocolVersion;if(typeof e!=`string`||!(0,h.validate)(e))throw new l.AGUIError(`maxProtocolVersion resolved to ${JSON.stringify(e)} during construction, which is not a version this client can compare. A ceiling read from an instance field is not available yet — return a literal from the getter.`);return e}constructor({agentId:e,description:t,threadId:n,initialMessages:r,initialState:i,debug:a}={}){this.subscribers=[],this.isRunning=!1,this.pendingInterrupts=[],this.middlewares=[],this.resolvingPeerCeiling=!1,this.agentId=e,this.description=t??``,this.threadId=n??(0,c.v4)(),this.messages=v(r??[]),this.state=v(i??{}),this._debug=C(a),this._debugLogger=E(this._debug);let o=this.resolvedCeilingDuringConstruction();(0,h.compareVersions)(o,`0.0.39`)<=0&&this.middlewares.unshift(new Xe),(0,h.compareVersions)(o,`0.0.45`)<=0&&this.middlewares.unshift(new nt),(0,h.compareVersions)(o,`0.0.57`)<=0&&this.middlewares.unshift(new st)}subscribe(e){return this.subscribers.push(e),{unsubscribe:()=>{this.subscribers=this.subscribers.filter(t=>t!==e)}}}use(...e){let t=e.map(e=>typeof e==`function`?new Ae(e):e);return this.middlewares.push(...t),this}async runAgent(e,t){try{this.isRunning=!0,this.agentId=this.agentId??(0,c.v4)();let n=this.prepareRunAgentInput(e);this.debugLogger?.lifecycle(`LIFECYCLE`,`Run started:`,{agentId:this.agentId,threadId:this.threadId});let r,i=new Set(this.messages.map(e=>e.id)),a=[{onRunStartedEvent:({event:e})=>ut(e),onRunFinishedEvent:e=>{e.outcome===`success`&&(r=e.result)}},...this.subscribers,t??{}];await this.onInitialize(n,a),this.activeRunDetach$=new d.Subject;let o;this.activeRunCompletionPromise=new Promise(e=>{o=e}),await(0,d.lastValueFrom)((0,d.pipe)(()=>[...this.middlewares,new Z].reduceRight((e,t)=>({run:n=>t.run(n,e),get messages(){return e.messages},get state(){return e.state}}),this).run(n),U(this.debugLogger),R(this.debugLogger),k(this.debugLogger),e=>e.pipe((0,f.takeUntil)(this.activeRunDetach$)),e=>this.apply(n,e,a),e=>this.processApplyEvents(n,e,a),(0,f.catchError)(e=>(this.debugLogger?.lifecycle(`LIFECYCLE`,`Run errored:`,{agentId:this.agentId,error:e instanceof Error?e.message:String(e)}),this.isRunning=!1,this.onError(n,e,a))),(0,f.finalize)(()=>{this.debugLogger?.lifecycle(`LIFECYCLE`,`Run finished:`,{agentId:this.agentId,threadId:this.threadId}),this.isRunning=!1,this.onFinalize(n,a),o?.(),o=void 0,this.activeRunCompletionPromise=void 0,this.activeRunDetach$=void 0}))((0,d.of)(null)));let s=v(this.messages).filter(e=>!i.has(e.id));return{result:r,newMessages:s}}finally{this.isRunning=!1}}connect(e){throw new l.AGUIConnectNotImplementedError}async connectAgent(e,t){try{this.isRunning=!0,this.agentId=this.agentId??(0,c.v4)();let n=this.prepareRunAgentInput(e),r,i=new Set(this.messages.map(e=>e.id)),a=[{onRunStartedEvent:({event:e})=>ut(e),onRunFinishedEvent:e=>{e.outcome===`success`&&(r=e.result)}},...this.subscribers,t??{}];await this.onInitialize(n,a),this.activeRunDetach$=new d.Subject;let o;this.activeRunCompletionPromise=new Promise(e=>{o=e}),await(0,d.lastValueFrom)((0,d.pipe)(()=>(0,d.defer)(()=>this.connect(n)),e=>U(this.debugLogger)(Ve()(e)),R(this.debugLogger),k(this.debugLogger),e=>e.pipe((0,f.takeUntil)(this.activeRunDetach$)),e=>this.apply(n,e,a),e=>this.processApplyEvents(n,e,a),(0,f.catchError)(e=>(this.isRunning=!1,e instanceof l.AGUIConnectNotImplementedError?d.EMPTY:this.onError(n,e,a))),(0,f.finalize)(()=>{this.isRunning=!1,this.onFinalize(n,a),o?.(),o=void 0,this.activeRunCompletionPromise=void 0,this.activeRunDetach$=void 0}))((0,d.of)(null)),{defaultValue:void 0});let s=v(this.messages).filter(e=>!i.has(e.id));return{result:r,newMessages:s}}finally{this.isRunning=!1}}abortRun(){}async detachActiveRun(){if(!this.activeRunDetach$)return;let e=this.activeRunCompletionPromise??Promise.resolve();this.activeRunDetach$.next(),this.activeRunDetach$?.complete(),await e}apply(e,t,n){return O(e,t,this,n,this.debugLogger)}processApplyEvents(e,t,n){return t.pipe((0,f.tap)(t=>{t.messages&&(this.messages=t.messages,n.forEach(t=>{t.onMessagesChanged?.({messages:this.messages,state:this.state,agent:this,input:e})})),t.state!==void 0&&(this.state=t.state,n.forEach(t=>{t.onStateChanged?.({state:this.state,messages:this.messages,agent:this,input:e})}))}))}prepareRunAgentInput(e){let t=v(this.messages);for(let e of t)e.subagentRunId===null&&delete e.subagentRunId;let n=t.filter(e=>e.role!==`activity`);return{threadId:this.threadId,runId:e?.runId||(0,c.v4)(),...(0,h.compareVersions)(this.maxProtocolVersion,$)>=0&&{protocolVersion:`1.0`},tools:v(e?.tools??[]),context:v(e?.context??[]),forwardedProps:v(e?.forwardedProps??{}),state:v(this.state),messages:n,...e?.resume===void 0?{}:{resume:v(e.resume)}}}async onInitialize(e,t){if(this.pendingInterrupts.length>0){let t=new Set((e.resume??[]).map(e=>e.interruptId)),n=this.pendingInterrupts.map(e=>e.id).filter(e=>!t.has(e));if(n.length>0)throw new l.AGUIError(`Thread has ${n.length} pending interrupt(s) not addressed by resume: ${n.join(`, `)}`);for(let t of this.pendingInterrupts)if(Ue(t)&&(e.resume??[]).find(e=>e.interruptId===t.id)?.status!==`cancelled`)throw new l.AGUIError(`Interrupt ${t.id} expired at ${t.expiresAt} and can no longer be answered. Cancel it to continue the thread.`)}let n=await S(t,this.messages,this.state,(t,n,r)=>t.onRunInitialized?.({messages:n,state:r,agent:this,input:e}));if(n.messages!==void 0||n.state!==void 0){if(n.messages){this.messages=n.messages;for(let e of n.messages)e.subagentRunId===null&&delete e.subagentRunId;e.messages=n.messages.filter(e=>e.role!==`activity`),t.forEach(t=>{t.onMessagesChanged?.({messages:this.messages,state:this.state,agent:this,input:e})})}n.state!==void 0&&(this.state=n.state,e.state=n.state,t.forEach(t=>{t.onStateChanged?.({state:this.state,messages:this.messages,agent:this,input:e})}))}}onError(e,t,n){return(0,d.from)(S(n,this.messages,this.state,(n,r,i)=>n.onRunFailed?.({error:t,messages:r,state:i,agent:this,input:e}))).pipe((0,f.map)(r=>{let i=r;if((i.messages!==void 0||i.state!==void 0)&&(i.messages!==void 0&&(this.messages=i.messages,n.forEach(t=>{t.onMessagesChanged?.({messages:this.messages,state:this.state,agent:this,input:e})})),i.state!==void 0&&(this.state=i.state,n.forEach(t=>{t.onStateChanged?.({state:this.state,messages:this.messages,agent:this,input:e})}))),i.stopPropagation!==!0){let e=String(t);if(!(t.name===`AbortError`||t.message===`Fetch is aborted`||t.message===`signal is aborted without reason`||t.message===`component unmounted`||e===`component unmounted`))throw console.error(`Agent execution failed:`,t),t}return{}}))}async onFinalize(e,t){let n=await S(t,this.messages,this.state,(t,n,r)=>t.onRunFinalized?.({messages:n,state:r,agent:this,input:e}));(n.messages!==void 0||n.state!==void 0)&&(n.messages!==void 0&&(this.messages=n.messages,t.forEach(t=>{t.onMessagesChanged?.({messages:this.messages,state:this.state,agent:this,input:e})})),n.state!==void 0&&(this.state=n.state,t.forEach(t=>{t.onStateChanged?.({state:this.state,messages:this.messages,agent:this,input:e})})))}clone(){let e=Object.create(Object.getPrototypeOf(this));return e.agentId=this.agentId,e.description=this.description,e.threadId=this.threadId,e.messages=v(this.messages),e.state=v(this.state),e._debug=this._debug,e._debugLogger=this._debugLogger,e.isRunning=this.isRunning,e.subscribers=[...this.subscribers],e.middlewares=[...this.middlewares],e.pendingInterrupts=v(this.pendingInterrupts),e}addMessage(e){this.messages.push(e),(async()=>{for(let t of this.subscribers)await t.onNewMessage?.({message:e,messages:this.messages,state:this.state,agent:this});if(e.role===`assistant`&&e.toolCalls)for(let t of e.toolCalls)for(let e of this.subscribers)await e.onNewToolCall?.({toolCall:t,messages:this.messages,state:this.state,agent:this});for(let e of this.subscribers)await e.onMessagesChanged?.({messages:this.messages,state:this.state,agent:this})})()}addMessages(e){this.messages.push(...e),(async()=>{for(let t of e){for(let e of this.subscribers)await e.onNewMessage?.({message:t,messages:this.messages,state:this.state,agent:this});if(t.role===`assistant`&&t.toolCalls)for(let e of t.toolCalls)for(let t of this.subscribers)await t.onNewToolCall?.({toolCall:e,messages:this.messages,state:this.state,agent:this})}for(let e of this.subscribers)await e.onMessagesChanged?.({messages:this.messages,state:this.state,agent:this})})()}setMessages(e){this.messages=v(e),(async()=>{for(let e of this.subscribers)await e.onMessagesChanged?.({messages:this.messages,state:this.state,agent:this})})()}setState(e){this.state=v(e),(async()=>{for(let e of this.subscribers)await e.onStateChanged?.({messages:this.messages,state:this.state,agent:this})})()}legacy_to_be_removed_runAgentBridged(e){this.agentId=this.agentId??(0,c.v4)();let t=this.prepareRunAgentInput(e);return[...this.middlewares,new Z].reduceRight((e,t)=>({run:n=>t.run(n,e),get messages(){return e.messages},get state(){return e.state}}),this).run(t).pipe(U(this.debugLogger),R(this.debugLogger),k(this.debugLogger),fe(this.threadId,t.runId,this.agentId),e=>e.pipe((0,f.map)(e=>(this.debugLogger?.event(`LEGACY`,`Event:`,e,{type:e.type}),e))))}};function ft(e){if(!Array.isArray(e.messages))return e;let t=!1,n=e.messages.map(e=>{if(e.subagentRunId===null){t=!0;let n={...e};return delete n.subagentRunId,n}return e});return t?{...e,messages:n}:e}var pt=class extends dt{requestInit(e){return{method:`POST`,headers:{...this.headers,"Content-Type":`application/json`,Accept:`text/event-stream`},body:JSON.stringify(ft(e)),signal:this.abortController.signal}}runAgent(e,t){return this.abortController=e?.abortController??new AbortController,super.runAgent(e,t)}abortRun(){this.abortController.abort(),super.abortRun()}constructor(e){super(e),this.abortController=new AbortController,this.url=e.url,this.headers=v(e.headers??{}),this.fetch=e.fetch??((e,t)=>fetch(e,t))}run(e){return le(re(()=>this.fetch(this.url,this.requestInit(ke(e)))),this.debugLogger)}clone(){let e=super.clone();e.url=this.url,e.headers=v(this.headers??{}),e.fetch=this.fetch;let t=new AbortController,n=this.abortController.signal;return n.aborted&&t.abort(n.reason),e.abortController=t,e}};function mt(e,t){if(e===void 0)return t;let n=(0,l.mergeMetadata)(e.metadata,t.metadata);return n===void 0?t:{...t,metadata:n}}function ht(e,t){let{metadata:n,...r}=t,i=e?.metadata;return i===void 0?r:{...r,metadata:i}}function gt(e){let t;for(let n of e)t=(0,l.mergeMetadata)(t,n.metadata);return t}function _t(e){let t=[],n=new Map,r=new Map,i=[];for(let a of e)if(a.type===l.EventType.TEXT_MESSAGE_START){let e=a,t=e.messageId;n.has(t)||n.set(t,{contents:[],otherEvents:[]});let r=n.get(t);r.contents.length===0?r.start=mt(r.start,e):(r.start=ht(r.start,e),r.postStartMetadata=(0,l.mergeMetadata)(r.postStartMetadata,e.metadata))}else if(a.type===l.EventType.TEXT_MESSAGE_CONTENT){let e=a,t=e.messageId;n.has(t)||n.set(t,{contents:[],otherEvents:[]});let r=n.get(t);r.contents.push(e),r.postStartMetadata=(0,l.mergeMetadata)(r.postStartMetadata,e.metadata)}else if(a.type===l.EventType.TEXT_MESSAGE_END){let e=a,r=e.messageId;n.has(r)||n.set(r,{contents:[],otherEvents:[]});let i=n.get(r);i.end=e,vt(r,i,t),n.delete(r)}else if(a.type===l.EventType.TOOL_CALL_START){let e=a,t=e.toolCallId;r.has(t)||r.set(t,{args:[],otherEvents:[]});let n=r.get(t);n.args.length===0?n.start=mt(n.start,e):(n.start=ht(n.start,e),n.postStartMetadata=(0,l.mergeMetadata)(n.postStartMetadata,e.metadata))}else if(a.type===l.EventType.TOOL_CALL_ARGS){let e=a,t=e.toolCallId;r.has(t)||r.set(t,{args:[],otherEvents:[]});let n=r.get(t);n.args.push(e),n.postStartMetadata=(0,l.mergeMetadata)(n.postStartMetadata,e.metadata)}else if(a.type===l.EventType.TOOL_CALL_END){let e=a,n=e.toolCallId;r.has(n)||r.set(n,{args:[],otherEvents:[]});let i=r.get(n);i.end=e,yt(n,i,t),r.delete(n)}else if(a.type===l.EventType.RUN_STARTED)xt(i,t),i=[],t.push(a);else if(a.type===l.EventType.RUN_FINISHED||a.type===l.EventType.RUN_ERROR)xt(i,t),i=[],t.push(a);else if(a.type===l.EventType.STATE_SNAPSHOT||a.type===l.EventType.STATE_DELTA)i.push(a);else{let e=!1;for(let[,t]of n)if(t.start&&!t.end){t.otherEvents.push(a),e=!0;break}if(!e){for(let[,t]of r)if(t.start&&!t.end){t.otherEvents.push(a),e=!0;break}}e||t.push(a)}for(let[e,r]of n)vt(e,r,t);for(let[e,n]of r)yt(e,n,t);return xt(i,t),t}function vt(e,t,n){if(t.start&&n.push(t.start),t.contents.length>0){let r=t.contents.map(e=>e.delta).join(``),i=t.postStartMetadata,a={type:l.EventType.TEXT_MESSAGE_CONTENT,messageId:e,delta:r,...i!==void 0&&{metadata:i}};n.push(a)}t.end&&n.push(t.end);for(let e of t.otherEvents)n.push(e)}function yt(e,t,n){if(t.start&&n.push(t.start),t.args.length>0){let r=t.args.map(e=>e.delta).join(``),i=t.postStartMetadata,a={type:l.EventType.TOOL_CALL_ARGS,toolCallId:e,delta:r,...i!==void 0&&{metadata:i}};n.push(a)}t.end&&n.push(t.end);for(let e of t.otherEvents)n.push(e)}const bt=e=>{typeof process<`u`&&process.env!==void 0&&process.env.SUPPRESS_TRANSFORMATION_WARNINGS||console.warn(e)};function xt(e,t){if(e.length===0)return;let n=-1;for(let t=e.length-1;t>=0;t--)if(e[t].type===l.EventType.STATE_SNAPSHOT){n=t;break}if(n===-1){t.push(...e);return}let r={};for(let t of e.slice(n))if(t.type===l.EventType.STATE_SNAPSHOT)r=v(t.snapshot);else try{r=u.default.applyPatch(r,v(t.delta),!0,!1).newDocument}catch(e){let n=e instanceof Error?e.message:String(e);bt(`[ag-ui][compact] Failed to apply state patch while compacting:\nCurrent state: ${JSON.stringify(r,null,2)}\nPatch operations: ${JSON.stringify(t.delta,null,2)}\nError: ${n}`)}let i=gt(e),a={type:l.EventType.STATE_SNAPSHOT,snapshot:r,...i!==void 0&&{metadata:i}};t.push(a)}exports.AbstractAgent=dt,exports.BackwardCompatibility_0_0_39=Xe,exports.BackwardCompatibility_0_0_45=nt,exports.BackwardCompatibility_0_0_57=st,exports.CompatibilityBoundary=Z,exports.DebugLogger=T,exports.FilterToolCallsMiddleware=Ge,exports.FunctionMiddleware=Ae,exports.HttpAgent=pt,exports.Middleware=W,exports.buildResumeArray=We,exports.compactEvents=_t,exports.convertToLegacyEvents=fe,exports.createDebugLogger=E,exports.defaultApplyEvents=O,exports.enforceEvents=U,exports.enforceOutgoingInput=ke,exports.getRunOutcome=He,exports.isInterruptExpired=Ue,exports.isRecognizedEvent=Ee,exports.parseProtoStream=ce,exports.parseSSEStream=ae,exports.randomUUID=y,exports.resolveAgentDebugConfig=C,exports.resolveDebugLogger=w,exports.runHttpRequest=re,exports.structuredClone_=v,exports.transformChunks=R,exports.transformHttpEventStream=le,exports.verifyEvents=k,Object.keys(l).forEach(function(e){e!==`default`&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return l[e]}})});
3
+ `),t=JSON.parse(e);n?.event(`SSE`,`Event received:`,t,{type:t?.type}),r.next(t)}catch(e){r.error(e)}}return r.asObservable()},ce=10*1024*1024,le=()=>typeof process<`u`&&process.env!==void 0&&!!process.env.SUPPRESS_TRANSFORMATION_WARNINGS,ue=(e,t)=>{let n=T(t),r=new d.Subject,i=new Uint8Array,a=!1;e.subscribe({next:e=>{if(e.type!==j.HEADERS&&e.type===j.DATA&&e.data){let t=new Uint8Array(i.length+e.data.length);t.set(i,0),t.set(e.data,i.length),i=t,o()}},error:e=>r.error(e),complete:()=>{if(o(),!a){if(i.length>0){r.error(Error(`The binary stream ended mid-frame: ${i.length} trailing bytes could not be read as a complete message.`));return}r.complete()}}});function o(){if(!a)for(;i.length>=4;){let e=4+new DataView(i.buffer,i.byteOffset,4).getUint32(0,!1);if(e>ce){r.error(Error(`Protobuf message size exceeded maximum limit of ${ce/(1024*1024)} MB`));return}if(i.length<e)break;try{let t=i.slice(4,e),a=m.decode(t);n?.event(`PROTO`,`Event received:`,a,{type:a.type}),r.next(a)}catch(e){if(e instanceof m.AGUIUnknownEventTypeError)le()||console.warn(`[ag-ui][proto] Dropped an event this build does not know: the protocol has a variant this SDK predates.`);else{let t=e instanceof Error?e.message:String(e);a=!0,r.error(Error(`Failed to decode protocol buffer message: ${t}`));return}}i=i.slice(e)}}return r.asObservable()},de=(e,t)=>{let n=T(t),r=new d.Subject,i=new d.ReplaySubject(1),a=!1,o,s=!1,c=()=>{s=!0,o?.unsubscribe()},u=e=>{c(),r.error(e)},f=()=>{c(),r.complete()};return o=e.subscribe({next:e=>{if(i.next(e),e.type===j.HEADERS&&!a){a=!0;let t=e.headers.get(`content-type`);n?.lifecycle(`HTTP`,`Stream format detected:`,{contentType:t,parser:t===m.AGUI_MEDIA_TYPE?`protobuf`:`sse`}),t===m.AGUI_MEDIA_TYPE?ue(i,n).subscribe({next:e=>r.next(e),error:e=>u(e),complete:()=>f()}):se(i,n).subscribe({next:e=>{if(typeof e!=`object`||!e||Array.isArray(e)){let t=Error(`Invalid event: the frame is not a JSON object.`);n?.event(`HTTP`,`Event invalid:`,{json:e,error:String(t)}),u(t);return}let t=e;if(typeof t.type!=`string`||t.type.length===0){let t=Error(`Invalid event: the frame carries no event type.`);n?.event(`HTTP`,`Event invalid:`,{json:e,error:String(t)}),u(t);return}n?.event(`HTTP`,`Event received:`,e,{type:t.type}),r.next(e)},error:e=>{if(e?.name===`AbortError`){r.next({type:l.EventType.RUN_ERROR,message:e.message||`Request aborted`,code:`abort`,rawEvent:e}),f();return}return u(e)},complete:()=>f()})}else a||u(Error(`No headers event received before data events`))},error:e=>{i.error(e),u(e)},complete:()=>{i.complete()}}),s&&o.unsubscribe(),r.asObservable()},M={TextMessageStart:`TextMessageStart`,TextMessageContent:`TextMessageContent`,TextMessageEnd:`TextMessageEnd`,ActionExecutionStart:`ActionExecutionStart`,ActionExecutionArgs:`ActionExecutionArgs`,ActionExecutionEnd:`ActionExecutionEnd`,ActionExecutionResult:`ActionExecutionResult`,AgentStateMessage:`AgentStateMessage`,MetaEvent:`MetaEvent`,RunStarted:`RunStarted`,RunFinished:`RunFinished`,RunError:`RunError`,NodeStarted:`NodeStarted`,NodeFinished:`NodeFinished`},fe=e=>{if(typeof e==`string`)return e;if(!Array.isArray(e))return;let t=e.filter(e=>e.type===`text`).map(e=>e.text).filter(e=>e.length>0);if(t.length!==0)return t.join(`
4
+ `)};function pe(e,t){return(0,l.contentHasMedia)(t)&&N(`[ag-ui][legacy] The result of tool call '${e}' carries content parts the legacy protocol cannot represent; only its text parts are bridged and the rest is dropped.`),(0,l.contentToText)(t)}const N=e=>{typeof process<`u`&&process.env!==void 0&&process.env.SUPPRESS_TRANSFORMATION_WARNINGS||console.warn(e)},me=(e,t,n)=>r=>{let i={},a=!0,o=!0,s=``,c=null,d=null,m=[],h={},g=!1,_=e=>{typeof e==`object`&&e&&(`messages`in e&&delete e.messages,i=e)};return r.pipe((0,f.mergeMap)(r=>{switch(r.type){case l.EventType.TEXT_MESSAGE_START:{let e=r;return[{type:M.TextMessageStart,messageId:e.messageId,role:e.role}]}case l.EventType.TEXT_MESSAGE_CONTENT:{let e=r;return[{type:M.TextMessageContent,messageId:e.messageId,content:e.delta}]}case l.EventType.TEXT_MESSAGE_END:{let e=r;return[{type:M.TextMessageEnd,messageId:e.messageId}]}case l.EventType.TOOL_CALL_START:{let e=r;return m.push({id:e.toolCallId,type:`function`,function:{name:e.toolCallName,arguments:``}}),o=!0,h[e.toolCallId]=e.toolCallName,[{type:M.ActionExecutionStart,actionExecutionId:e.toolCallId,actionName:e.toolCallName,parentMessageId:e.parentMessageId}]}case l.EventType.TOOL_CALL_ARGS:{let c=r,l=m.find(e=>e.id===c.toolCallId);if(!l)return N(`[ag-ui][legacy] TOOL_CALL_ARGS: No tool call found with ID '${c.toolCallId}'`),[];l.function.arguments+=c.delta;let u=!1;if(d){let e=d.find(e=>e.tool==l.function.name);if(e)try{let t=JSON.parse((0,p.default)(l.function.arguments));e.tool_argument&&e.tool_argument in t?(_({...i,[e.state_key]:t[e.tool_argument]}),u=!0):e.tool_argument||(_({...i,[e.state_key]:t}),u=!0)}catch{}}return[{type:M.ActionExecutionArgs,actionExecutionId:c.toolCallId,args:c.delta},...u?[{type:M.AgentStateMessage,threadId:e,agentName:n,nodeName:s,runId:t,running:a,role:`assistant`,state:JSON.stringify(i),active:o}]:[]]}case l.EventType.TOOL_CALL_END:{let e=r;return[{type:M.ActionExecutionEnd,actionExecutionId:e.toolCallId}]}case l.EventType.TOOL_CALL_RESULT:{let e=r,t=h[e.toolCallId];return(t===void 0||t===``)&&N(`[ag-ui][legacy] No usable tool name was seen for tool call '${e.toolCallId}' (${t===void 0?`no TOOL_CALL_START reached this bridge`:`its TOOL_CALL_START carried an empty toolCallName`}), so its result is being bridged with the fabricated action name "unknown". Downstream consumers route on that name.`),[{type:M.ActionExecutionResult,actionExecutionId:e.toolCallId,result:pe(e.toolCallId,e.content),actionName:t||`unknown`}]}case l.EventType.RAW:return g||(g=!0,N(`[ag-ui][legacy] Dropping RAW events: the legacy runtime protocol has no equivalent, so the provider payloads they carry do not reach the legacy stream. Reported once per stream.`)),[];case l.EventType.CUSTOM:{let e=r;switch(e.name){case`Exit`:a=!1;break;case`PredictState`:d=e.value;break}return[{type:M.MetaEvent,name:e.name,value:e.value}]}case l.EventType.STATE_SNAPSHOT:return _(r.snapshot),[{type:M.AgentStateMessage,threadId:e,agentName:n,nodeName:s,runId:t,running:a,role:`assistant`,state:JSON.stringify(i),active:o}];case l.EventType.STATE_DELTA:{let c=r,l;try{l=u.default.applyPatch(i,c.delta,!0,!1).newDocument}catch(e){let t=e instanceof Error?e.message:String(e);return N(`[ag-ui][legacy] Failed to apply state patch:\nCurrent state: ${JSON.stringify(i,null,2)}\nPatch operations: ${JSON.stringify(c.delta,null,2)}\nError: ${t}`),[]}return _(l),[{type:M.AgentStateMessage,threadId:e,agentName:n,nodeName:s,runId:t,running:a,role:`assistant`,state:JSON.stringify(i),active:o}]}case l.EventType.MESSAGES_SNAPSHOT:return c=r.messages,[{type:M.AgentStateMessage,threadId:e,agentName:n,nodeName:s,runId:t,running:a,role:`assistant`,state:JSON.stringify({...i,...c?{messages:c}:{}}),active:!0}];case l.EventType.RUN_STARTED:return[];case l.EventType.RUN_FINISHED:{if(c&&(i.messages=c),Object.keys(i).length===0)return[];let r=null;if(c)try{r=he(c)}catch(e){return[{type:M.RunError,message:e.message}]}return[{type:M.AgentStateMessage,threadId:e,agentName:n,nodeName:s,runId:t,running:a,role:`assistant`,state:JSON.stringify({...i,...r?{messages:r}:{}}),active:!1}]}case l.EventType.RUN_ERROR:{let e=r;return[{type:M.RunError,message:e.message,code:e.code}]}case l.EventType.STEP_STARTED:return s=r.stepName,m=[],d=null,[{type:M.AgentStateMessage,threadId:e,agentName:n,nodeName:s,runId:t,running:a,role:`assistant`,state:JSON.stringify(i),active:!0}];case l.EventType.STEP_FINISHED:return m=[],d=null,[{type:M.AgentStateMessage,threadId:e,agentName:n,nodeName:s,runId:t,running:a,role:`assistant`,state:JSON.stringify(i),active:!1}];default:return[]}}))};function he(e){let t=[];for(let n of e)if(n.role===`assistant`||n.role===`user`||n.role===`system`){let e=fe(n.content);if(e){let r={id:n.id,role:n.role,content:e};t.push(r)}if(n.role===`assistant`&&n.toolCalls&&n.toolCalls.length>0)for(let e of n.toolCalls){let r;try{r=JSON.parse(e.function.arguments)}catch(t){throw Error(`Failed to parse arguments for tool call '${e.id}' (${e.function.name}): ${t.message}`)}let i={id:e.id,name:e.function.name,arguments:r,parentMessageId:n.id};t.push(i)}}else if(n.role===`tool`){let r=`unknown`;for(let t of e)if(t.role===`assistant`&&t.toolCalls?.length){for(let e of t.toolCalls)if(e.id===n.toolCallId){r=e.function.name;break}}let i={id:n.id,result:pe(n.toolCallId,n.content),actionExecutionId:n.toolCallId,actionName:r};t.push(i)}return t}const ge=e=>e.kind===`tool`?e.fields.toolCallId:e.fields.messageId,_e=e=>e===`tool`?`toolCallId`:`messageId`,P=(e,t,n,r,i)=>{if(r!==void 0&&r!==i)throw Error(`Cannot continue ${e} '${t}': chunk ${n} '${r}' does not match the open stream's ${n} ${i===void 0?`(absent)`:`'${i}'`}.`)},F=(e,t)=>t.metadata===void 0?e:{...e,metadata:t.metadata},I=(e,t)=>{let n=F(e,t);return t.rawEvent===void 0?n:{...n,rawEvent:t.rawEvent}},L=e=>new Set(Object.keys(e.shape)),ve=L(g.TextMessageChunkEventSchema),ye=L(g.ToolCallChunkEventSchema),be=L(g.ReasoningMessageChunkEventSchema),xe=(e,t)=>{let n;for(let r of Object.keys(e))t.has(r)||((n??={})[r]=e[r]);return n},Se=e=>{typeof process<`u`&&process.env!==void 0&&process.env.SUPPRESS_TRANSFORMATION_WARNINGS||console.warn(`[ag-ui][transform] ${e} Set SUPPRESS_TRANSFORMATION_WARNINGS=true to silence.`)},Ce=(e,t,n,r)=>{if(t===void 0||n||e.length===0)return;let i=e[e.length-1],a=Object.keys(t).filter(e=>Object.prototype.hasOwnProperty.call(i,e));a.length>0&&Se(`A ${r} carried ${a.map(e=>`'${e}'`).join(`, `)}, which the synthesized ${String(i.type)} already describes. The synthesized value is kept and the chunk's is dropped — this stage does not judge a described field, so the producer's value cannot be substituted for its own.`),e[e.length-1]={...t,...i}},R=e=>t=>{let n=T(e),r=new Map,i=e=>{let t=r.get(e);if(!t)return[];switch(r.delete(e),t.kind){case`text`:{let e={type:l.EventType.TEXT_MESSAGE_END,messageId:t.fields.messageId,...t.fields.subagentRunId!==void 0&&{subagentRunId:t.fields.subagentRunId}};return n?.event(`TRANSFORM`,`TEXT_MESSAGE_END`,e,{messageId:e.messageId}),[e]}case`tool`:{let e={type:l.EventType.TOOL_CALL_END,toolCallId:t.fields.toolCallId,...t.fields.subagentRunId!==void 0&&{subagentRunId:t.fields.subagentRunId}};return n?.event(`TRANSFORM`,`TOOL_CALL_END`,e,{toolCallId:e.toolCallId}),[e]}case`reasoning`:{let e={type:l.EventType.REASONING_MESSAGE_END,messageId:t.fields.messageId,...t.fields.subagentRunId!==void 0&&{subagentRunId:t.fields.subagentRunId}};return n?.event(`TRANSFORM`,`REASONING_MESSAGE_END`,e,{messageId:e.messageId}),[e]}}},a=()=>[...r.keys()].flatMap(e=>i(e)),o=(e,t)=>{for(let[n,i]of r)if(i.kind===e&&ge(i)===t)return{owner:n}},s=(e,t,n,i,a)=>{if(t!==void 0){let r=o(e,t);if(r){if(n!==void 0&&n!==r.owner)throw Error(`Cannot continue ${a} '${t}': chunk subagentRunId '${n}' does not match the open stream's subagent '${r.owner??`(the parent agent)`}'.`);return r.owner}return n}if(n!==void 0)return n;if(r.get(void 0)?.kind===e)return;let s=[...r.entries()].filter(([,t])=>t.kind===e);if(s.length===1)return s[0][0];if(s.length>1)throw Error(`Ambiguous ${i}: it carries neither a ${_e(e)} nor a subagentRunId, but ${s.length} lanes have an open ${a}. Attribute the chunk to the subagent it belongs to.`)};return t.pipe((0,d.mergeMap)(e=>{switch(e.type){case l.EventType.TEXT_MESSAGE_START:case l.EventType.TEXT_MESSAGE_CONTENT:case l.EventType.TEXT_MESSAGE_END:case l.EventType.TOOL_CALL_START:case l.EventType.TOOL_CALL_ARGS:case l.EventType.TOOL_CALL_END:case l.EventType.TOOL_CALL_RESULT:case l.EventType.STATE_SNAPSHOT:case l.EventType.STATE_DELTA:case l.EventType.CUSTOM:case l.EventType.STEP_STARTED:case l.EventType.STEP_FINISHED:case l.EventType.REASONING_START:case l.EventType.REASONING_MESSAGE_START:case l.EventType.REASONING_MESSAGE_CONTENT:case l.EventType.REASONING_MESSAGE_END:case l.EventType.REASONING_END:return[...i(e.subagentRunId??void 0),e];case l.EventType.RUN_STARTED:case l.EventType.RUN_FINISHED:case l.EventType.RUN_ERROR:case l.EventType.MESSAGES_SNAPSHOT:return[...a(),e];case l.EventType.RAW:case l.EventType.ACTIVITY_SNAPSHOT:case l.EventType.ACTIVITY_DELTA:case l.EventType.REASONING_ENCRYPTED_VALUE:case l.EventType.SUBAGENT_STARTED:return[e];case l.EventType.SUBAGENT_FINISHED:case l.EventType.SUBAGENT_ERROR:{let t=e.subagentRunId;return t==null?[e]:[...i(t),e]}case l.EventType.TEXT_MESSAGE_CHUNK:{let t=e,a=xe(e,ve),o=s(`text`,t.messageId,t.subagentRunId??void 0,`TEXT_MESSAGE_CHUNK`,`text message`),c=r.get(o),u=[],d=!1,f;if(c?.kind===`text`&&(t.messageId===void 0||t.messageId===c.fields.messageId))P(`text message`,c.fields.messageId,`role`,t.role,c.fields.role),P(`text message`,c.fields.messageId,`name`,t.name,c.fields.name),f=c.fields;else{if(u.push(...i(o)),t.messageId===void 0)throw Error(`First TEXT_MESSAGE_CHUNK must have a messageId`);f={messageId:t.messageId,role:t.role===void 0?`assistant`:t.role,name:t.name,subagentRunId:t.subagentRunId},r.set(o,{kind:`text`,fields:f});let e=F({type:l.EventType.TEXT_MESSAGE_START,messageId:t.messageId,role:f.role,...t.name!==void 0&&{name:t.name},...t.subagentRunId!==void 0&&{subagentRunId:t.subagentRunId}},t);u.push(e),n?.event(`TRANSFORM`,`TEXT_MESSAGE_START`,e,{messageId:t.messageId})}if(t.delta!==void 0||t.rawEvent!==void 0){let e=t.subagentRunId===void 0?f.subagentRunId:t.subagentRunId,r=I({...a,type:l.EventType.TEXT_MESSAGE_CONTENT,messageId:f.messageId,delta:t.delta===void 0?``:t.delta,...e!==void 0&&{subagentRunId:e}},t);u.push(r),d=!0,n?.event(`TRANSFORM`,`TEXT_MESSAGE_CONTENT`,r,{messageId:f.messageId})}if(u.length===0&&(t.metadata!==void 0||t.rawEvent!==void 0||t.subagentRunId===null||a!==void 0)){let e=t.subagentRunId===void 0?f.subagentRunId:t.subagentRunId;u.push({...a,type:l.EventType.TEXT_MESSAGE_CONTENT,messageId:f.messageId,delta:``,...t.metadata!==void 0&&{metadata:t.metadata},...t.rawEvent!==void 0&&{rawEvent:t.rawEvent},...e!==void 0&&{subagentRunId:e}}),d=!0}return Ce(u,a,d,`TEXT_MESSAGE_CHUNK`),u}case l.EventType.TOOL_CALL_CHUNK:{let t=e,a=xe(e,ye),o=s(`tool`,t.toolCallId,t.subagentRunId??void 0,`TOOL_CALL_CHUNK`,`tool call`),c=r.get(o),u=[],d=!1,f;if(c?.kind===`tool`&&(t.toolCallId===void 0||t.toolCallId===c.fields.toolCallId))P(`tool call`,c.fields.toolCallId,`toolCallName`,t.toolCallName,c.fields.toolCallName),P(`tool call`,c.fields.toolCallId,`parentMessageId`,t.parentMessageId,c.fields.parentMessageId),f=c.fields;else{if(u.push(...i(o)),t.toolCallId===void 0)throw Error(`First TOOL_CALL_CHUNK must have a toolCallId`);if(t.toolCallName===void 0)throw Error(`First TOOL_CALL_CHUNK must have a toolCallName`);f={toolCallId:t.toolCallId,toolCallName:t.toolCallName,parentMessageId:t.parentMessageId,subagentRunId:t.subagentRunId},r.set(o,{kind:`tool`,fields:f});let e=F({type:l.EventType.TOOL_CALL_START,toolCallId:t.toolCallId,toolCallName:t.toolCallName,...t.parentMessageId!==void 0&&{parentMessageId:t.parentMessageId},...t.subagentRunId!==void 0&&{subagentRunId:t.subagentRunId}},t);u.push(e),n?.event(`TRANSFORM`,`TOOL_CALL_START`,e,{toolCallId:t.toolCallId,toolCallName:t.toolCallName})}if(t.delta!==void 0||t.rawEvent!==void 0){let e=t.subagentRunId===void 0?f.subagentRunId:t.subagentRunId,r=I({...a,type:l.EventType.TOOL_CALL_ARGS,toolCallId:f.toolCallId,delta:t.delta===void 0?``:t.delta,...e!==void 0&&{subagentRunId:e}},t);u.push(r),d=!0,n?.event(`TRANSFORM`,`TOOL_CALL_ARGS`,r,{toolCallId:f.toolCallId})}if(u.length===0&&(t.metadata!==void 0||t.rawEvent!==void 0||t.subagentRunId===null||a!==void 0)){let e=t.subagentRunId===void 0?f.subagentRunId:t.subagentRunId;u.push({...a,type:l.EventType.TOOL_CALL_ARGS,toolCallId:f.toolCallId,delta:``,...t.metadata!==void 0&&{metadata:t.metadata},...t.rawEvent!==void 0&&{rawEvent:t.rawEvent},...e!==void 0&&{subagentRunId:e}}),d=!0}return Ce(u,a,d,`TOOL_CALL_CHUNK`),u}case l.EventType.REASONING_MESSAGE_CHUNK:{let t=e,a=xe(e,be),o=s(`reasoning`,t.messageId,t.subagentRunId??void 0,`REASONING_MESSAGE_CHUNK`,`reasoning message`),c=r.get(o),u=[],d=!1,f;if(c?.kind===`reasoning`&&(t.messageId===void 0||t.messageId===c.fields.messageId))f=c.fields;else{if(u.push(...i(o)),t.messageId===void 0)throw Error(`First REASONING_MESSAGE_CHUNK must have a messageId`);f={messageId:t.messageId,subagentRunId:t.subagentRunId},r.set(o,{kind:`reasoning`,fields:f});let e=F({type:l.EventType.REASONING_MESSAGE_START,messageId:t.messageId,role:`reasoning`,...t.subagentRunId!==void 0&&{subagentRunId:t.subagentRunId}},t);u.push(e),n?.event(`TRANSFORM`,`REASONING_MESSAGE_START`,e,{messageId:t.messageId})}if(t.delta!==void 0||t.rawEvent!==void 0){let e=t.subagentRunId===void 0?f.subagentRunId:t.subagentRunId,r=I({...a,type:l.EventType.REASONING_MESSAGE_CONTENT,messageId:f.messageId,delta:t.delta===void 0?``:t.delta,...e!==void 0&&{subagentRunId:e}},t);u.push(r),d=!0,n?.event(`TRANSFORM`,`REASONING_MESSAGE_CONTENT`,r,{messageId:f.messageId})}if(u.length===0&&(t.metadata!==void 0||t.rawEvent!==void 0||t.subagentRunId===null||a!==void 0)){let e=t.subagentRunId===void 0?f.subagentRunId:t.subagentRunId;u.push({...a,type:l.EventType.REASONING_MESSAGE_CONTENT,messageId:f.messageId,delta:``,...t.metadata!==void 0&&{metadata:t.metadata},...t.rawEvent!==void 0&&{rawEvent:t.rawEvent},...e!==void 0&&{subagentRunId:e}}),d=!0}return Ce(u,a,d,`REASONING_MESSAGE_CHUNK`),u}}return e.type,[e]}),(0,d.finalize)(()=>{a()}))},z=Symbol(`agui.strip.drop`);function B(e){let t=e;for(;;){if(t instanceof _.z.ZodOptional||t instanceof _.z.ZodNullable||t instanceof _.z.ZodDefault||t instanceof _.z.ZodReadonly||t instanceof _.z.ZodCatch){t=t.unwrap();continue}if(t instanceof _.z.ZodPipe){t=t.def.in;continue}if(t instanceof _.z.ZodLazy){t=t.def.getter();continue}return t}}function we(e){let t=e.def;return typeof t?.discriminator==`string`?t.discriminator:void 0}function Te(e){let t=e,n=Array.isArray(t.def?.values)?t.def.values:t.values?Array.from(t.values):void 0;return n&&n.length===1?n[0]:t.value}function Ee(e){let t=B(e);return t instanceof _.z.ZodLiteral?Te(t):void 0}function V(e,t,n,r){let i=B(t);if(i instanceof _.z.ZodObject){if(typeof e!=`object`||!e||Array.isArray(e))return e;let t=i.shape,a=e,o={},s=i.meta()?.specOpen===!0;for(let e of Object.keys(a)){let i=Object.prototype.hasOwnProperty.call(t,e)?t[e]:void 0;if(i===void 0){if(s){o[e]=a[e];continue}r.push(`${n}/${e}`);continue}let c=r.length,l=V(a[e],i,`${n}/${e}`,r);if(l===z){if(r.length=c,i.safeParse(void 0).success){r.push(`${n}/${e}`);continue}return z}o[e]=l}return o}if(i instanceof _.z.ZodArray){if(!Array.isArray(e))return e;let t=i.element,a=[];return e.forEach((e,i)=>{let o=r.length,s=V(e,t,`${n}/${i}`,r);if(s===z){r.length=o,r.push(`${n}/${i}`);return}a.push(s)}),a}if(i instanceof _.z.ZodRecord){if(typeof e!=`object`||!e||Array.isArray(e))return e;let t=i.def.valueType,a=e,o={};for(let e of Object.keys(a)){let i=r.length,s=V(a[e],t,`${n}/${e}`,r);if(s===z){r.length=i,r.push(`${n}/${e}`);continue}o[e]=s}return o}if(i instanceof _.z.ZodUnion){let t=i.options,a=we(i);if(a!==void 0){if(typeof e!=`object`||!e||Array.isArray(e))return e;let i=e[a];for(let o of t){let t=B(o);if(!(t instanceof _.z.ZodObject))continue;let s=t.shape;if(Ee(s[a])===i)return V(e,o,n,r)}return z}let o=t.filter(e=>B(e)instanceof _.z.ZodObject),s=typeof e==`object`&&!!e&&!Array.isArray(e);if(o.length>1&&s)return e;for(let i of t){let t=B(i);if(t instanceof _.z.ZodArray&&Array.isArray(e)||t instanceof _.z.ZodObject&&s)return V(e,i,n,r)}return e}return e}function De(e,t){let n=[],r=V(e,t,``,n);if(r===z)throw Error(`Internal error: the stripper found the whole value unrecognisable, which the schemas are not supposed to allow — schema/stripper mismatch.`);return{value:r,stripped:n}}const Oe=new Set(Object.values(l.EventType));function ke(e){return Oe.has(e.type)}const Ae=new Map(g.EventSchema.options.map(e=>{let t=e.shape;return[String(Te(t.type)),e]})),je=()=>typeof process<`u`&&process.env!==void 0&&!!process.env.SUPPRESS_TRANSFORMATION_WARNINGS;function Me(e){je()||console.warn(`[ag-ui][enforce] ${e}`)}const H=e=>t=>{let n=T(e);return t.pipe((0,f.mergeMap)(e=>{if(!ke(e))return Me(`Dropping unrecognised event '${String(e.type)}': no middleware translated it and the protocol does not describe it.`),n?.event(`ENFORCE`,`Unrecognised event dropped:`,e,{type:e.type}),d.EMPTY;let t=Ae.get(e.type);if(t===void 0)throw Error(`No validator for recognised event type '${String(e.type)}'`);let{value:r,stripped:i}=De(e,t);for(let t of i)Me(`Removed unrecognised material at '${t}' on ${String(e.type)}. Nothing handled it; see the repo-root DEPRECATIONS.md if it is a retired shape.`);return(0,d.of)(t.parse(r))}))};function Ne(e){let{value:t,stripped:n}=De((0,l.omitOptionalNulls)(e,`RunAgentInput`),g.RunAgentInputSchema);for(let e of n)Me(`Removed unrecognised material at '${e}' from the outgoing input.`);return g.RunAgentInputSchema.parse(t)}var U=class{runNext(e,t){return t.run(e).pipe(R(!1))}runNextWithState(e,t){let n=b(e.messages||[]),r=b(e.state===void 0?{}:e.state),i=new d.ReplaySubject;return k(e,i,t,[]).subscribe({next:e=>{e.messages!==void 0&&(n=e.messages),e.state!==void 0&&(r=e.state)},error:()=>{}}),this.runNext(e,t).pipe((0,f.concatMap)(async e=>(i.next(e),await new Promise(e=>setTimeout(e,0)),{event:e,messages:b(n),state:b(r)})))}},Pe=class extends U{constructor(e){super(),this.fn=e}run(e,t){return this.fn(e,t)}};function Fe(e){return e.startsWith(`image/`)?`image`:e.startsWith(`audio/`)?`audio`:e.startsWith(`video/`)?`video`:`document`}function Ie(e){return typeof e==`object`&&!!e&&`type`in e&&e.type===`binary`&&`mimeType`in e&&typeof e.mimeType==`string`}function Le(e){let t=Fe(e.mimeType);return e.data?{type:t,source:{type:`data`,value:e.data,mimeType:e.mimeType},...e.filename?{metadata:{filename:e.filename}}:{}}:e.url?{type:t,source:{type:`url`,value:e.url,mimeType:e.mimeType},...e.filename?{metadata:{filename:e.filename}}:{}}:((typeof process>`u`||process.env===void 0||!process.env.SUPPRESS_TRANSFORMATION_WARNINGS)&&console.warn(`[ag-ui][compat] A binary content part carries only an id ('${e.id??``}') and cannot be converted to a modern media part; a 1.0 peer will not accept it. Provide data or a url. See the repo-root DEPRECATIONS.md.`),e)}function Re(e,t,n){if(typeof e!=`object`||!e||!(`type`in e)||e.type!==t.type||!(`source`in e))return!1;let r=e.source;return typeof r!=`object`||!r||!(`type`in r)||r.type!==t.source.type||!(`value`in r)||r.value!==t.source.value||!(`mimeType`in r)||r.mimeType!==t.source.mimeType?!1:!n||`metadata`in e&&typeof e.metadata==`object`&&e.metadata!==null&&`filename`in e.metadata&&e.metadata.filename===n}function ze(e){let t=e.content;if(!Array.isArray(t))return e;let n=t.flatMap(e=>{if(Ie(e)){let n=Le(e);return n.type!==`binary`&&t.some(t=>Re(t,n,e.filename))?[]:[n]}return[e]});return{...e,content:n}}const W=`THINKING_START`,G=`THINKING_END`,Be=`THINKING_TEXT_MESSAGE_START`,K=`THINKING_TEXT_MESSAGE_CONTENT`,q=`THINKING_TEXT_MESSAGE_END`;function Ve(e,t){typeof process<`u`&&process.env!==void 0&&process.env.SUPPRESS_TRANSFORMATION_WARNINGS||console.warn(`[ag-ui][compat] Converting deprecated ${e} to ${t}. The old shape leaves the protocol after its shim window — see the repo-root DEPRECATIONS.md. Set SUPPRESS_TRANSFORMATION_WARNINGS=true to silence.`)}function J(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Y(e,t,n){if(!J(e)||e[t]!==null)return e;Ve(`${n}.${t}: null`,`an absent field`);let{[t]:r,...i}=e;return i}function X(e,t,n){if(!J(e)||!Array.isArray(e[t]))return e;let r=e[t],i=r.map(n);return i.some((e,t)=>e!==r[t])?{...e,[t]:i}:e}function He(e){return X(e,`content`,e=>{if(!J(e))return e;switch(e.type){case`image`:case`audio`:case`video`:case`document`:return Y(e,`metadata`,`${e.type} input content`);default:return e}})}function Ue(e){let t=Y(e,`forwardedProps`,`RunAgentInput`);return t=X(t,`tools`,e=>Y(e,`parameters`,`Tool`)),t=X(t,`resume`,e=>Y(e,`payload`,`ResumeEntry`)),X(t,`messages`,He)}var Z=class extends U{constructor(...e){super(...e),this.currentReasoningId=null,this.currentMessageId=null}warn(e,t){Ve(e,t)}mintedContinuationId(e,t){if(t!==null)return t;let n=x();return this.warnAside(`Minting a messageId ('${n}') for ${e}: no THINKING opener preceded it, so there was no id to continue. The id is this client's invention, not the producer's, and verification will reject the translated event for naming something nothing opened.`),n}warnAside(e){typeof process<`u`&&process.env!==void 0&&process.env.SUPPRESS_TRANSFORMATION_WARNINGS||console.warn(`[ag-ui][compat] ${e} Set SUPPRESS_TRANSFORMATION_WARNINGS=true to silence.`)}run(e,t){return this.currentReasoningId=null,this.currentMessageId=null,e.messages=e.messages.map(ze),t.run(e).pipe((0,f.map)(e=>this.transformEvent(e)))}transformEvent(e){if(e.rawEvent===null){this.warn(`${e.type}.rawEvent: null`,`an absent field`);let{rawEvent:t,...n}=e;e=n}if((e.type===l.EventType.RUN_FINISHED||e.type===l.EventType.SUBAGENT_FINISHED)&&e.result===null){this.warn(`${e.type}.result: null`,`an absent field`);let{result:t,...n}=e;e=n}switch(e.type){case W:{this.currentReasoningId=x();let{title:t,...n}=e;return this.warn(W,l.EventType.REASONING_START),t!==void 0&&this.warnAside(`Dropping ${W}.title ${JSON.stringify(t)}: ${l.EventType.REASONING_START} has no title field, so the span's label cannot be carried and nothing downstream can recover it.`),{...n,type:l.EventType.REASONING_START,messageId:this.currentReasoningId}}case Be:return this.currentMessageId=x(),this.warn(Be,l.EventType.REASONING_MESSAGE_START),{...e,type:l.EventType.REASONING_MESSAGE_START,messageId:this.currentMessageId,role:`reasoning`};case K:{let{delta:t,...n}=e;return this.warn(K,l.EventType.REASONING_MESSAGE_CONTENT),{...n,type:l.EventType.REASONING_MESSAGE_CONTENT,messageId:this.mintedContinuationId(K,this.currentMessageId),delta:t}}case q:{let t=this.mintedContinuationId(q,this.currentMessageId);return this.currentMessageId=null,this.warn(q,l.EventType.REASONING_MESSAGE_END),{...e,type:l.EventType.REASONING_MESSAGE_END,messageId:t}}case G:{let t=this.mintedContinuationId(G,this.currentReasoningId);return this.currentReasoningId=null,this.warn(G,l.EventType.REASONING_END),{...e,type:l.EventType.REASONING_END,messageId:t}}case l.EventType.TOOL_CALL_START:case l.EventType.TOOL_CALL_CHUNK:{let t=e;if(t.parentMessageId===null){this.warn(`${e.type}.parentMessageId: null`,`an absent field`);let{parentMessageId:n,...r}=t;return r}return e}case l.EventType.RUN_FINISHED:{let t=e;if(t.outcome===null){this.warn(`RUN_FINISHED.outcome: null`,`an absent field`);let{outcome:e,...n}=t;return n}return e}case l.EventType.MESSAGES_SNAPSHOT:{let t=e;return Array.isArray(t.messages)?{...t,messages:t.messages.map(e=>this.upgradeInboundMessage(e))}:e}case l.EventType.RUN_STARTED:{let t=Ue(e.input),n=t===e.input?e:{...e,input:t},r=n;return!r.input||!Array.isArray(r.input.messages)?n:{...r,input:{...r.input,messages:r.input.messages.map(e=>this.upgradeInboundMessage(e))}}}default:return e}}upgradeInboundMessage(e){e=He(e);let t=e.content;return!Array.isArray(t)||!t.some(e=>typeof e==`object`&&!!e&&e.type===`binary`)?e:(this.warn(`binary input content`,`the modern media content parts`),ze(e))}};const We=()=>e=>(0,d.defer)(()=>{let t=new Z;return e.pipe((0,f.map)(e=>t.transformEvent(e)))});function Ge(e){return e.outcome}function Ke(e,t=new Date){return e.expiresAt===void 0?!1:new Date(e.expiresAt)<=t}function qe(e,t){let n=new Set(e.map(e=>e.id)),r=new Set(Object.keys(t)),i=[...n].filter(e=>!r.has(e));if(i.length>0)throw Error(`buildResumeArray: missing responses for open interrupts: ${i.join(`, `)}`);let a=[...r].filter(e=>!n.has(e));if(a.length>0)throw Error(`buildResumeArray: responses reference unknown interrupt ids: ${a.join(`, `)}`);return e.map(e=>{let n=t[e.id],r={interruptId:e.id,status:n.status};return n.status===`resolved`&&n.payload!==void 0&&(r.payload=n.payload),n.metadata!==void 0&&(r.metadata=n.metadata),r})}var Je=class extends U{constructor(e){if(super(),e.allowedToolCalls&&e.disallowedToolCalls)throw Error(`Cannot specify both allowedToolCalls and disallowedToolCalls`);if(!e.allowedToolCalls&&!e.disallowedToolCalls)throw Error(`Must specify either allowedToolCalls or disallowedToolCalls`);e.allowedToolCalls?this.allowedTools=new Set(e.allowedToolCalls):e.disallowedToolCalls&&(this.disallowedTools=new Set(e.disallowedToolCalls))}run(e,t){return(0,d.defer)(()=>{let n=new Set;return this.runNext(e,t).pipe((0,f.filter)(e=>{if(e.type===l.EventType.RUN_STARTED)return n.clear(),!0;if(e.type===l.EventType.TOOL_CALL_START){let t=e;return this.shouldFilterTool(t.toolCallName)?(n.add(t.toolCallId),!1):!0}if(e.type===l.EventType.TOOL_CALL_ARGS){let t=e;return!n.has(t.toolCallId)}if(e.type===l.EventType.TOOL_CALL_END){let t=e;return!n.has(t.toolCallId)}if(e.type===l.EventType.TOOL_CALL_RESULT){let t=e;return n.has(t.toolCallId)?(n.delete(t.toolCallId),!1):!0}return!0}))})}shouldFilterTool(e){return this.allowedTools?!this.allowedTools.has(e):this.disallowedTools?this.disallowedTools.has(e):!1}};function Ye(){return typeof process<`u`&&process.env!==void 0&&!!process.env.SUPPRESS_TRANSFORMATION_WARNINGS}function Xe(e){Ye()||console.warn(`[ag-ui][compat] Flattening message content for a <=0.0.39 peer DROPS non-text parts (${e.join(`, `)}). The peer cannot receive them; upgrade it to keep media content. See the repo-root DEPRECATIONS.md.`)}function Ze(e){Ye()||console.warn(`[ag-ui][compat] Not flattening message content for a <=0.0.39 peer: ${e} content part(s) claim type "text" but carry a malformed 'text' value. That is a defect in the message, not media the peer cannot represent, and a downgrade must not repair it — the content is passed on unchanged so the outgoing enforcement boundary reports it. See the repo-root DEPRECATIONS.md.`)}function Qe(e){let t=e.content;if(Array.isArray(t)){let n=e=>typeof e==`object`&&!!e&&`type`in e&&e.type===`text`,r=e=>n(e)&&typeof e.text==`string`,i=t.filter(e=>n(e)&&!r(e));if(i.length>0)return Ze(i.length),e;let a=t.filter(e=>!r(e)).map(e=>typeof e==`object`&&e&&`type`in e?String(e.type):typeof e);a.length>0&&Xe(a);let o=t.filter(r).map(e=>e.text).join(``);return{...e,content:o}}return typeof t==`string`?e:t===void 0?{...e,content:``}:e}var $e=class extends U{run(e,t){let{parentRunId:n,...r}=e,i={...r,messages:r.messages.map(Qe)};return this.runNext(i,t)}};const et=`THINKING_START`,tt=`THINKING_END`,nt=`THINKING_TEXT_MESSAGE_START`,rt=`THINKING_TEXT_MESSAGE_CONTENT`,it=`THINKING_TEXT_MESSAGE_END`;var at=class extends U{constructor(...e){super(...e),this.currentReasoningId=null,this.currentMessageId=null}warnAboutTransformation(e,t){typeof process<`u`&&process.env!==void 0&&process.env.SUPPRESS_TRANSFORMATION_WARNINGS||console.warn(`AG-UI is converting ${e} to ${t}. To remove this warning, upgrade your AG-UI integration package (e.g. @ag-ui/langgraph). To surpress it, set SUPPRESS_TRANSFORMATION_WARNINGS=true in your .env file.`)}run(e,t){return this.currentReasoningId=null,this.currentMessageId=null,this.runNext(e,t).pipe((0,f.map)(e=>this.transformEvent(e)))}transformEvent(e){switch(e.type){case et:{this.currentReasoningId=x();let{title:t,...n}=e;return this.warnAboutTransformation(et,l.EventType.REASONING_START),{...n,type:l.EventType.REASONING_START,messageId:this.currentReasoningId}}case nt:return this.currentMessageId=x(),this.warnAboutTransformation(nt,l.EventType.REASONING_MESSAGE_START),{...e,type:l.EventType.REASONING_MESSAGE_START,messageId:this.currentMessageId,role:`reasoning`};case rt:{let{delta:t,...n}=e;return this.warnAboutTransformation(rt,l.EventType.REASONING_MESSAGE_CONTENT),{...n,type:l.EventType.REASONING_MESSAGE_CONTENT,messageId:this.currentMessageId??x(),delta:t}}case it:{let t=this.currentMessageId??x();return this.warnAboutTransformation(it,l.EventType.REASONING_MESSAGE_END),{...e,type:l.EventType.REASONING_MESSAGE_END,messageId:t}}case tt:{let t=this.currentReasoningId??x();return this.warnAboutTransformation(tt,l.EventType.REASONING_END),{...e,type:l.EventType.REASONING_END,messageId:t}}default:return e}}};const ot=`SUBAGENT_STARTED`,st=`SUBAGENT_FINISHED`,ct=`SUBAGENT_ERROR`;function Q(e){if(e&&typeof e==`object`&&`subagentRunId`in e){let{subagentRunId:t,...n}=e;return n}return e}function lt(e){return e.map(e=>Q(e))}var ut=class extends U{warnDroppedLifecycleEvent(e){typeof process<`u`&&process.env!==void 0&&process.env.SUPPRESS_TRANSFORMATION_WARNINGS||console.warn(`AG-UI is dropping ${e} because the target agent predates subagent support. To remove this warning, upgrade your AG-UI integration package. To suppress it, set SUPPRESS_TRANSFORMATION_WARNINGS=true in your .env file.`)}run(e,t){let n={...e,messages:(e.messages??[]).map(e=>Q(e))};return this.runNext(n,t).pipe((0,f.tap)(e=>{let t=e.type;(t===ot||t===st||t===ct)&&this.warnDroppedLifecycleEvent(t)}),(0,f.filter)(e=>{let t=e.type;return t!==ot&&t!==st&&t!==ct}),(0,f.map)(e=>{let t=Q(e);if(t.type===l.EventType.MESSAGES_SNAPSHOT){let e=t;if(Array.isArray(e.messages))return{...e,messages:lt(e.messages)}}if(t.type===l.EventType.RUN_FINISHED){let e=t;if(e.outcome&&Array.isArray(e.outcome.interrupts))return{...e,outcome:{...e.outcome,interrupts:e.outcome.interrupts.map(e=>Q(e))}}}if(t.type===l.EventType.RUN_STARTED){let e=t;if(e.input&&Array.isArray(e.input.messages))return{...e,input:{...e.input,messages:lt(e.input.messages)}}}return t}))}},$=`1.0.0`;let dt=!1;const ft=(e,t)=>/^\d+\.\d+$/.test(e)?(0,h.compareVersions)(e,t)>0?`newer`:`not-newer`:`uninterpretable`,pt=e=>{let t=e.protocolVersion;if(!(t===void 0||t===l.PROTOCOL_VERSION))switch(ft(t,l.PROTOCOL_VERSION)){case`uninterpretable`:console.warn(`[ag-ui] The producer declared protocol version '${t}', which this client cannot interpret.`);return;case`newer`:console.warn(`[ag-ui] The producer speaks protocol ${t}; this client speaks ${l.PROTOCOL_VERSION}. Unrecognised material will be stripped with warnings.`);return;case`not-newer`:return}};var mt=class e{resolvePeerCeiling(t){if(this.resolvingPeerCeiling)return $;let n=Object.getOwnPropertyDescriptor(this,`maxVersion`),r=Object.getOwnPropertyDescriptor(this,`maxProtocolVersion`),i=Object.getPrototypeOf(this);for(;i&&i!==e.prototype;)n??=Object.getOwnPropertyDescriptor(i,`maxVersion`),r??=Object.getOwnPropertyDescriptor(i,`maxProtocolVersion`),i=Object.getPrototypeOf(i);if(t===`maxVersion`&&n)return $;let a=t===`maxProtocolVersion`?n:r;if(!a)return $;this.resolvingPeerCeiling=!0;try{return a.get?a.get.call(this):a.value}finally{this.resolvingPeerCeiling=!1}}get maxProtocolVersion(){return this.resolvePeerCeiling(`maxProtocolVersion`)}get maxVersion(){return!this.resolvingPeerCeiling&&!dt&&(dt=!0,console.warn(`[ag-ui] AbstractAgent.maxVersion is deprecated — use maxProtocolVersion. Same value; the new name says whose version it is and that it is a ceiling.`)),this.resolvePeerCeiling(`maxVersion`)}get debug(){return this._debug}set debug(e){this._debug=w(e),this._debugLogger=D(this._debug)}get debugLogger(){return this._debugLogger}set debugLogger(e){typeof e==`boolean`?this._debugLogger=e?D(w(!0)):void 0:this._debugLogger=e}resolvedCeilingDuringConstruction(){let e=this.maxProtocolVersion;if(typeof e!=`string`||!(0,h.validate)(e))throw new l.AGUIError(`maxProtocolVersion resolved to ${JSON.stringify(e)} during construction, which is not a version this client can compare. A ceiling read from an instance field is not available yet — return a literal from the getter.`);return e}constructor({agentId:e,description:t,threadId:n,initialMessages:r,initialState:i,debug:a}={}){this.subscribers=[],this.isRunning=!1,this.pendingInterrupts=[],this.middlewares=[],this.resolvingPeerCeiling=!1,this.agentId=e,this.description=t??``,this.threadId=n??(0,c.v4)(),this.messages=b(r??[]),this.state=b(i??{}),this._debug=w(a),this._debugLogger=D(this._debug);let o=this.resolvedCeilingDuringConstruction();(0,h.compareVersions)(o,`0.0.39`)<=0&&this.middlewares.unshift(new $e),(0,h.compareVersions)(o,`0.0.45`)<=0&&this.middlewares.unshift(new at),(0,h.compareVersions)(o,`0.0.57`)<=0&&this.middlewares.unshift(new ut)}subscribe(e){return this.subscribers.push(e),{unsubscribe:()=>{this.subscribers=this.subscribers.filter(t=>t!==e)}}}use(...e){let t=e.map(e=>typeof e==`function`?new Pe(e):e);return this.middlewares.push(...t),this}async runAgent(e,t){try{this.isRunning=!0,this.agentId=this.agentId??(0,c.v4)();let n=this.prepareRunAgentInput(e);this.debugLogger?.lifecycle(`LIFECYCLE`,`Run started:`,{agentId:this.agentId,threadId:this.threadId});let r,i=new Set(this.messages.map(e=>e.id)),a=[{onRunStartedEvent:({event:e})=>pt(e),onRunFinishedEvent:e=>{e.outcome===`success`&&(r=e.result)}},...this.subscribers,t??{}];await this.onInitialize(n,a),this.activeRunDetach$=new d.Subject;let o;this.activeRunCompletionPromise=new Promise(e=>{o=e}),await(0,d.lastValueFrom)((0,d.pipe)(()=>[...this.middlewares,new Z].reduceRight((e,t)=>({run:n=>t.run(n,e),get messages(){return e.messages},get state(){return e.state}}),this).run(n),H(this.debugLogger),R(this.debugLogger),A(this.debugLogger),e=>e.pipe((0,f.takeUntil)(this.activeRunDetach$)),e=>this.apply(n,e,a),e=>this.processApplyEvents(n,e,a),(0,f.catchError)(e=>(this.debugLogger?.lifecycle(`LIFECYCLE`,`Run errored:`,{agentId:this.agentId,error:e instanceof Error?e.message:String(e)}),this.isRunning=!1,this.onError(n,e,a))),(0,f.finalize)(()=>{this.debugLogger?.lifecycle(`LIFECYCLE`,`Run finished:`,{agentId:this.agentId,threadId:this.threadId}),this.isRunning=!1,this.onFinalize(n,a),o?.(),o=void 0,this.activeRunCompletionPromise=void 0,this.activeRunDetach$=void 0}))((0,d.of)(null)));let s=b(this.messages).filter(e=>!i.has(e.id));return{result:r,newMessages:s}}finally{this.isRunning=!1}}connect(e){throw new l.AGUIConnectNotImplementedError}async connectAgent(e,t){try{this.isRunning=!0,this.agentId=this.agentId??(0,c.v4)();let n=this.prepareRunAgentInput(e),r,i=new Set(this.messages.map(e=>e.id)),a=[{onRunStartedEvent:({event:e})=>pt(e),onRunFinishedEvent:e=>{e.outcome===`success`&&(r=e.result)}},...this.subscribers,t??{}];await this.onInitialize(n,a),this.activeRunDetach$=new d.Subject;let o;this.activeRunCompletionPromise=new Promise(e=>{o=e}),await(0,d.lastValueFrom)((0,d.pipe)(()=>(0,d.defer)(()=>this.connect(n)),e=>H(this.debugLogger)(We()(e)),R(this.debugLogger),A(this.debugLogger),e=>e.pipe((0,f.takeUntil)(this.activeRunDetach$)),e=>this.apply(n,e,a),e=>this.processApplyEvents(n,e,a),(0,f.catchError)(e=>(this.isRunning=!1,e instanceof l.AGUIConnectNotImplementedError?d.EMPTY:this.onError(n,e,a))),(0,f.finalize)(()=>{this.isRunning=!1,this.onFinalize(n,a),o?.(),o=void 0,this.activeRunCompletionPromise=void 0,this.activeRunDetach$=void 0}))((0,d.of)(null)),{defaultValue:void 0});let s=b(this.messages).filter(e=>!i.has(e.id));return{result:r,newMessages:s}}finally{this.isRunning=!1}}abortRun(){}async detachActiveRun(){if(!this.activeRunDetach$)return;let e=this.activeRunCompletionPromise??Promise.resolve();this.activeRunDetach$.next(),this.activeRunDetach$?.complete(),await e}apply(e,t,n){return k(e,t,this,n,this.debugLogger)}processApplyEvents(e,t,n){return t.pipe((0,f.tap)(t=>{t.messages&&(this.messages=t.messages,n.forEach(t=>{t.onMessagesChanged?.({messages:this.messages,state:this.state,agent:this,input:e})})),t.state!==void 0&&(this.state=t.state,n.forEach(t=>{t.onStateChanged?.({state:this.state,messages:this.messages,agent:this,input:e})}))}))}prepareRunAgentInput(e){let t=b(this.messages);for(let e of t)e.subagentRunId===null&&delete e.subagentRunId;let n=t.filter(e=>e.role!==`activity`);return{threadId:this.threadId,runId:e?.runId||(0,c.v4)(),...(0,h.compareVersions)(this.maxProtocolVersion,$)>=0&&{protocolVersion:l.PROTOCOL_VERSION},tools:b(e?.tools??[]),context:b(e?.context??[]),forwardedProps:b(e?.forwardedProps??{}),state:b(this.state),messages:n,...e?.resume===void 0?{}:{resume:b(e.resume)}}}async onInitialize(e,t){if(this.pendingInterrupts.length>0){let t=new Set((e.resume??[]).map(e=>e.interruptId)),n=this.pendingInterrupts.map(e=>e.id).filter(e=>!t.has(e));if(n.length>0)throw new l.AGUIError(`Thread has ${n.length} pending interrupt(s) not addressed by resume: ${n.join(`, `)}`);for(let t of this.pendingInterrupts)if(Ke(t)&&(e.resume??[]).find(e=>e.interruptId===t.id)?.status!==`cancelled`)throw new l.AGUIError(`Interrupt ${t.id} expired at ${t.expiresAt} and can no longer be answered. Cancel it to continue the thread.`)}let n=await C(t,this.messages,this.state,(t,n,r)=>t.onRunInitialized?.({messages:n,state:r,agent:this,input:e}));if(n.messages!==void 0||n.state!==void 0){if(n.messages){this.messages=n.messages;for(let e of n.messages)e.subagentRunId===null&&delete e.subagentRunId;e.messages=n.messages.filter(e=>e.role!==`activity`),t.forEach(t=>{t.onMessagesChanged?.({messages:this.messages,state:this.state,agent:this,input:e})})}n.state!==void 0&&(this.state=n.state,e.state=n.state,t.forEach(t=>{t.onStateChanged?.({state:this.state,messages:this.messages,agent:this,input:e})}))}}onError(e,t,n){return(0,d.from)(C(n,this.messages,this.state,(n,r,i)=>n.onRunFailed?.({error:t,messages:r,state:i,agent:this,input:e}))).pipe((0,f.map)(r=>{let i=r;if((i.messages!==void 0||i.state!==void 0)&&(i.messages!==void 0&&(this.messages=i.messages,n.forEach(t=>{t.onMessagesChanged?.({messages:this.messages,state:this.state,agent:this,input:e})})),i.state!==void 0&&(this.state=i.state,n.forEach(t=>{t.onStateChanged?.({state:this.state,messages:this.messages,agent:this,input:e})}))),i.stopPropagation!==!0){let e=String(t);if(!(t.name===`AbortError`||t.message===`Fetch is aborted`||t.message===`signal is aborted without reason`||t.message===`component unmounted`||e===`component unmounted`))throw console.error(`Agent execution failed:`,t),t}return{}}))}async onFinalize(e,t){let n=await C(t,this.messages,this.state,(t,n,r)=>t.onRunFinalized?.({messages:n,state:r,agent:this,input:e}));(n.messages!==void 0||n.state!==void 0)&&(n.messages!==void 0&&(this.messages=n.messages,t.forEach(t=>{t.onMessagesChanged?.({messages:this.messages,state:this.state,agent:this,input:e})})),n.state!==void 0&&(this.state=n.state,t.forEach(t=>{t.onStateChanged?.({state:this.state,messages:this.messages,agent:this,input:e})})))}clone(){let e=Object.create(Object.getPrototypeOf(this));return e.agentId=this.agentId,e.description=this.description,e.threadId=this.threadId,e.messages=b(this.messages),e.state=b(this.state),e._debug=this._debug,e._debugLogger=this._debugLogger,e.isRunning=this.isRunning,e.subscribers=[...this.subscribers],e.middlewares=[...this.middlewares],e.pendingInterrupts=b(this.pendingInterrupts),e}addMessage(e){this.messages.push(e),(async()=>{for(let t of this.subscribers)await t.onNewMessage?.({message:e,messages:this.messages,state:this.state,agent:this});if(e.role===`assistant`&&e.toolCalls)for(let t of e.toolCalls)for(let e of this.subscribers)await e.onNewToolCall?.({toolCall:t,messages:this.messages,state:this.state,agent:this});for(let e of this.subscribers)await e.onMessagesChanged?.({messages:this.messages,state:this.state,agent:this})})()}addMessages(e){this.messages.push(...e),(async()=>{for(let t of e){for(let e of this.subscribers)await e.onNewMessage?.({message:t,messages:this.messages,state:this.state,agent:this});if(t.role===`assistant`&&t.toolCalls)for(let e of t.toolCalls)for(let t of this.subscribers)await t.onNewToolCall?.({toolCall:e,messages:this.messages,state:this.state,agent:this})}for(let e of this.subscribers)await e.onMessagesChanged?.({messages:this.messages,state:this.state,agent:this})})()}setMessages(e){this.messages=b(e),(async()=>{for(let e of this.subscribers)await e.onMessagesChanged?.({messages:this.messages,state:this.state,agent:this})})()}setState(e){this.state=b(e),(async()=>{for(let e of this.subscribers)await e.onStateChanged?.({messages:this.messages,state:this.state,agent:this})})()}legacy_to_be_removed_runAgentBridged(e){this.agentId=this.agentId??(0,c.v4)();let t=this.prepareRunAgentInput(e);return[...this.middlewares,new Z].reduceRight((e,t)=>({run:n=>t.run(n,e),get messages(){return e.messages},get state(){return e.state}}),this).run(t).pipe(H(this.debugLogger),R(this.debugLogger),A(this.debugLogger),me(this.threadId,t.runId,this.agentId),e=>e.pipe((0,f.map)(e=>(this.debugLogger?.event(`LEGACY`,`Event:`,e,{type:e.type}),e))))}};function ht(e){if(!Array.isArray(e.messages))return e;let t=!1,n=e.messages.map(e=>{if(e.subagentRunId===null){t=!0;let n={...e};return delete n.subagentRunId,n}return e});return t?{...e,messages:n}:e}var gt=class extends mt{requestInit(e){return{method:`POST`,headers:{...this.headers,"Content-Type":`application/json`,Accept:`text/event-stream`},body:JSON.stringify(ht(e)),signal:this.abortController.signal}}runAgent(e,t){return this.abortController=e?.abortController??new AbortController,super.runAgent(e,t)}abortRun(){this.abortController.abort(),super.abortRun()}constructor(e){super(e),this.abortController=new AbortController,this.url=e.url,this.headers=b(e.headers??{}),this.fetch=e.fetch??((e,t)=>fetch(e,t))}run(e){return de(ae(()=>this.fetch(this.url,this.requestInit(Ne(e)))),this.debugLogger)}clone(){let e=super.clone();e.url=this.url,e.headers=b(this.headers??{}),e.fetch=this.fetch;let t=new AbortController,n=this.abortController.signal;return n.aborted&&t.abort(n.reason),e.abortController=t,e}};function _t(e,t){if(e===void 0)return t;let n=(0,l.mergeMetadata)(e.metadata,t.metadata);return n===void 0?t:{...t,metadata:n}}function vt(e,t){let{metadata:n,...r}=t,i=e?.metadata;return i===void 0?r:{...r,metadata:i}}function yt(e){let t;for(let n of e)t=(0,l.mergeMetadata)(t,n.metadata);return t}function bt(e){let t=[],n=new Map,r=new Map,i=[];for(let a of e)if(a.type===l.EventType.TEXT_MESSAGE_START){let e=a,t=e.messageId;n.has(t)||n.set(t,{contents:[],otherEvents:[]});let r=n.get(t);r.contents.length===0?r.start=_t(r.start,e):(r.start=vt(r.start,e),r.postStartMetadata=(0,l.mergeMetadata)(r.postStartMetadata,e.metadata))}else if(a.type===l.EventType.TEXT_MESSAGE_CONTENT){let e=a,t=e.messageId;n.has(t)||n.set(t,{contents:[],otherEvents:[]});let r=n.get(t);r.contents.push(e),r.postStartMetadata=(0,l.mergeMetadata)(r.postStartMetadata,e.metadata)}else if(a.type===l.EventType.TEXT_MESSAGE_END){let e=a,r=e.messageId;n.has(r)||n.set(r,{contents:[],otherEvents:[]});let i=n.get(r);i.end=e,xt(r,i,t),n.delete(r)}else if(a.type===l.EventType.TOOL_CALL_START){let e=a,t=e.toolCallId;r.has(t)||r.set(t,{args:[],otherEvents:[]});let n=r.get(t);n.args.length===0?n.start=_t(n.start,e):(n.start=vt(n.start,e),n.postStartMetadata=(0,l.mergeMetadata)(n.postStartMetadata,e.metadata))}else if(a.type===l.EventType.TOOL_CALL_ARGS){let e=a,t=e.toolCallId;r.has(t)||r.set(t,{args:[],otherEvents:[]});let n=r.get(t);n.args.push(e),n.postStartMetadata=(0,l.mergeMetadata)(n.postStartMetadata,e.metadata)}else if(a.type===l.EventType.TOOL_CALL_END){let e=a,n=e.toolCallId;r.has(n)||r.set(n,{args:[],otherEvents:[]});let i=r.get(n);i.end=e,St(n,i,t),r.delete(n)}else if(a.type===l.EventType.RUN_STARTED)wt(i,t),i=[],t.push(a);else if(a.type===l.EventType.RUN_FINISHED||a.type===l.EventType.RUN_ERROR)wt(i,t),i=[],t.push(a);else if(a.type===l.EventType.STATE_SNAPSHOT||a.type===l.EventType.STATE_DELTA)i.push(a);else{let e=!1;for(let[,t]of n)if(t.start&&!t.end){t.otherEvents.push(a),e=!0;break}if(!e){for(let[,t]of r)if(t.start&&!t.end){t.otherEvents.push(a),e=!0;break}}e||t.push(a)}for(let[e,r]of n)xt(e,r,t);for(let[e,n]of r)St(e,n,t);return wt(i,t),t}function xt(e,t,n){if(t.start&&n.push(t.start),t.contents.length>0){let r=t.contents.map(e=>e.delta).join(``),i=t.postStartMetadata,a={type:l.EventType.TEXT_MESSAGE_CONTENT,messageId:e,delta:r,...i!==void 0&&{metadata:i}};n.push(a)}t.end&&n.push(t.end);for(let e of t.otherEvents)n.push(e)}function St(e,t,n){if(t.start&&n.push(t.start),t.args.length>0){let r=t.args.map(e=>e.delta).join(``),i=t.postStartMetadata,a={type:l.EventType.TOOL_CALL_ARGS,toolCallId:e,delta:r,...i!==void 0&&{metadata:i}};n.push(a)}t.end&&n.push(t.end);for(let e of t.otherEvents)n.push(e)}const Ct=e=>{typeof process<`u`&&process.env!==void 0&&process.env.SUPPRESS_TRANSFORMATION_WARNINGS||console.warn(e)};function wt(e,t){if(e.length===0)return;let n=-1;for(let t=e.length-1;t>=0;t--)if(e[t].type===l.EventType.STATE_SNAPSHOT){n=t;break}if(n===-1){t.push(...e);return}let r={};for(let t of e.slice(n))if(t.type===l.EventType.STATE_SNAPSHOT)r=b(t.snapshot);else try{r=u.default.applyPatch(r,b(t.delta),!0,!1).newDocument}catch(e){let n=e instanceof Error?e.message:String(e);Ct(`[ag-ui][compact] Failed to apply state patch while compacting:\nCurrent state: ${JSON.stringify(r,null,2)}\nPatch operations: ${JSON.stringify(t.delta,null,2)}\nError: ${n}`)}let i=yt(e),a={type:l.EventType.STATE_SNAPSHOT,snapshot:r,...i!==void 0&&{metadata:i}};t.push(a)}exports.ACTIVITY_HISTORY_METADATA=v,exports.AbstractAgent=mt,exports.BackwardCompatibility_0_0_39=$e,exports.BackwardCompatibility_0_0_45=at,exports.BackwardCompatibility_0_0_57=ut,exports.CompatibilityBoundary=Z,exports.DebugLogger=E,exports.FilterToolCallsMiddleware=Je,exports.FunctionMiddleware=Pe,exports.HttpAgent=gt,exports.Middleware=U,exports.authoritativeActivityTypes=y,exports.buildResumeArray=qe,exports.compactEvents=bt,exports.convertToLegacyEvents=me,exports.createDebugLogger=D,exports.defaultApplyEvents=k,exports.enforceEvents=H,exports.enforceOutgoingInput=Ne,exports.getRunOutcome=Ge,exports.isInterruptExpired=Ke,exports.isRecognizedEvent=ke,exports.parseProtoStream=ue,exports.parseSSEStream=se,exports.randomUUID=x,exports.resolveAgentDebugConfig=w,exports.resolveDebugLogger=T,exports.runHttpRequest=ae,exports.structuredClone_=b,exports.transformChunks=R,exports.transformHttpEventStream=de,exports.verifyEvents=A,exports.withAuthoritativeActivityTypes=ee,Object.keys(l).forEach(function(e){e!==`default`&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return l[e]}})});
5
5
  //# sourceMappingURL=index.js.map