beeai-framework 0.1.17 → 0.1.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (225) hide show
  1. package/dist/adapters/a2a/agents/agent.cjs +296 -0
  2. package/dist/adapters/a2a/agents/agent.cjs.map +1 -0
  3. package/dist/adapters/a2a/agents/agent.d.cts +55 -0
  4. package/dist/adapters/a2a/agents/agent.d.ts +55 -0
  5. package/dist/adapters/a2a/agents/agent.js +294 -0
  6. package/dist/adapters/a2a/agents/agent.js.map +1 -0
  7. package/dist/adapters/a2a/agents/events.cjs +4 -0
  8. package/dist/adapters/a2a/agents/events.cjs.map +1 -0
  9. package/dist/adapters/a2a/agents/events.d.cts +23 -0
  10. package/dist/adapters/a2a/agents/events.d.ts +23 -0
  11. package/dist/adapters/a2a/agents/events.js +3 -0
  12. package/dist/adapters/a2a/agents/events.js.map +1 -0
  13. package/dist/adapters/a2a/agents/types.cjs +4 -0
  14. package/dist/adapters/a2a/agents/types.cjs.map +1 -0
  15. package/dist/adapters/a2a/agents/types.d.cts +45 -0
  16. package/dist/adapters/a2a/agents/types.d.ts +45 -0
  17. package/dist/adapters/a2a/agents/types.js +3 -0
  18. package/dist/adapters/a2a/agents/types.js.map +1 -0
  19. package/dist/adapters/a2a/agents/utils.cjs +41 -0
  20. package/dist/adapters/a2a/agents/utils.cjs.map +1 -0
  21. package/dist/adapters/a2a/agents/utils.d.cts +15 -0
  22. package/dist/adapters/a2a/agents/utils.d.ts +15 -0
  23. package/dist/adapters/a2a/agents/utils.js +39 -0
  24. package/dist/adapters/a2a/agents/utils.js.map +1 -0
  25. package/dist/adapters/a2a/serve/agent_executor.cjs +233 -0
  26. package/dist/adapters/a2a/serve/agent_executor.cjs.map +1 -0
  27. package/dist/adapters/a2a/serve/agent_executor.d.cts +55 -0
  28. package/dist/adapters/a2a/serve/agent_executor.d.ts +55 -0
  29. package/dist/adapters/a2a/serve/agent_executor.js +229 -0
  30. package/dist/adapters/a2a/serve/agent_executor.js.map +1 -0
  31. package/dist/adapters/a2a/serve/server.cjs +112 -0
  32. package/dist/adapters/a2a/serve/server.cjs.map +1 -0
  33. package/dist/adapters/a2a/serve/server.d.cts +56 -0
  34. package/dist/adapters/a2a/serve/server.d.ts +56 -0
  35. package/dist/adapters/a2a/serve/server.js +105 -0
  36. package/dist/adapters/a2a/serve/server.js.map +1 -0
  37. package/dist/adapters/acp/agents/agent.d.cts +2 -2
  38. package/dist/adapters/acp/agents/agent.d.ts +2 -2
  39. package/dist/adapters/acp/agents/events.d.cts +1 -1
  40. package/dist/adapters/acp/agents/events.d.ts +1 -1
  41. package/dist/adapters/amazon-bedrock/backend/chat.d.cts +2 -2
  42. package/dist/adapters/amazon-bedrock/backend/chat.d.ts +2 -2
  43. package/dist/adapters/amazon-bedrock/backend/embedding.d.cts +2 -2
  44. package/dist/adapters/amazon-bedrock/backend/embedding.d.ts +2 -2
  45. package/dist/adapters/anthropic/backend/chat.d.cts +2 -2
  46. package/dist/adapters/anthropic/backend/chat.d.ts +2 -2
  47. package/dist/adapters/anthropic/backend/embedding.d.cts +2 -2
  48. package/dist/adapters/anthropic/backend/embedding.d.ts +2 -2
  49. package/dist/adapters/azure-openai/backend/chat.d.cts +2 -2
  50. package/dist/adapters/azure-openai/backend/chat.d.ts +2 -2
  51. package/dist/adapters/azure-openai/backend/embedding.d.cts +2 -2
  52. package/dist/adapters/azure-openai/backend/embedding.d.ts +2 -2
  53. package/dist/adapters/beeai_platform/agents/agent.d.cts +2 -2
  54. package/dist/adapters/beeai_platform/agents/agent.d.ts +2 -2
  55. package/dist/adapters/beeai_platform/agents/events.d.cts +1 -1
  56. package/dist/adapters/beeai_platform/agents/events.d.ts +1 -1
  57. package/dist/adapters/dummy/backend/chat.d.cts +2 -2
  58. package/dist/adapters/dummy/backend/chat.d.ts +2 -2
  59. package/dist/adapters/dummy/backend/embedding.d.cts +2 -2
  60. package/dist/adapters/dummy/backend/embedding.d.ts +2 -2
  61. package/dist/adapters/google-vertex/backend/chat.d.cts +2 -2
  62. package/dist/adapters/google-vertex/backend/chat.d.ts +2 -2
  63. package/dist/adapters/google-vertex/backend/embedding.d.cts +2 -2
  64. package/dist/adapters/google-vertex/backend/embedding.d.ts +2 -2
  65. package/dist/adapters/groq/backend/chat.d.cts +2 -2
  66. package/dist/adapters/groq/backend/chat.d.ts +2 -2
  67. package/dist/adapters/groq/backend/embedding.d.cts +2 -2
  68. package/dist/adapters/groq/backend/embedding.d.ts +2 -2
  69. package/dist/adapters/langchain/backend/chat.d.cts +2 -2
  70. package/dist/adapters/langchain/backend/chat.d.ts +2 -2
  71. package/dist/adapters/langchain/backend/embedding.d.cts +2 -2
  72. package/dist/adapters/langchain/backend/embedding.d.ts +2 -2
  73. package/dist/adapters/langchain/tools.d.cts +1 -1
  74. package/dist/adapters/langchain/tools.d.ts +1 -1
  75. package/dist/adapters/mcp/serve/http_server.cjs +5 -1
  76. package/dist/adapters/mcp/serve/http_server.cjs.map +1 -1
  77. package/dist/adapters/mcp/serve/http_server.js +5 -1
  78. package/dist/adapters/mcp/serve/http_server.js.map +1 -1
  79. package/dist/adapters/mcp/serve/server.cjs +1 -1
  80. package/dist/adapters/mcp/serve/server.cjs.map +1 -1
  81. package/dist/adapters/mcp/serve/server.d.cts +2 -2
  82. package/dist/adapters/mcp/serve/server.d.ts +2 -2
  83. package/dist/adapters/mcp/serve/server.js +1 -1
  84. package/dist/adapters/mcp/serve/server.js.map +1 -1
  85. package/dist/adapters/ollama/backend/chat.d.cts +2 -2
  86. package/dist/adapters/ollama/backend/chat.d.ts +2 -2
  87. package/dist/adapters/ollama/backend/embedding.d.cts +2 -2
  88. package/dist/adapters/ollama/backend/embedding.d.ts +2 -2
  89. package/dist/adapters/openai/backend/chat.d.cts +2 -2
  90. package/dist/adapters/openai/backend/chat.d.ts +2 -2
  91. package/dist/adapters/openai/backend/embedding.d.cts +2 -2
  92. package/dist/adapters/openai/backend/embedding.d.ts +2 -2
  93. package/dist/adapters/vercel/backend/chat.d.cts +2 -2
  94. package/dist/adapters/vercel/backend/chat.d.ts +2 -2
  95. package/dist/adapters/vercel/backend/embedding.d.cts +2 -2
  96. package/dist/adapters/vercel/backend/embedding.d.ts +2 -2
  97. package/dist/adapters/watsonx/backend/chat.d.cts +2 -2
  98. package/dist/adapters/watsonx/backend/chat.d.ts +2 -2
  99. package/dist/adapters/watsonx/backend/embedding.d.cts +2 -2
  100. package/dist/adapters/watsonx/backend/embedding.d.ts +2 -2
  101. package/dist/adapters/xai/backend/chat.d.cts +2 -2
  102. package/dist/adapters/xai/backend/chat.d.ts +2 -2
  103. package/dist/{agent-CUzHyTQd.d.ts → agent-7NzfPC6d.d.ts} +3 -3
  104. package/dist/{agent-Cqh2zuKJ.d.cts → agent-B6pOfx0K.d.cts} +3 -3
  105. package/dist/agents/base.d.cts +2 -2
  106. package/dist/agents/base.d.ts +2 -2
  107. package/dist/agents/experimental/replan/agent.d.cts +3 -3
  108. package/dist/agents/experimental/replan/agent.d.ts +3 -3
  109. package/dist/agents/experimental/replan/prompts.d.cts +1 -1
  110. package/dist/agents/experimental/replan/prompts.d.ts +1 -1
  111. package/dist/agents/experimental/streamlit/agent.d.cts +3 -3
  112. package/dist/agents/experimental/streamlit/agent.d.ts +3 -3
  113. package/dist/agents/react/agent.d.cts +4 -4
  114. package/dist/agents/react/agent.d.ts +4 -4
  115. package/dist/agents/react/prompts.d.cts +1 -1
  116. package/dist/agents/react/prompts.d.ts +1 -1
  117. package/dist/agents/react/runners/base.d.cts +4 -4
  118. package/dist/agents/react/runners/base.d.ts +4 -4
  119. package/dist/agents/react/runners/deep-think/prompts.d.cts +1 -1
  120. package/dist/agents/react/runners/deep-think/prompts.d.ts +1 -1
  121. package/dist/agents/react/runners/deep-think/runner.d.cts +5 -5
  122. package/dist/agents/react/runners/deep-think/runner.d.ts +5 -5
  123. package/dist/agents/react/runners/default/runner.d.cts +5 -5
  124. package/dist/agents/react/runners/default/runner.d.ts +5 -5
  125. package/dist/agents/react/runners/granite/prompts.d.cts +1 -1
  126. package/dist/agents/react/runners/granite/prompts.d.ts +1 -1
  127. package/dist/agents/react/runners/granite/runner.d.cts +5 -5
  128. package/dist/agents/react/runners/granite/runner.d.ts +5 -5
  129. package/dist/agents/react/types.d.cts +2 -2
  130. package/dist/agents/react/types.d.ts +2 -2
  131. package/dist/agents/toolCalling/agent.d.cts +3 -3
  132. package/dist/agents/toolCalling/agent.d.ts +3 -3
  133. package/dist/agents/toolCalling/types.d.cts +1 -1
  134. package/dist/agents/toolCalling/types.d.ts +1 -1
  135. package/dist/agents/types.d.cts +2 -2
  136. package/dist/agents/types.d.ts +2 -2
  137. package/dist/backend/backend.d.cts +2 -2
  138. package/dist/backend/backend.d.ts +2 -2
  139. package/dist/backend/chat.d.cts +2 -2
  140. package/dist/backend/chat.d.ts +2 -2
  141. package/dist/backend/core.d.cts +2 -2
  142. package/dist/backend/core.d.ts +2 -2
  143. package/dist/backend/embedding.d.cts +2 -2
  144. package/dist/backend/embedding.d.ts +2 -2
  145. package/dist/backend/message.cjs.map +1 -1
  146. package/dist/backend/message.d.cts +1 -1
  147. package/dist/backend/message.d.ts +1 -1
  148. package/dist/backend/message.js.map +1 -1
  149. package/dist/backend/utils.d.cts +2 -2
  150. package/dist/backend/utils.d.ts +2 -2
  151. package/dist/{base-BrMAtrc_.d.ts → base-Bguef5Dg.d.ts} +2 -2
  152. package/dist/{base-Bc-Xv1jG.d.cts → base-C1hO5EJe.d.cts} +2 -2
  153. package/dist/{chat-W9j8T6UU.d.ts → chat-BBoOSvzm.d.ts} +1 -1
  154. package/dist/{chat-CR4yfOR9.d.cts → chat-BZ55YQab.d.cts} +1 -1
  155. package/dist/context.d.cts +1 -1
  156. package/dist/context.d.ts +1 -1
  157. package/dist/emitter/emitter.d.cts +1 -1
  158. package/dist/emitter/emitter.d.ts +1 -1
  159. package/dist/emitter/types.d.cts +1 -1
  160. package/dist/emitter/types.d.ts +1 -1
  161. package/dist/index.d.cts +3 -3
  162. package/dist/index.d.ts +3 -3
  163. package/dist/internals/fetcher.d.cts +1 -1
  164. package/dist/internals/fetcher.d.ts +1 -1
  165. package/dist/memory/summarizeMemory.d.cts +2 -2
  166. package/dist/memory/summarizeMemory.d.ts +2 -2
  167. package/dist/parsers/linePrefix.d.cts +1 -1
  168. package/dist/parsers/linePrefix.d.ts +1 -1
  169. package/dist/serve/server.cjs +12 -5
  170. package/dist/serve/server.cjs.map +1 -1
  171. package/dist/serve/server.d.cts +4 -3
  172. package/dist/serve/server.d.ts +4 -3
  173. package/dist/serve/server.js +12 -5
  174. package/dist/serve/server.js.map +1 -1
  175. package/dist/tools/arxiv.d.cts +1 -1
  176. package/dist/tools/arxiv.d.ts +1 -1
  177. package/dist/tools/base.d.cts +1 -1
  178. package/dist/tools/base.d.ts +1 -1
  179. package/dist/tools/calculator.d.cts +1 -1
  180. package/dist/tools/calculator.d.ts +1 -1
  181. package/dist/tools/custom.d.cts +2 -2
  182. package/dist/tools/custom.d.ts +2 -2
  183. package/dist/tools/database/elasticsearch.d.cts +1 -1
  184. package/dist/tools/database/elasticsearch.d.ts +1 -1
  185. package/dist/tools/database/milvus.d.cts +1 -1
  186. package/dist/tools/database/milvus.d.ts +1 -1
  187. package/dist/tools/database/qdrant.d.cts +1 -1
  188. package/dist/tools/database/qdrant.d.ts +1 -1
  189. package/dist/tools/database/sql.d.cts +1 -1
  190. package/dist/tools/database/sql.d.ts +1 -1
  191. package/dist/tools/llm.d.cts +2 -2
  192. package/dist/tools/llm.d.ts +2 -2
  193. package/dist/tools/mcp.d.cts +1 -1
  194. package/dist/tools/mcp.d.ts +1 -1
  195. package/dist/tools/openapi.d.cts +1 -1
  196. package/dist/tools/openapi.d.ts +1 -1
  197. package/dist/tools/python/output.d.cts +1 -1
  198. package/dist/tools/python/output.d.ts +1 -1
  199. package/dist/tools/python/python.d.cts +2 -2
  200. package/dist/tools/python/python.d.ts +2 -2
  201. package/dist/tools/search/base.d.cts +1 -1
  202. package/dist/tools/search/base.d.ts +1 -1
  203. package/dist/tools/search/duckDuckGoSearch.d.cts +1 -1
  204. package/dist/tools/search/duckDuckGoSearch.d.ts +1 -1
  205. package/dist/tools/search/googleSearch.d.cts +1 -1
  206. package/dist/tools/search/googleSearch.d.ts +1 -1
  207. package/dist/tools/search/searXNGSearch.d.cts +1 -1
  208. package/dist/tools/search/searXNGSearch.d.ts +1 -1
  209. package/dist/tools/search/wikipedia.d.cts +1 -1
  210. package/dist/tools/search/wikipedia.d.ts +1 -1
  211. package/dist/tools/similarity.d.cts +1 -1
  212. package/dist/tools/similarity.d.ts +1 -1
  213. package/dist/tools/weather/openMeteo.d.cts +1 -1
  214. package/dist/tools/weather/openMeteo.d.ts +1 -1
  215. package/dist/tools/web/webCrawler.d.cts +1 -1
  216. package/dist/tools/web/webCrawler.d.ts +1 -1
  217. package/dist/version.cjs +1 -1
  218. package/dist/version.js +1 -1
  219. package/dist/workflows/agent.d.cts +3 -3
  220. package/dist/workflows/agent.d.ts +3 -3
  221. package/dist/workflows/workflow.d.cts +1 -1
  222. package/dist/workflows/workflow.d.ts +1 -1
  223. package/package.json +7 -2
  224. package/dist/{emitter-C9nwGLt6.d.ts → emitter-BqpLJQVb.d.ts} +1 -1
  225. package/dist/{emitter-DWEsd-ud.d.cts → emitter-pJzHC_AM.d.cts} +1 -1
@@ -1,12 +1,12 @@
1
1
  import '../internals/types.js';
2
2
  import './constants.js';
3
3
  import '../tools/base.js';
4
- export { F as FullModelName, r as filterToolsByToolChoice, q as generateToolUnionSchema, o as loadModel, p as parseModel } from '../chat-W9j8T6UU.js';
4
+ export { F as FullModelName, r as filterToolsByToolChoice, q as generateToolUnionSchema, o as loadModel, p as parseModel } from '../chat-BBoOSvzm.js';
5
5
  import 'zod';
6
6
  import '../internals/helpers/guards.js';
7
7
  import 'ajv';
8
8
  import '../context.js';
9
- import '../emitter-C9nwGLt6.js';
9
+ import '../emitter-BqpLJQVb.js';
10
10
  import '../internals/serializable.js';
11
11
  import '../internals/helpers/promise.js';
12
12
  import '../errors.js';
@@ -1,7 +1,7 @@
1
1
  import { Run, GetRunContext } from './context.js';
2
2
  import { FrameworkError } from './errors.js';
3
3
  import { Serializable } from './internals/serializable.js';
4
- import { E as Emitter } from './emitter-C9nwGLt6.js';
4
+ import { E as Emitter } from './emitter-BqpLJQVb.js';
5
5
  import { BaseMemory } from './memory/base.js';
6
6
  import { OmitEmpty } from './internals/types.js';
7
7
  import { AnyTool } from './tools/base.js';
@@ -52,4 +52,4 @@ declare abstract class BaseAgent<TInput, TOutput, TOptions extends BaseAgentRunO
52
52
  loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>): void;
53
53
  }
54
54
 
55
- export { AgentError as A, type BaseAgentRunOptions as B, type GetAgentInput as G, type InternalAgentCallbackValue as I, type PublicAgentCallbackValue as P, BaseAgent as a, type AgentMeta as b, type AgentCallbackValue as c, type AgentCallback as d, type GetAgentOutput as e, type AnyAgent as f };
55
+ export { AgentError as A, type BaseAgentRunOptions as B, type GetAgentInput as G, type InternalAgentCallbackValue as I, type PublicAgentCallbackValue as P, BaseAgent as a, type AgentMeta as b, type AnyAgent as c, type AgentCallbackValue as d, type AgentCallback as e, type GetAgentOutput as f };
@@ -1,7 +1,7 @@
1
1
  import { Run, GetRunContext } from './context.cjs';
2
2
  import { FrameworkError } from './errors.cjs';
3
3
  import { Serializable } from './internals/serializable.cjs';
4
- import { E as Emitter } from './emitter-DWEsd-ud.cjs';
4
+ import { E as Emitter } from './emitter-pJzHC_AM.cjs';
5
5
  import { BaseMemory } from './memory/base.cjs';
6
6
  import { OmitEmpty } from './internals/types.cjs';
7
7
  import { AnyTool } from './tools/base.cjs';
@@ -52,4 +52,4 @@ declare abstract class BaseAgent<TInput, TOutput, TOptions extends BaseAgentRunO
52
52
  loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>): void;
53
53
  }
54
54
 
55
- export { AgentError as A, type BaseAgentRunOptions as B, type GetAgentInput as G, type InternalAgentCallbackValue as I, type PublicAgentCallbackValue as P, BaseAgent as a, type AgentMeta as b, type AgentCallbackValue as c, type AgentCallback as d, type GetAgentOutput as e, type AnyAgent as f };
55
+ export { AgentError as A, type BaseAgentRunOptions as B, type GetAgentInput as G, type InternalAgentCallbackValue as I, type PublicAgentCallbackValue as P, BaseAgent as a, type AgentMeta as b, type AnyAgent as c, type AgentCallbackValue as d, type AgentCallback as e, type GetAgentOutput as f };
@@ -2,7 +2,7 @@ import { Message, AssistantMessage, MessageContentPart } from './backend/message
2
2
  import * as ai from 'ai';
3
3
  import { Run, GetRunContext } from './context.js';
4
4
  import { Serializable } from './internals/serializable.js';
5
- import { C as Callback, E as Emitter } from './emitter-C9nwGLt6.js';
5
+ import { C as Callback, E as Emitter } from './emitter-BqpLJQVb.js';
6
6
  import { FrameworkError } from './errors.js';
7
7
  import { Task } from 'promise-based-task';
8
8
  import { BaseCache } from './cache/base.js';
@@ -2,7 +2,7 @@ import { Message, AssistantMessage, MessageContentPart } from './backend/message
2
2
  import * as ai from 'ai';
3
3
  import { Run, GetRunContext } from './context.cjs';
4
4
  import { Serializable } from './internals/serializable.cjs';
5
- import { C as Callback, E as Emitter } from './emitter-DWEsd-ud.cjs';
5
+ import { C as Callback, E as Emitter } from './emitter-pJzHC_AM.cjs';
6
6
  import { FrameworkError } from './errors.cjs';
7
7
  import { Task } from 'promise-based-task';
8
8
  import { BaseCache } from './cache/base.cjs';
@@ -1,4 +1,4 @@
1
- import { E as Emitter, C as Callback } from './emitter-DWEsd-ud.cjs';
1
+ import { E as Emitter, C as Callback } from './emitter-pJzHC_AM.cjs';
2
2
  import { Serializable } from './internals/serializable.cjs';
3
3
  import { LazyPromise } from './internals/helpers/promise.cjs';
4
4
  import './internals/types.cjs';
package/dist/context.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { E as Emitter, C as Callback } from './emitter-C9nwGLt6.js';
1
+ import { E as Emitter, C as Callback } from './emitter-BqpLJQVb.js';
2
2
  import { Serializable } from './internals/serializable.js';
3
3
  import { LazyPromise } from './internals/helpers/promise.js';
4
4
  import './internals/types.js';
@@ -1,4 +1,4 @@
1
- export { C as Callback, E as Emitter, g as EmitterChildInput, f as EmitterInput, e as EventMeta, d as EventTrace } from '../emitter-DWEsd-ud.cjs';
1
+ export { C as Callback, E as Emitter, g as EmitterChildInput, f as EmitterInput, e as EventMeta, d as EventTrace } from '../emitter-pJzHC_AM.cjs';
2
2
  import '../internals/types.cjs';
3
3
  import '../internals/serializable.cjs';
4
4
  import '../internals/helpers/guards.cjs';
@@ -1,4 +1,4 @@
1
- export { C as Callback, E as Emitter, g as EmitterChildInput, f as EmitterInput, e as EventMeta, d as EventTrace } from '../emitter-C9nwGLt6.js';
1
+ export { C as Callback, E as Emitter, g as EmitterChildInput, f as EmitterInput, e as EventMeta, d as EventTrace } from '../emitter-BqpLJQVb.js';
2
2
  import '../internals/types.js';
3
3
  import '../internals/serializable.js';
4
4
  import '../internals/helpers/guards.js';
@@ -1,4 +1,4 @@
1
1
  import '../internals/types.cjs';
2
- export { C as Callback, b as CleanupFn, c as EmitterOptions, e as EventMeta, d as EventTrace, I as InferCallbackValue, a as Matcher, M as MatcherFn, S as StringKey } from '../emitter-DWEsd-ud.cjs';
2
+ export { C as Callback, b as CleanupFn, c as EmitterOptions, e as EventMeta, d as EventTrace, I as InferCallbackValue, a as Matcher, M as MatcherFn, S as StringKey } from '../emitter-pJzHC_AM.cjs';
3
3
  import '../internals/helpers/guards.cjs';
4
4
  import '../internals/serializable.cjs';
@@ -1,4 +1,4 @@
1
1
  import '../internals/types.js';
2
- export { C as Callback, b as CleanupFn, c as EmitterOptions, e as EventMeta, d as EventTrace, I as InferCallbackValue, a as Matcher, M as MatcherFn, S as StringKey } from '../emitter-C9nwGLt6.js';
2
+ export { C as Callback, b as CleanupFn, c as EmitterOptions, e as EventMeta, d as EventTrace, I as InferCallbackValue, a as Matcher, M as MatcherFn, S as StringKey } from '../emitter-BqpLJQVb.js';
3
3
  import '../internals/helpers/guards.js';
4
4
  import '../internals/serializable.js';
package/dist/index.d.cts CHANGED
@@ -3,8 +3,8 @@ export { PromptTemplate, PromptTemplateError, PromptTemplateInput, PromptTemplat
3
3
  export { AbortError, FrameworkError, FrameworkErrorOptions, NotImplementedError, ValueError } from './errors.cjs';
4
4
  export { Version } from './version.cjs';
5
5
  export { S as SerializeFactory, a as Serializer } from './serializer-BKn50Vnx.cjs';
6
- export { A as AgentError, a as BaseAgent, B as BaseAgentRunOptions } from './base-Bc-Xv1jG.cjs';
7
- export { k as ChatConfig, m as ChatModel, i as ChatModelCache, h as ChatModelEmitter, g as ChatModelEvents, e as ChatModelFinishReason, d as ChatModelInput, a as ChatModelObjectInput, b as ChatModelObjectOutput, n as ChatModelOutput, C as ChatModelParameters, c as ChatModelToolChoice, l as ChatModelToolChoiceSupport, f as ChatModelUsage, j as ConfigFn } from './chat-CR4yfOR9.cjs';
6
+ export { A as AgentError, a as BaseAgent, B as BaseAgentRunOptions } from './base-C1hO5EJe.cjs';
7
+ export { k as ChatConfig, m as ChatModel, i as ChatModelCache, h as ChatModelEmitter, g as ChatModelEvents, e as ChatModelFinishReason, d as ChatModelInput, a as ChatModelObjectInput, b as ChatModelObjectOutput, n as ChatModelOutput, C as ChatModelParameters, c as ChatModelToolChoice, l as ChatModelToolChoiceSupport, f as ChatModelUsage, j as ConfigFn } from './chat-BZ55YQab.cjs';
8
8
  export { EmbeddingModel, EmbeddingModelEmitter, EmbeddingModelEvents, EmbeddingModelInput, EmbeddingModelOutput } from './backend/embedding.cjs';
9
9
  export { AnyTool, BaseToolOptions, BaseToolRunOptions, DynamicTool, InferToolOutput, JSONToolOutput, RetryOptions, StringToolOutput, Tool, ToolEmitter, ToolError, ToolEvents, ToolInput, ToolInputRaw, ToolInputValidationError, ToolOutput, ToolSnapshot } from './tools/base.cjs';
10
10
  import 'pino';
@@ -14,7 +14,7 @@ import './internals/helpers/guards.cjs';
14
14
  import 'zod';
15
15
  import 'ajv';
16
16
  import './context.cjs';
17
- import './emitter-DWEsd-ud.cjs';
17
+ import './emitter-pJzHC_AM.cjs';
18
18
  import './internals/helpers/promise.cjs';
19
19
  import './memory/base.cjs';
20
20
  import './backend/message.cjs';
package/dist/index.d.ts CHANGED
@@ -3,8 +3,8 @@ export { PromptTemplate, PromptTemplateError, PromptTemplateInput, PromptTemplat
3
3
  export { AbortError, FrameworkError, FrameworkErrorOptions, NotImplementedError, ValueError } from './errors.js';
4
4
  export { Version } from './version.js';
5
5
  export { S as SerializeFactory, a as Serializer } from './serializer-CQxucveV.js';
6
- export { A as AgentError, a as BaseAgent, B as BaseAgentRunOptions } from './base-BrMAtrc_.js';
7
- export { k as ChatConfig, m as ChatModel, i as ChatModelCache, h as ChatModelEmitter, g as ChatModelEvents, e as ChatModelFinishReason, d as ChatModelInput, a as ChatModelObjectInput, b as ChatModelObjectOutput, n as ChatModelOutput, C as ChatModelParameters, c as ChatModelToolChoice, l as ChatModelToolChoiceSupport, f as ChatModelUsage, j as ConfigFn } from './chat-W9j8T6UU.js';
6
+ export { A as AgentError, a as BaseAgent, B as BaseAgentRunOptions } from './base-Bguef5Dg.js';
7
+ export { k as ChatConfig, m as ChatModel, i as ChatModelCache, h as ChatModelEmitter, g as ChatModelEvents, e as ChatModelFinishReason, d as ChatModelInput, a as ChatModelObjectInput, b as ChatModelObjectOutput, n as ChatModelOutput, C as ChatModelParameters, c as ChatModelToolChoice, l as ChatModelToolChoiceSupport, f as ChatModelUsage, j as ConfigFn } from './chat-BBoOSvzm.js';
8
8
  export { EmbeddingModel, EmbeddingModelEmitter, EmbeddingModelEvents, EmbeddingModelInput, EmbeddingModelOutput } from './backend/embedding.js';
9
9
  export { AnyTool, BaseToolOptions, BaseToolRunOptions, DynamicTool, InferToolOutput, JSONToolOutput, RetryOptions, StringToolOutput, Tool, ToolEmitter, ToolError, ToolEvents, ToolInput, ToolInputRaw, ToolInputValidationError, ToolOutput, ToolSnapshot } from './tools/base.js';
10
10
  import 'pino';
@@ -14,7 +14,7 @@ import './internals/helpers/guards.js';
14
14
  import 'zod';
15
15
  import 'ajv';
16
16
  import './context.js';
17
- import './emitter-C9nwGLt6.js';
17
+ import './emitter-BqpLJQVb.js';
18
18
  import './internals/helpers/promise.js';
19
19
  import './memory/base.js';
20
20
  import './backend/message.js';
@@ -2,7 +2,7 @@ import { FrameworkError } from '../errors.cjs';
2
2
  import { Serializable } from './serializable.cjs';
3
3
  import { EventSourceMessage } from '@ai-zen/node-fetch-event-source';
4
4
  import { FetchEventSourceInit } from '@ai-zen/node-fetch-event-source/lib/cjs/fetch.js';
5
- import { C as Callback, E as Emitter } from '../emitter-DWEsd-ud.cjs';
5
+ import { C as Callback, E as Emitter } from '../emitter-pJzHC_AM.cjs';
6
6
  import './types.cjs';
7
7
  import './helpers/guards.cjs';
8
8
 
@@ -2,7 +2,7 @@ import { FrameworkError } from '../errors.js';
2
2
  import { Serializable } from './serializable.js';
3
3
  import { EventSourceMessage } from '@ai-zen/node-fetch-event-source';
4
4
  import { FetchEventSourceInit } from '@ai-zen/node-fetch-event-source/lib/cjs/fetch.js';
5
- import { C as Callback, E as Emitter } from '../emitter-C9nwGLt6.js';
5
+ import { C as Callback, E as Emitter } from '../emitter-BqpLJQVb.js';
6
6
  import './types.js';
7
7
  import './helpers/guards.js';
8
8
 
@@ -2,7 +2,7 @@ import { Message, MessageContentPart } from '../backend/message.cjs';
2
2
  import { BaseMemory } from './base.cjs';
3
3
  import { PromptTemplate } from '../template.cjs';
4
4
  import { z } from 'zod';
5
- import { m as ChatModel } from '../chat-CR4yfOR9.cjs';
5
+ import { m as ChatModel } from '../chat-BZ55YQab.cjs';
6
6
  import '../internals/serializable.cjs';
7
7
  import '../internals/types.cjs';
8
8
  import '../internals/helpers/guards.cjs';
@@ -10,7 +10,7 @@ import 'ai';
10
10
  import '../errors.cjs';
11
11
  import 'ajv';
12
12
  import '../context.cjs';
13
- import '../emitter-DWEsd-ud.cjs';
13
+ import '../emitter-pJzHC_AM.cjs';
14
14
  import '../internals/helpers/promise.cjs';
15
15
  import 'promise-based-task';
16
16
  import '../cache/base.cjs';
@@ -2,7 +2,7 @@ import { Message, MessageContentPart } from '../backend/message.js';
2
2
  import { BaseMemory } from './base.js';
3
3
  import { PromptTemplate } from '../template.js';
4
4
  import { z } from 'zod';
5
- import { m as ChatModel } from '../chat-W9j8T6UU.js';
5
+ import { m as ChatModel } from '../chat-BBoOSvzm.js';
6
6
  import '../internals/serializable.js';
7
7
  import '../internals/types.js';
8
8
  import '../internals/helpers/guards.js';
@@ -10,7 +10,7 @@ import 'ai';
10
10
  import '../errors.js';
11
11
  import 'ajv';
12
12
  import '../context.js';
13
- import '../emitter-C9nwGLt6.js';
13
+ import '../emitter-BqpLJQVb.js';
14
14
  import '../internals/helpers/promise.js';
15
15
  import 'promise-based-task';
16
16
  import '../cache/base.js';
@@ -1,4 +1,4 @@
1
- import { E as Emitter, C as Callback, I as InferCallbackValue } from '../emitter-DWEsd-ud.cjs';
1
+ import { E as Emitter, C as Callback, I as InferCallbackValue } from '../emitter-pJzHC_AM.cjs';
2
2
  import { Serializable } from '../internals/serializable.cjs';
3
3
  import { ParserField } from './field.cjs';
4
4
  import { ValueOf } from '../internals/types.cjs';
@@ -1,4 +1,4 @@
1
- import { E as Emitter, C as Callback, I as InferCallbackValue } from '../emitter-C9nwGLt6.js';
1
+ import { E as Emitter, C as Callback, I as InferCallbackValue } from '../emitter-BqpLJQVb.js';
2
2
  import { Serializable } from '../internals/serializable.js';
3
3
  import { ParserField } from './field.js';
4
4
  import { ValueOf } from '../internals/types.js';
@@ -1,6 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var array_cjs = require('../internals/helpers/array.cjs');
4
+ var prototype_cjs = require('../internals/helpers/prototype.cjs');
4
5
 
5
6
  var __defProp = Object.defineProperty;
6
7
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
@@ -12,6 +13,7 @@ class Server {
12
13
  // @ts-expect-error
13
14
  static factories = /* @__PURE__ */ new Map();
14
15
  members = [];
16
+ metadataByInput = /* @__PURE__ */ new Map();
15
17
  constructor(config) {
16
18
  this.config = config;
17
19
  }
@@ -22,10 +24,13 @@ class Server {
22
24
  throw new Error(`Factory is already registered.`);
23
25
  }
24
26
  }
25
- register(input) {
27
+ register(input, metadata) {
26
28
  this.getFactory(input);
27
29
  if (!this.members.includes(input)) {
28
30
  this.members.push(input);
31
+ if (metadata) {
32
+ this.metadataByInput.set(input, metadata);
33
+ }
29
34
  }
30
35
  return this;
31
36
  }
@@ -38,11 +43,13 @@ class Server {
38
43
  return this;
39
44
  }
40
45
  getFactory(input) {
41
- const factory = this.constructor.factories.get(input);
42
- if (!factory) {
43
- throw new Error(`No factory registered for ${input.constructor.name}.`);
46
+ for (const obj of prototype_cjs.traversePrototypeChain(input)) {
47
+ const factory = this.constructor.factories.get(obj.constructor);
48
+ if (factory) {
49
+ return factory;
50
+ }
44
51
  }
45
- return factory;
52
+ throw new Error(`No factory registered for ${input.constructor.name}.`);
46
53
  }
47
54
  }
48
55
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/serve/server.ts"],"names":["Server","factories","Map","members","config","registerFactory","ref","factory","override","get","set","Error","register","input","getFactory","includes","push","registerMany","forEach","item","deregister","removeFromArray","name"],"mappings":";;;;;;AAYO,MAAeA,MAAAA,CAAAA;EAZtB;;;;;EAkBE,OAAuBC,SAAAA,uBAAgBC,GAAAA,EAAAA;AAEvBC,EAAAA,OAAAA,GAAoB,EAAA;AAEpC,EAAA,WAAA,CAAsBC,MAAAA,EAAiB;SAAjBA,MAAAA,GAAAA,MAAAA;AAAkB;AAExC,EAAA,OAAcC,eAAAA,CAEZC,GAAAA,EACAC,OAAAA,EACAC,QAAAA,GAAW,KAAA,EACL;AACN,IAAA,IAAI,CAAC,IAAA,CAAKP,SAAAA,CAAUQ,GAAAA,CAAIH,GAAAA,KAAQE,QAAAA,EAAU;AACxC,MAAA,IAAA,CAAKP,SAAAA,CAAUS,GAAAA,CAAIJ,GAAAA,EAAKC,OAAAA,CAAAA;AAC1B,KAAA,MAAA,IAAW,IAAA,CAAKN,SAAAA,CAAUQ,GAAAA,CAAIH,GAAAA,MAASC,OAAAA,EAAS;AAC9C,MAAA,MAAM,IAAII,MAAM,CAAA,8BAAA,CAAgC,CAAA;AAClD;AACF;AAEOC,EAAAA,QAAAA,CAASC,KAAAA,EAAqB;AAEnC,IAAA,IAAA,CAAKC,WAAWD,KAAAA,CAAAA;AAChB,IAAA,IAAI,CAAC,IAAA,CAAKV,OAAAA,CAAQY,QAAAA,CAASF,KAAAA,CAAAA,EAAQ;AACjC,MAAA,IAAA,CAAKV,OAAAA,CAAQa,KAAKH,KAAAA,CAAAA;AACpB;AACA,IAAA,OAAO,IAAA;AACT;AAEOI,EAAAA,YAAAA,CAAaJ,KAAAA,EAAuB;AACzCA,IAAAA,KAAAA,CAAMK,QAAQ,CAACC,IAAAA,KAAS,IAAA,CAAKP,QAAAA,CAASO,IAAAA,CAAAA,CAAAA;AACtC,IAAA,OAAO,IAAA;AACT;AAEOC,EAAAA,UAAAA,CAAWP,KAAAA,EAAqB;AACrCQ,IAAAA,yBAAAA,CAAgB,IAAA,CAAKlB,SAASU,KAAAA,CAAAA;AAC9B,IAAA,OAAO,IAAA;AACT;AAEUC,EAAAA,UAAAA,CAAWD,KAAAA,EAAiD;AACpE,IAAA,MAAMN,OAAAA,GAAW,IAAA,CAAK,WAAA,CAA8BN,SAAAA,CAAUQ,IAAII,KAAAA,CAAAA;AAClE,IAAA,IAAI,CAACN,OAAAA,EAAS;AACZ,MAAA,MAAM,IAAII,KAAAA,CAAM,CAAA,0BAAA,EAA6BE,KAAAA,CAAM,WAAA,CAAYS,IAAI,CAAA,CAAA,CAAG,CAAA;AACxE;AACA,IAAA,OAAOf,OAAAA;AACT;AAGF","file":"server.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { removeFromArray } from \"@/internals/helpers/array.js\";\n\ntype ServerFactory<TInput, TInternal> = (input: TInput) => Promise<TInternal>;\nexport type FactoryMember<TInput> = abstract new (\n ...args: any[]\n) => TInput | (new (...args: any[]) => TInput) | ((...args: any[]) => TInput);\n\nexport abstract class Server<\n TInput extends object = object,\n TInternal extends object = object,\n TConfig extends object = object,\n> {\n // @ts-expect-error\n public static readonly factories = new Map<object, ServerFactory<TInput, TInternal>>();\n\n public readonly members: TInput[] = [];\n\n constructor(protected config: TConfig) {}\n\n public static registerFactory<TInput2 extends object, TInternal2 extends object>(\n this: typeof Server<TInput2, TInternal2, any>,\n ref: FactoryMember<TInput2>,\n factory: ServerFactory<TInput2, TInternal2>,\n override = false,\n ): void {\n if (!this.factories.get(ref) || override) {\n this.factories.set(ref, factory);\n } else if (this.factories.get(ref) !== factory) {\n throw new Error(`Factory is already registered.`);\n }\n }\n\n public register(input: TInput): this {\n // check if the type has a factory registered\n this.getFactory(input);\n if (!this.members.includes(input)) {\n this.members.push(input);\n }\n return this;\n }\n\n public registerMany(input: TInput[]): this {\n input.forEach((item) => this.register(item));\n return this;\n }\n\n public deregister(input: TInput): this {\n removeFromArray(this.members, input);\n return this;\n }\n\n protected getFactory(input: TInput): ServerFactory<TInput, TInternal> {\n const factory = (this.constructor as typeof Server).factories.get(input);\n if (!factory) {\n throw new Error(`No factory registered for ${input.constructor.name}.`);\n }\n return factory;\n }\n\n public abstract serve(): void;\n}\n"]}
1
+ {"version":3,"sources":["../../src/serve/server.ts"],"names":["Server","factories","Map","members","metadataByInput","config","registerFactory","ref","factory","override","get","set","Error","register","input","metadata","getFactory","includes","push","registerMany","forEach","item","deregister","removeFromArray","obj","traversePrototypeChain","name"],"mappings":";;;;;;;AAgBO,MAAeA,MAAAA,CAAAA;EAhBtB;;;;;EAuBE,OAAuBC,SAAAA,uBAAgBC,GAAAA,EAAAA;AAEvBC,EAAAA,OAAAA,GAAoB,EAAA;AACjBC,EAAAA,eAAAA,uBAAsBF,GAAAA,EAAAA;AAEzC,EAAA,WAAA,CAAsBG,MAAAA,EAAiB;SAAjBA,MAAAA,GAAAA,MAAAA;AAAkB;AAExC,EAAA,OAAcC,eAAAA,CAEZC,GAAAA,EACAC,OAAAA,EACAC,QAAAA,GAAW,KAAA,EACL;AACN,IAAA,IAAI,CAAC,IAAA,CAAKR,SAAAA,CAAUS,GAAAA,CAAIH,GAAAA,KAAQE,QAAAA,EAAU;AACxC,MAAA,IAAA,CAAKR,SAAAA,CAAUU,GAAAA,CAAIJ,GAAAA,EAAKC,OAAAA,CAAAA;AAC1B,KAAA,MAAA,IAAW,IAAA,CAAKP,SAAAA,CAAUS,GAAAA,CAAIH,GAAAA,MAASC,OAAAA,EAAS;AAC9C,MAAA,MAAM,IAAII,MAAM,CAAA,8BAAA,CAAgC,CAAA;AAClD;AACF;AAEOC,EAAAA,QAAAA,CAASC,OAAeC,QAAAA,EAA4B;AAEzD,IAAA,IAAA,CAAKC,WAAWF,KAAAA,CAAAA;AAChB,IAAA,IAAI,CAAC,IAAA,CAAKX,OAAAA,CAAQc,QAAAA,CAASH,KAAAA,CAAAA,EAAQ;AACjC,MAAA,IAAA,CAAKX,OAAAA,CAAQe,KAAKJ,KAAAA,CAAAA;AAClB,MAAA,IAAIC,QAAAA,EAAU;AACZ,QAAA,IAAA,CAAKX,eAAAA,CAAgBO,GAAAA,CAAIG,KAAAA,EAAOC,QAAAA,CAAAA;AAClC;AACF;AACA,IAAA,OAAO,IAAA;AACT;AAEOI,EAAAA,YAAAA,CAAaL,KAAAA,EAAuB;AACzCA,IAAAA,KAAAA,CAAMM,QAAQ,CAACC,IAAAA,KAAS,IAAA,CAAKR,QAAAA,CAASQ,IAAAA,CAAAA,CAAAA;AACtC,IAAA,OAAO,IAAA;AACT;AAEOC,EAAAA,UAAAA,CAAWR,KAAAA,EAAqB;AACrCS,IAAAA,yBAAAA,CAAgB,IAAA,CAAKpB,SAASW,KAAAA,CAAAA;AAC9B,IAAA,OAAO,IAAA;AACT;AAEUE,EAAAA,UAAAA,CAAWF,KAAAA,EAAiD;AACpE,IAAA,KAAA,MAAWU,GAAAA,IAAOC,oCAAAA,CAAuBX,KAAAA,CAAAA,EAAQ;AAC/C,MAAA,MAAMN,UAAW,IAAA,CAAK,WAAA,CAA8BP,SAAAA,CAAUS,GAAAA,CAC3Dc,IAA8B,WAAW,CAAA;AAE5C,MAAA,IAAIhB,OAAAA,EAAS;AACX,QAAA,OAAOA,OAAAA;AACT;AACF;AACA,IAAA,MAAM,IAAII,KAAAA,CAAM,CAAA,0BAAA,EAA6BE,KAAAA,CAAM,WAAA,CAAYY,IAAI,CAAA,CAAA,CAAG,CAAA;AACxE;AAGF","file":"server.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { removeFromArray } from \"@/internals/helpers/array.js\";\nimport { traversePrototypeChain } from \"@/internals/helpers/prototype.js\";\n\ntype ServerFactory<TInput, TInternal> = (\n input: TInput,\n config?: Record<string, any>,\n) => Promise<TInternal>;\nexport type FactoryMember<TInput> = abstract new (\n ...args: any[]\n) => TInput | (new (...args: any[]) => TInput) | ((...args: any[]) => TInput);\n\nexport abstract class Server<\n TInput extends object = object,\n TInternal extends object = object,\n TConfig extends object = object,\n TMetadata extends object = object,\n> {\n // @ts-expect-error\n public static readonly factories = new Map<object, ServerFactory<TInput, TInternal>>();\n\n public readonly members: TInput[] = [];\n protected readonly metadataByInput = new Map<TInput, TMetadata>();\n\n constructor(protected config: TConfig) {}\n\n public static registerFactory<TInput2 extends object, TInternal2 extends object>(\n this: typeof Server<TInput2, TInternal2, any>,\n ref: FactoryMember<TInput2>,\n factory: ServerFactory<TInput2, TInternal2>,\n override = false,\n ): void {\n if (!this.factories.get(ref) || override) {\n this.factories.set(ref, factory);\n } else if (this.factories.get(ref) !== factory) {\n throw new Error(`Factory is already registered.`);\n }\n }\n\n public register(input: TInput, metadata?: TMetadata): this {\n // check if the type has a factory registered\n this.getFactory(input);\n if (!this.members.includes(input)) {\n this.members.push(input);\n if (metadata) {\n this.metadataByInput.set(input, metadata);\n }\n }\n return this;\n }\n\n public registerMany(input: TInput[]): this {\n input.forEach((item) => this.register(item));\n return this;\n }\n\n public deregister(input: TInput): this {\n removeFromArray(this.members, input);\n return this;\n }\n\n protected getFactory(input: TInput): ServerFactory<TInput, TInternal> {\n for (const obj of traversePrototypeChain(input)) {\n const factory = (this.constructor as typeof Server).factories.get(\n (obj as FactoryMember<TInput>).constructor,\n );\n if (factory) {\n return factory;\n }\n }\n throw new Error(`No factory registered for ${input.constructor.name}.`);\n }\n\n public abstract serve(): void;\n}\n"]}
@@ -2,15 +2,16 @@
2
2
  * Copyright 2025 © BeeAI a Series of LF Projects, LLC
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
- type ServerFactory<TInput, TInternal> = (input: TInput) => Promise<TInternal>;
5
+ type ServerFactory<TInput, TInternal> = (input: TInput, config?: Record<string, any>) => Promise<TInternal>;
6
6
  type FactoryMember<TInput> = abstract new (...args: any[]) => TInput | (new (...args: any[]) => TInput) | ((...args: any[]) => TInput);
7
- declare abstract class Server<TInput extends object = object, TInternal extends object = object, TConfig extends object = object> {
7
+ declare abstract class Server<TInput extends object = object, TInternal extends object = object, TConfig extends object = object, TMetadata extends object = object> {
8
8
  protected config: TConfig;
9
9
  static readonly factories: Map<object, ServerFactory<TInput, TInternal>>;
10
10
  readonly members: TInput[];
11
+ protected readonly metadataByInput: Map<TInput, TMetadata>;
11
12
  constructor(config: TConfig);
12
13
  static registerFactory<TInput2 extends object, TInternal2 extends object>(this: typeof Server<TInput2, TInternal2, any>, ref: FactoryMember<TInput2>, factory: ServerFactory<TInput2, TInternal2>, override?: boolean): void;
13
- register(input: TInput): this;
14
+ register(input: TInput, metadata?: TMetadata): this;
14
15
  registerMany(input: TInput[]): this;
15
16
  deregister(input: TInput): this;
16
17
  protected getFactory(input: TInput): ServerFactory<TInput, TInternal>;
@@ -2,15 +2,16 @@
2
2
  * Copyright 2025 © BeeAI a Series of LF Projects, LLC
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
- type ServerFactory<TInput, TInternal> = (input: TInput) => Promise<TInternal>;
5
+ type ServerFactory<TInput, TInternal> = (input: TInput, config?: Record<string, any>) => Promise<TInternal>;
6
6
  type FactoryMember<TInput> = abstract new (...args: any[]) => TInput | (new (...args: any[]) => TInput) | ((...args: any[]) => TInput);
7
- declare abstract class Server<TInput extends object = object, TInternal extends object = object, TConfig extends object = object> {
7
+ declare abstract class Server<TInput extends object = object, TInternal extends object = object, TConfig extends object = object, TMetadata extends object = object> {
8
8
  protected config: TConfig;
9
9
  static readonly factories: Map<object, ServerFactory<TInput, TInternal>>;
10
10
  readonly members: TInput[];
11
+ protected readonly metadataByInput: Map<TInput, TMetadata>;
11
12
  constructor(config: TConfig);
12
13
  static registerFactory<TInput2 extends object, TInternal2 extends object>(this: typeof Server<TInput2, TInternal2, any>, ref: FactoryMember<TInput2>, factory: ServerFactory<TInput2, TInternal2>, override?: boolean): void;
13
- register(input: TInput): this;
14
+ register(input: TInput, metadata?: TMetadata): this;
14
15
  registerMany(input: TInput[]): this;
15
16
  deregister(input: TInput): this;
16
17
  protected getFactory(input: TInput): ServerFactory<TInput, TInternal>;
@@ -1,4 +1,5 @@
1
1
  import { removeFromArray } from '../internals/helpers/array.js';
2
+ import { traversePrototypeChain } from '../internals/helpers/prototype.js';
2
3
 
3
4
  var __defProp = Object.defineProperty;
4
5
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
@@ -10,6 +11,7 @@ class Server {
10
11
  // @ts-expect-error
11
12
  static factories = /* @__PURE__ */ new Map();
12
13
  members = [];
14
+ metadataByInput = /* @__PURE__ */ new Map();
13
15
  constructor(config) {
14
16
  this.config = config;
15
17
  }
@@ -20,10 +22,13 @@ class Server {
20
22
  throw new Error(`Factory is already registered.`);
21
23
  }
22
24
  }
23
- register(input) {
25
+ register(input, metadata) {
24
26
  this.getFactory(input);
25
27
  if (!this.members.includes(input)) {
26
28
  this.members.push(input);
29
+ if (metadata) {
30
+ this.metadataByInput.set(input, metadata);
31
+ }
27
32
  }
28
33
  return this;
29
34
  }
@@ -36,11 +41,13 @@ class Server {
36
41
  return this;
37
42
  }
38
43
  getFactory(input) {
39
- const factory = this.constructor.factories.get(input);
40
- if (!factory) {
41
- throw new Error(`No factory registered for ${input.constructor.name}.`);
44
+ for (const obj of traversePrototypeChain(input)) {
45
+ const factory = this.constructor.factories.get(obj.constructor);
46
+ if (factory) {
47
+ return factory;
48
+ }
42
49
  }
43
- return factory;
50
+ throw new Error(`No factory registered for ${input.constructor.name}.`);
44
51
  }
45
52
  }
46
53
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/serve/server.ts"],"names":["Server","factories","Map","members","config","registerFactory","ref","factory","override","get","set","Error","register","input","getFactory","includes","push","registerMany","forEach","item","deregister","removeFromArray","name"],"mappings":";;;;AAYO,MAAeA,MAAAA,CAAAA;EAZtB;;;;;EAkBE,OAAuBC,SAAAA,uBAAgBC,GAAAA,EAAAA;AAEvBC,EAAAA,OAAAA,GAAoB,EAAA;AAEpC,EAAA,WAAA,CAAsBC,MAAAA,EAAiB;SAAjBA,MAAAA,GAAAA,MAAAA;AAAkB;AAExC,EAAA,OAAcC,eAAAA,CAEZC,GAAAA,EACAC,OAAAA,EACAC,QAAAA,GAAW,KAAA,EACL;AACN,IAAA,IAAI,CAAC,IAAA,CAAKP,SAAAA,CAAUQ,GAAAA,CAAIH,GAAAA,KAAQE,QAAAA,EAAU;AACxC,MAAA,IAAA,CAAKP,SAAAA,CAAUS,GAAAA,CAAIJ,GAAAA,EAAKC,OAAAA,CAAAA;AAC1B,KAAA,MAAA,IAAW,IAAA,CAAKN,SAAAA,CAAUQ,GAAAA,CAAIH,GAAAA,MAASC,OAAAA,EAAS;AAC9C,MAAA,MAAM,IAAII,MAAM,CAAA,8BAAA,CAAgC,CAAA;AAClD;AACF;AAEOC,EAAAA,QAAAA,CAASC,KAAAA,EAAqB;AAEnC,IAAA,IAAA,CAAKC,WAAWD,KAAAA,CAAAA;AAChB,IAAA,IAAI,CAAC,IAAA,CAAKV,OAAAA,CAAQY,QAAAA,CAASF,KAAAA,CAAAA,EAAQ;AACjC,MAAA,IAAA,CAAKV,OAAAA,CAAQa,KAAKH,KAAAA,CAAAA;AACpB;AACA,IAAA,OAAO,IAAA;AACT;AAEOI,EAAAA,YAAAA,CAAaJ,KAAAA,EAAuB;AACzCA,IAAAA,KAAAA,CAAMK,QAAQ,CAACC,IAAAA,KAAS,IAAA,CAAKP,QAAAA,CAASO,IAAAA,CAAAA,CAAAA;AACtC,IAAA,OAAO,IAAA;AACT;AAEOC,EAAAA,UAAAA,CAAWP,KAAAA,EAAqB;AACrCQ,IAAAA,eAAAA,CAAgB,IAAA,CAAKlB,SAASU,KAAAA,CAAAA;AAC9B,IAAA,OAAO,IAAA;AACT;AAEUC,EAAAA,UAAAA,CAAWD,KAAAA,EAAiD;AACpE,IAAA,MAAMN,OAAAA,GAAW,IAAA,CAAK,WAAA,CAA8BN,SAAAA,CAAUQ,IAAII,KAAAA,CAAAA;AAClE,IAAA,IAAI,CAACN,OAAAA,EAAS;AACZ,MAAA,MAAM,IAAII,KAAAA,CAAM,CAAA,0BAAA,EAA6BE,KAAAA,CAAM,WAAA,CAAYS,IAAI,CAAA,CAAA,CAAG,CAAA;AACxE;AACA,IAAA,OAAOf,OAAAA;AACT;AAGF","file":"server.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { removeFromArray } from \"@/internals/helpers/array.js\";\n\ntype ServerFactory<TInput, TInternal> = (input: TInput) => Promise<TInternal>;\nexport type FactoryMember<TInput> = abstract new (\n ...args: any[]\n) => TInput | (new (...args: any[]) => TInput) | ((...args: any[]) => TInput);\n\nexport abstract class Server<\n TInput extends object = object,\n TInternal extends object = object,\n TConfig extends object = object,\n> {\n // @ts-expect-error\n public static readonly factories = new Map<object, ServerFactory<TInput, TInternal>>();\n\n public readonly members: TInput[] = [];\n\n constructor(protected config: TConfig) {}\n\n public static registerFactory<TInput2 extends object, TInternal2 extends object>(\n this: typeof Server<TInput2, TInternal2, any>,\n ref: FactoryMember<TInput2>,\n factory: ServerFactory<TInput2, TInternal2>,\n override = false,\n ): void {\n if (!this.factories.get(ref) || override) {\n this.factories.set(ref, factory);\n } else if (this.factories.get(ref) !== factory) {\n throw new Error(`Factory is already registered.`);\n }\n }\n\n public register(input: TInput): this {\n // check if the type has a factory registered\n this.getFactory(input);\n if (!this.members.includes(input)) {\n this.members.push(input);\n }\n return this;\n }\n\n public registerMany(input: TInput[]): this {\n input.forEach((item) => this.register(item));\n return this;\n }\n\n public deregister(input: TInput): this {\n removeFromArray(this.members, input);\n return this;\n }\n\n protected getFactory(input: TInput): ServerFactory<TInput, TInternal> {\n const factory = (this.constructor as typeof Server).factories.get(input);\n if (!factory) {\n throw new Error(`No factory registered for ${input.constructor.name}.`);\n }\n return factory;\n }\n\n public abstract serve(): void;\n}\n"]}
1
+ {"version":3,"sources":["../../src/serve/server.ts"],"names":["Server","factories","Map","members","metadataByInput","config","registerFactory","ref","factory","override","get","set","Error","register","input","metadata","getFactory","includes","push","registerMany","forEach","item","deregister","removeFromArray","obj","traversePrototypeChain","name"],"mappings":";;;;;AAgBO,MAAeA,MAAAA,CAAAA;EAhBtB;;;;;EAuBE,OAAuBC,SAAAA,uBAAgBC,GAAAA,EAAAA;AAEvBC,EAAAA,OAAAA,GAAoB,EAAA;AACjBC,EAAAA,eAAAA,uBAAsBF,GAAAA,EAAAA;AAEzC,EAAA,WAAA,CAAsBG,MAAAA,EAAiB;SAAjBA,MAAAA,GAAAA,MAAAA;AAAkB;AAExC,EAAA,OAAcC,eAAAA,CAEZC,GAAAA,EACAC,OAAAA,EACAC,QAAAA,GAAW,KAAA,EACL;AACN,IAAA,IAAI,CAAC,IAAA,CAAKR,SAAAA,CAAUS,GAAAA,CAAIH,GAAAA,KAAQE,QAAAA,EAAU;AACxC,MAAA,IAAA,CAAKR,SAAAA,CAAUU,GAAAA,CAAIJ,GAAAA,EAAKC,OAAAA,CAAAA;AAC1B,KAAA,MAAA,IAAW,IAAA,CAAKP,SAAAA,CAAUS,GAAAA,CAAIH,GAAAA,MAASC,OAAAA,EAAS;AAC9C,MAAA,MAAM,IAAII,MAAM,CAAA,8BAAA,CAAgC,CAAA;AAClD;AACF;AAEOC,EAAAA,QAAAA,CAASC,OAAeC,QAAAA,EAA4B;AAEzD,IAAA,IAAA,CAAKC,WAAWF,KAAAA,CAAAA;AAChB,IAAA,IAAI,CAAC,IAAA,CAAKX,OAAAA,CAAQc,QAAAA,CAASH,KAAAA,CAAAA,EAAQ;AACjC,MAAA,IAAA,CAAKX,OAAAA,CAAQe,KAAKJ,KAAAA,CAAAA;AAClB,MAAA,IAAIC,QAAAA,EAAU;AACZ,QAAA,IAAA,CAAKX,eAAAA,CAAgBO,GAAAA,CAAIG,KAAAA,EAAOC,QAAAA,CAAAA;AAClC;AACF;AACA,IAAA,OAAO,IAAA;AACT;AAEOI,EAAAA,YAAAA,CAAaL,KAAAA,EAAuB;AACzCA,IAAAA,KAAAA,CAAMM,QAAQ,CAACC,IAAAA,KAAS,IAAA,CAAKR,QAAAA,CAASQ,IAAAA,CAAAA,CAAAA;AACtC,IAAA,OAAO,IAAA;AACT;AAEOC,EAAAA,UAAAA,CAAWR,KAAAA,EAAqB;AACrCS,IAAAA,eAAAA,CAAgB,IAAA,CAAKpB,SAASW,KAAAA,CAAAA;AAC9B,IAAA,OAAO,IAAA;AACT;AAEUE,EAAAA,UAAAA,CAAWF,KAAAA,EAAiD;AACpE,IAAA,KAAA,MAAWU,GAAAA,IAAOC,sBAAAA,CAAuBX,KAAAA,CAAAA,EAAQ;AAC/C,MAAA,MAAMN,UAAW,IAAA,CAAK,WAAA,CAA8BP,SAAAA,CAAUS,GAAAA,CAC3Dc,IAA8B,WAAW,CAAA;AAE5C,MAAA,IAAIhB,OAAAA,EAAS;AACX,QAAA,OAAOA,OAAAA;AACT;AACF;AACA,IAAA,MAAM,IAAII,KAAAA,CAAM,CAAA,0BAAA,EAA6BE,KAAAA,CAAM,WAAA,CAAYY,IAAI,CAAA,CAAA,CAAG,CAAA;AACxE;AAGF","file":"server.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { removeFromArray } from \"@/internals/helpers/array.js\";\nimport { traversePrototypeChain } from \"@/internals/helpers/prototype.js\";\n\ntype ServerFactory<TInput, TInternal> = (\n input: TInput,\n config?: Record<string, any>,\n) => Promise<TInternal>;\nexport type FactoryMember<TInput> = abstract new (\n ...args: any[]\n) => TInput | (new (...args: any[]) => TInput) | ((...args: any[]) => TInput);\n\nexport abstract class Server<\n TInput extends object = object,\n TInternal extends object = object,\n TConfig extends object = object,\n TMetadata extends object = object,\n> {\n // @ts-expect-error\n public static readonly factories = new Map<object, ServerFactory<TInput, TInternal>>();\n\n public readonly members: TInput[] = [];\n protected readonly metadataByInput = new Map<TInput, TMetadata>();\n\n constructor(protected config: TConfig) {}\n\n public static registerFactory<TInput2 extends object, TInternal2 extends object>(\n this: typeof Server<TInput2, TInternal2, any>,\n ref: FactoryMember<TInput2>,\n factory: ServerFactory<TInput2, TInternal2>,\n override = false,\n ): void {\n if (!this.factories.get(ref) || override) {\n this.factories.set(ref, factory);\n } else if (this.factories.get(ref) !== factory) {\n throw new Error(`Factory is already registered.`);\n }\n }\n\n public register(input: TInput, metadata?: TMetadata): this {\n // check if the type has a factory registered\n this.getFactory(input);\n if (!this.members.includes(input)) {\n this.members.push(input);\n if (metadata) {\n this.metadataByInput.set(input, metadata);\n }\n }\n return this;\n }\n\n public registerMany(input: TInput[]): this {\n input.forEach((item) => this.register(item));\n return this;\n }\n\n public deregister(input: TInput): this {\n removeFromArray(this.members, input);\n return this;\n }\n\n protected getFactory(input: TInput): ServerFactory<TInput, TInternal> {\n for (const obj of traversePrototypeChain(input)) {\n const factory = (this.constructor as typeof Server).factories.get(\n (obj as FactoryMember<TInput>).constructor,\n );\n if (factory) {\n return factory;\n }\n }\n throw new Error(`No factory registered for ${input.constructor.name}.`);\n }\n\n public abstract serve(): void;\n}\n"]}
@@ -9,7 +9,7 @@ import '../internals/helpers/guards.cjs';
9
9
  import '../internals/serializable.cjs';
10
10
  import 'promise-based-task';
11
11
  import '../cache/base.cjs';
12
- import '../emitter-DWEsd-ud.cjs';
12
+ import '../emitter-pJzHC_AM.cjs';
13
13
  import '../internals/helpers/promise.cjs';
14
14
  import 'zod-to-json-schema';
15
15
 
@@ -9,7 +9,7 @@ import '../internals/helpers/guards.js';
9
9
  import '../internals/serializable.js';
10
10
  import 'promise-based-task';
11
11
  import '../cache/base.js';
12
- import '../emitter-C9nwGLt6.js';
12
+ import '../emitter-BqpLJQVb.js';
13
13
  import '../internals/helpers/promise.js';
14
14
  import 'zod-to-json-schema';
15
15
 
@@ -7,7 +7,7 @@ import { Task } from 'promise-based-task';
7
7
  import { BaseCache } from '../cache/base.cjs';
8
8
  import { AnyToolSchemaLike, FromSchemaLikeRaw, FromSchemaLike } from '../internals/helpers/schema.cjs';
9
9
  import { ZodSchema, z } from 'zod';
10
- import { E as Emitter, C as Callback } from '../emitter-DWEsd-ud.cjs';
10
+ import { E as Emitter, C as Callback } from '../emitter-pJzHC_AM.cjs';
11
11
  import '../internals/helpers/promise.cjs';
12
12
  import '../internals/types.cjs';
13
13
  import '../internals/helpers/guards.cjs';
@@ -7,7 +7,7 @@ import { Task } from 'promise-based-task';
7
7
  import { BaseCache } from '../cache/base.js';
8
8
  import { AnyToolSchemaLike, FromSchemaLikeRaw, FromSchemaLike } from '../internals/helpers/schema.js';
9
9
  import { ZodSchema, z } from 'zod';
10
- import { E as Emitter, C as Callback } from '../emitter-C9nwGLt6.js';
10
+ import { E as Emitter, C as Callback } from '../emitter-BqpLJQVb.js';
11
11
  import '../internals/helpers/promise.js';
12
12
  import '../internals/types.js';
13
13
  import '../internals/helpers/guards.js';
@@ -3,7 +3,7 @@ import { z } from 'zod';
3
3
  import { ConfigOptions, ImportObject, ImportOptions, evaluate } from 'mathjs';
4
4
  import 'ajv';
5
5
  import '../context.cjs';
6
- import '../emitter-DWEsd-ud.cjs';
6
+ import '../emitter-pJzHC_AM.cjs';
7
7
  import '../internals/types.cjs';
8
8
  import '../internals/helpers/guards.cjs';
9
9
  import '../internals/serializable.cjs';
@@ -3,7 +3,7 @@ import { z } from 'zod';
3
3
  import { ConfigOptions, ImportObject, ImportOptions, evaluate } from 'mathjs';
4
4
  import 'ajv';
5
5
  import '../context.js';
6
- import '../emitter-C9nwGLt6.js';
6
+ import '../emitter-BqpLJQVb.js';
7
7
  import '../internals/types.js';
8
8
  import '../internals/helpers/guards.js';
9
9
  import '../internals/serializable.js';
@@ -11,14 +11,14 @@ import 'promise-based-task';
11
11
  import '../cache/base.cjs';
12
12
  import '../internals/helpers/schema.cjs';
13
13
  import 'zod-to-json-schema';
14
- import '../emitter-DWEsd-ud.cjs';
14
+ import '../emitter-pJzHC_AM.cjs';
15
15
  import '../internals/helpers/promise.cjs';
16
16
  import '../template.cjs';
17
17
  import './python/storage.cjs';
18
18
  import 'fs';
19
19
  import './python/output.cjs';
20
20
  import 'node:tls';
21
- import '../chat-CR4yfOR9.cjs';
21
+ import '../chat-BZ55YQab.cjs';
22
22
  import '../backend/message.cjs';
23
23
  import 'ai';
24
24
  import '../backend/constants.cjs';
@@ -11,14 +11,14 @@ import 'promise-based-task';
11
11
  import '../cache/base.js';
12
12
  import '../internals/helpers/schema.js';
13
13
  import 'zod-to-json-schema';
14
- import '../emitter-C9nwGLt6.js';
14
+ import '../emitter-BqpLJQVb.js';
15
15
  import '../internals/helpers/promise.js';
16
16
  import '../template.js';
17
17
  import './python/storage.js';
18
18
  import 'fs';
19
19
  import './python/output.js';
20
20
  import 'node:tls';
21
- import '../chat-W9j8T6UU.js';
21
+ import '../chat-BBoOSvzm.js';
22
22
  import '../backend/message.js';
23
23
  import 'ai';
24
24
  import '../backend/constants.js';
@@ -10,7 +10,7 @@ import '../../internals/helpers/guards.cjs';
10
10
  import '../../internals/serializable.cjs';
11
11
  import 'promise-based-task';
12
12
  import '../../cache/base.cjs';
13
- import '../../emitter-DWEsd-ud.cjs';
13
+ import '../../emitter-pJzHC_AM.cjs';
14
14
  import '../../internals/helpers/promise.cjs';
15
15
  import 'zod-to-json-schema';
16
16
 
@@ -10,7 +10,7 @@ import '../../internals/helpers/guards.js';
10
10
  import '../../internals/serializable.js';
11
11
  import 'promise-based-task';
12
12
  import '../../cache/base.js';
13
- import '../../emitter-C9nwGLt6.js';
13
+ import '../../emitter-BqpLJQVb.js';
14
14
  import '../../internals/helpers/promise.js';
15
15
  import 'zod-to-json-schema';
16
16
 
@@ -4,7 +4,7 @@ import { ClientConfig, ShowCollectionsResponse, DescribeCollectionResponse, Sear
4
4
  import { z } from 'zod';
5
5
  import 'ajv';
6
6
  import '../../context.cjs';
7
- import '../../emitter-DWEsd-ud.cjs';
7
+ import '../../emitter-pJzHC_AM.cjs';
8
8
  import '../../internals/types.cjs';
9
9
  import '../../internals/helpers/guards.cjs';
10
10
  import '../../internals/serializable.cjs';
@@ -4,7 +4,7 @@ import { ClientConfig, ShowCollectionsResponse, DescribeCollectionResponse, Sear
4
4
  import { z } from 'zod';
5
5
  import 'ajv';
6
6
  import '../../context.js';
7
- import '../../emitter-C9nwGLt6.js';
7
+ import '../../emitter-BqpLJQVb.js';
8
8
  import '../../internals/types.js';
9
9
  import '../../internals/helpers/guards.js';
10
10
  import '../../internals/serializable.js';
@@ -4,7 +4,7 @@ import { QdrantClientParams, QdrantClient } from '@qdrant/js-client-rest';
4
4
  import { z } from 'zod';
5
5
  import 'ajv';
6
6
  import '../../context.cjs';
7
- import '../../emitter-DWEsd-ud.cjs';
7
+ import '../../emitter-pJzHC_AM.cjs';
8
8
  import '../../internals/types.cjs';
9
9
  import '../../internals/helpers/guards.cjs';
10
10
  import '../../internals/serializable.cjs';
@@ -4,7 +4,7 @@ import { QdrantClientParams, QdrantClient } from '@qdrant/js-client-rest';
4
4
  import { z } from 'zod';
5
5
  import 'ajv';
6
6
  import '../../context.js';
7
- import '../../emitter-C9nwGLt6.js';
7
+ import '../../emitter-BqpLJQVb.js';
8
8
  import '../../internals/types.js';
9
9
  import '../../internals/helpers/guards.js';
10
10
  import '../../internals/serializable.js';
@@ -5,7 +5,7 @@ import { Provider } from './metadata.cjs';
5
5
  import { AnyToolSchemaLike } from '../../internals/helpers/schema.cjs';
6
6
  import 'ajv';
7
7
  import '../../context.cjs';
8
- import '../../emitter-DWEsd-ud.cjs';
8
+ import '../../emitter-pJzHC_AM.cjs';
9
9
  import '../../internals/types.cjs';
10
10
  import '../../internals/helpers/guards.cjs';
11
11
  import '../../internals/serializable.cjs';
@@ -5,7 +5,7 @@ import { Provider } from './metadata.js';
5
5
  import { AnyToolSchemaLike } from '../../internals/helpers/schema.js';
6
6
  import 'ajv';
7
7
  import '../../context.js';
8
- import '../../emitter-C9nwGLt6.js';
8
+ import '../../emitter-BqpLJQVb.js';
9
9
  import '../../internals/types.js';
10
10
  import '../../internals/helpers/guards.js';
11
11
  import '../../internals/serializable.js';