beeai-framework 0.1.2

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 (862) hide show
  1. package/README.md +226 -0
  2. package/dist/adapters/amazon-bedrock/backend/chat.cjs +21 -0
  3. package/dist/adapters/amazon-bedrock/backend/chat.cjs.map +1 -0
  4. package/dist/adapters/amazon-bedrock/backend/chat.d.cts +49 -0
  5. package/dist/adapters/amazon-bedrock/backend/chat.d.ts +49 -0
  6. package/dist/adapters/amazon-bedrock/backend/chat.js +19 -0
  7. package/dist/adapters/amazon-bedrock/backend/chat.js.map +1 -0
  8. package/dist/adapters/amazon-bedrock/backend/client.cjs +21 -0
  9. package/dist/adapters/amazon-bedrock/backend/client.cjs.map +1 -0
  10. package/dist/adapters/amazon-bedrock/backend/client.d.cts +28 -0
  11. package/dist/adapters/amazon-bedrock/backend/client.d.ts +28 -0
  12. package/dist/adapters/amazon-bedrock/backend/client.js +19 -0
  13. package/dist/adapters/amazon-bedrock/backend/client.js.map +1 -0
  14. package/dist/adapters/amazon-bedrock/backend/embedding.cjs +21 -0
  15. package/dist/adapters/amazon-bedrock/backend/embedding.cjs.map +1 -0
  16. package/dist/adapters/amazon-bedrock/backend/embedding.d.cts +40 -0
  17. package/dist/adapters/amazon-bedrock/backend/embedding.d.ts +40 -0
  18. package/dist/adapters/amazon-bedrock/backend/embedding.js +19 -0
  19. package/dist/adapters/amazon-bedrock/backend/embedding.js.map +1 -0
  20. package/dist/adapters/anthropic/backend/chat.cjs +24 -0
  21. package/dist/adapters/anthropic/backend/chat.cjs.map +1 -0
  22. package/dist/adapters/anthropic/backend/chat.d.cts +49 -0
  23. package/dist/adapters/anthropic/backend/chat.d.ts +49 -0
  24. package/dist/adapters/anthropic/backend/chat.js +22 -0
  25. package/dist/adapters/anthropic/backend/chat.js.map +1 -0
  26. package/dist/adapters/anthropic/backend/client.cjs +32 -0
  27. package/dist/adapters/anthropic/backend/client.cjs.map +1 -0
  28. package/dist/adapters/anthropic/backend/client.d.cts +28 -0
  29. package/dist/adapters/anthropic/backend/client.d.ts +28 -0
  30. package/dist/adapters/anthropic/backend/client.js +30 -0
  31. package/dist/adapters/anthropic/backend/client.js.map +1 -0
  32. package/dist/adapters/anthropic/backend/embedding.cjs +21 -0
  33. package/dist/adapters/anthropic/backend/embedding.cjs.map +1 -0
  34. package/dist/adapters/anthropic/backend/embedding.d.cts +40 -0
  35. package/dist/adapters/anthropic/backend/embedding.d.ts +40 -0
  36. package/dist/adapters/anthropic/backend/embedding.js +19 -0
  37. package/dist/adapters/anthropic/backend/embedding.js.map +1 -0
  38. package/dist/adapters/azure-openai/backend/chat.cjs +21 -0
  39. package/dist/adapters/azure-openai/backend/chat.cjs.map +1 -0
  40. package/dist/adapters/azure-openai/backend/chat.d.cts +49 -0
  41. package/dist/adapters/azure-openai/backend/chat.d.ts +49 -0
  42. package/dist/adapters/azure-openai/backend/chat.js +19 -0
  43. package/dist/adapters/azure-openai/backend/chat.js.map +1 -0
  44. package/dist/adapters/azure-openai/backend/client.cjs +26 -0
  45. package/dist/adapters/azure-openai/backend/client.cjs.map +1 -0
  46. package/dist/adapters/azure-openai/backend/client.d.cts +28 -0
  47. package/dist/adapters/azure-openai/backend/client.d.ts +28 -0
  48. package/dist/adapters/azure-openai/backend/client.js +24 -0
  49. package/dist/adapters/azure-openai/backend/client.js.map +1 -0
  50. package/dist/adapters/azure-openai/backend/embedding.cjs +21 -0
  51. package/dist/adapters/azure-openai/backend/embedding.cjs.map +1 -0
  52. package/dist/adapters/azure-openai/backend/embedding.d.cts +40 -0
  53. package/dist/adapters/azure-openai/backend/embedding.d.ts +40 -0
  54. package/dist/adapters/azure-openai/backend/embedding.js +19 -0
  55. package/dist/adapters/azure-openai/backend/embedding.js.map +1 -0
  56. package/dist/adapters/dummy/backend/chat.cjs +51 -0
  57. package/dist/adapters/dummy/backend/chat.cjs.map +1 -0
  58. package/dist/adapters/dummy/backend/chat.d.cts +39 -0
  59. package/dist/adapters/dummy/backend/chat.d.ts +39 -0
  60. package/dist/adapters/dummy/backend/chat.js +49 -0
  61. package/dist/adapters/dummy/backend/chat.js.map +1 -0
  62. package/dist/adapters/dummy/backend/embedding.cjs +44 -0
  63. package/dist/adapters/dummy/backend/embedding.cjs.map +1 -0
  64. package/dist/adapters/dummy/backend/embedding.d.cts +41 -0
  65. package/dist/adapters/dummy/backend/embedding.d.ts +41 -0
  66. package/dist/adapters/dummy/backend/embedding.js +42 -0
  67. package/dist/adapters/dummy/backend/embedding.js.map +1 -0
  68. package/dist/adapters/google-vertex/backend/chat.cjs +21 -0
  69. package/dist/adapters/google-vertex/backend/chat.cjs.map +1 -0
  70. package/dist/adapters/google-vertex/backend/chat.d.cts +49 -0
  71. package/dist/adapters/google-vertex/backend/chat.d.ts +49 -0
  72. package/dist/adapters/google-vertex/backend/chat.js +19 -0
  73. package/dist/adapters/google-vertex/backend/chat.js.map +1 -0
  74. package/dist/adapters/google-vertex/backend/client.cjs +25 -0
  75. package/dist/adapters/google-vertex/backend/client.cjs.map +1 -0
  76. package/dist/adapters/google-vertex/backend/client.d.cts +28 -0
  77. package/dist/adapters/google-vertex/backend/client.d.ts +28 -0
  78. package/dist/adapters/google-vertex/backend/client.js +23 -0
  79. package/dist/adapters/google-vertex/backend/client.js.map +1 -0
  80. package/dist/adapters/google-vertex/backend/embedding.cjs +21 -0
  81. package/dist/adapters/google-vertex/backend/embedding.cjs.map +1 -0
  82. package/dist/adapters/google-vertex/backend/embedding.d.cts +40 -0
  83. package/dist/adapters/google-vertex/backend/embedding.d.ts +40 -0
  84. package/dist/adapters/google-vertex/backend/embedding.js +19 -0
  85. package/dist/adapters/google-vertex/backend/embedding.js.map +1 -0
  86. package/dist/adapters/groq/backend/chat.cjs +24 -0
  87. package/dist/adapters/groq/backend/chat.cjs.map +1 -0
  88. package/dist/adapters/groq/backend/chat.d.cts +49 -0
  89. package/dist/adapters/groq/backend/chat.d.ts +49 -0
  90. package/dist/adapters/groq/backend/chat.js +22 -0
  91. package/dist/adapters/groq/backend/chat.js.map +1 -0
  92. package/dist/adapters/groq/backend/client.cjs +24 -0
  93. package/dist/adapters/groq/backend/client.cjs.map +1 -0
  94. package/dist/adapters/groq/backend/client.d.cts +28 -0
  95. package/dist/adapters/groq/backend/client.d.ts +28 -0
  96. package/dist/adapters/groq/backend/client.js +22 -0
  97. package/dist/adapters/groq/backend/client.js.map +1 -0
  98. package/dist/adapters/groq/backend/embedding.cjs +25 -0
  99. package/dist/adapters/groq/backend/embedding.cjs.map +1 -0
  100. package/dist/adapters/groq/backend/embedding.d.cts +40 -0
  101. package/dist/adapters/groq/backend/embedding.d.ts +40 -0
  102. package/dist/adapters/groq/backend/embedding.js +23 -0
  103. package/dist/adapters/groq/backend/embedding.js.map +1 -0
  104. package/dist/adapters/langchain/backend/chat.cjs +117 -0
  105. package/dist/adapters/langchain/backend/chat.cjs.map +1 -0
  106. package/dist/adapters/langchain/backend/chat.d.cts +48 -0
  107. package/dist/adapters/langchain/backend/chat.d.ts +48 -0
  108. package/dist/adapters/langchain/backend/chat.js +115 -0
  109. package/dist/adapters/langchain/backend/chat.js.map +1 -0
  110. package/dist/adapters/langchain/backend/embedding.cjs +56 -0
  111. package/dist/adapters/langchain/backend/embedding.cjs.map +1 -0
  112. package/dist/adapters/langchain/backend/embedding.d.cts +43 -0
  113. package/dist/adapters/langchain/backend/embedding.d.ts +43 -0
  114. package/dist/adapters/langchain/backend/embedding.js +54 -0
  115. package/dist/adapters/langchain/backend/embedding.js.map +1 -0
  116. package/dist/adapters/langchain/tools.cjs +114 -0
  117. package/dist/adapters/langchain/tools.cjs.map +1 -0
  118. package/dist/adapters/langchain/tools.d.cts +44 -0
  119. package/dist/adapters/langchain/tools.d.ts +44 -0
  120. package/dist/adapters/langchain/tools.js +92 -0
  121. package/dist/adapters/langchain/tools.js.map +1 -0
  122. package/dist/adapters/ollama/backend/chat.cjs +28 -0
  123. package/dist/adapters/ollama/backend/chat.cjs.map +1 -0
  124. package/dist/adapters/ollama/backend/chat.d.cts +50 -0
  125. package/dist/adapters/ollama/backend/chat.d.ts +50 -0
  126. package/dist/adapters/ollama/backend/chat.js +26 -0
  127. package/dist/adapters/ollama/backend/chat.js.map +1 -0
  128. package/dist/adapters/ollama/backend/client.cjs +23 -0
  129. package/dist/adapters/ollama/backend/client.cjs.map +1 -0
  130. package/dist/adapters/ollama/backend/client.d.cts +28 -0
  131. package/dist/adapters/ollama/backend/client.d.ts +28 -0
  132. package/dist/adapters/ollama/backend/client.js +21 -0
  133. package/dist/adapters/ollama/backend/client.js.map +1 -0
  134. package/dist/adapters/ollama/backend/embedding.cjs +21 -0
  135. package/dist/adapters/ollama/backend/embedding.cjs.map +1 -0
  136. package/dist/adapters/ollama/backend/embedding.d.cts +40 -0
  137. package/dist/adapters/ollama/backend/embedding.d.ts +40 -0
  138. package/dist/adapters/ollama/backend/embedding.js +19 -0
  139. package/dist/adapters/ollama/backend/embedding.js.map +1 -0
  140. package/dist/adapters/openai/backend/chat.cjs +21 -0
  141. package/dist/adapters/openai/backend/chat.cjs.map +1 -0
  142. package/dist/adapters/openai/backend/chat.d.cts +49 -0
  143. package/dist/adapters/openai/backend/chat.d.ts +49 -0
  144. package/dist/adapters/openai/backend/chat.js +19 -0
  145. package/dist/adapters/openai/backend/chat.js.map +1 -0
  146. package/dist/adapters/openai/backend/client.cjs +33 -0
  147. package/dist/adapters/openai/backend/client.cjs.map +1 -0
  148. package/dist/adapters/openai/backend/client.d.cts +28 -0
  149. package/dist/adapters/openai/backend/client.d.ts +28 -0
  150. package/dist/adapters/openai/backend/client.js +31 -0
  151. package/dist/adapters/openai/backend/client.js.map +1 -0
  152. package/dist/adapters/openai/backend/embedding.cjs +21 -0
  153. package/dist/adapters/openai/backend/embedding.cjs.map +1 -0
  154. package/dist/adapters/openai/backend/embedding.d.cts +40 -0
  155. package/dist/adapters/openai/backend/embedding.d.ts +40 -0
  156. package/dist/adapters/openai/backend/embedding.js +19 -0
  157. package/dist/adapters/openai/backend/embedding.js.map +1 -0
  158. package/dist/adapters/vercel/backend/chat.cjs +184 -0
  159. package/dist/adapters/vercel/backend/chat.cjs.map +1 -0
  160. package/dist/adapters/vercel/backend/chat.d.cts +45 -0
  161. package/dist/adapters/vercel/backend/chat.d.ts +45 -0
  162. package/dist/adapters/vercel/backend/chat.js +182 -0
  163. package/dist/adapters/vercel/backend/chat.js.map +1 -0
  164. package/dist/adapters/vercel/backend/embedding.cjs +63 -0
  165. package/dist/adapters/vercel/backend/embedding.cjs.map +1 -0
  166. package/dist/adapters/vercel/backend/embedding.d.cts +45 -0
  167. package/dist/adapters/vercel/backend/embedding.d.ts +45 -0
  168. package/dist/adapters/vercel/backend/embedding.js +61 -0
  169. package/dist/adapters/vercel/backend/embedding.js.map +1 -0
  170. package/dist/adapters/watsonx/backend/chat.cjs +199 -0
  171. package/dist/adapters/watsonx/backend/chat.cjs.map +1 -0
  172. package/dist/adapters/watsonx/backend/chat.d.cts +56 -0
  173. package/dist/adapters/watsonx/backend/chat.d.ts +56 -0
  174. package/dist/adapters/watsonx/backend/chat.js +193 -0
  175. package/dist/adapters/watsonx/backend/chat.js.map +1 -0
  176. package/dist/adapters/watsonx/backend/client.cjs +48 -0
  177. package/dist/adapters/watsonx/backend/client.cjs.map +1 -0
  178. package/dist/adapters/watsonx/backend/client.d.cts +38 -0
  179. package/dist/adapters/watsonx/backend/client.d.ts +38 -0
  180. package/dist/adapters/watsonx/backend/client.js +46 -0
  181. package/dist/adapters/watsonx/backend/client.js.map +1 -0
  182. package/dist/adapters/watsonx/backend/embedding.cjs +70 -0
  183. package/dist/adapters/watsonx/backend/embedding.cjs.map +1 -0
  184. package/dist/adapters/watsonx/backend/embedding.d.cts +50 -0
  185. package/dist/adapters/watsonx/backend/embedding.d.ts +50 -0
  186. package/dist/adapters/watsonx/backend/embedding.js +68 -0
  187. package/dist/adapters/watsonx/backend/embedding.js.map +1 -0
  188. package/dist/agent-BbaHVlob.d.cts +84 -0
  189. package/dist/agent-Bks2fOUl.d.ts +84 -0
  190. package/dist/agents/base.cjs +73 -0
  191. package/dist/agents/base.cjs.map +1 -0
  192. package/dist/agents/base.d.cts +18 -0
  193. package/dist/agents/base.d.ts +18 -0
  194. package/dist/agents/base.js +70 -0
  195. package/dist/agents/base.js.map +1 -0
  196. package/dist/agents/bee/agent.cjs +193 -0
  197. package/dist/agents/bee/agent.cjs.map +1 -0
  198. package/dist/agents/bee/agent.d.cts +32 -0
  199. package/dist/agents/bee/agent.d.ts +32 -0
  200. package/dist/agents/bee/agent.js +171 -0
  201. package/dist/agents/bee/agent.js.map +1 -0
  202. package/dist/agents/bee/prompts.cjs +176 -0
  203. package/dist/agents/bee/prompts.cjs.map +1 -0
  204. package/dist/agents/bee/prompts.d.cts +148 -0
  205. package/dist/agents/bee/prompts.d.ts +148 -0
  206. package/dist/agents/bee/prompts.js +166 -0
  207. package/dist/agents/bee/prompts.js.map +1 -0
  208. package/dist/agents/bee/runners/base.cjs +103 -0
  209. package/dist/agents/bee/runners/base.cjs.map +1 -0
  210. package/dist/agents/bee/runners/base.d.cts +32 -0
  211. package/dist/agents/bee/runners/base.d.ts +32 -0
  212. package/dist/agents/bee/runners/base.js +101 -0
  213. package/dist/agents/bee/runners/base.js.map +1 -0
  214. package/dist/agents/bee/runners/deep-think/prompts.cjs +92 -0
  215. package/dist/agents/bee/runners/deep-think/prompts.cjs.map +1 -0
  216. package/dist/agents/bee/runners/deep-think/prompts.d.cts +145 -0
  217. package/dist/agents/bee/runners/deep-think/prompts.d.ts +145 -0
  218. package/dist/agents/bee/runners/deep-think/prompts.js +84 -0
  219. package/dist/agents/bee/runners/deep-think/prompts.js.map +1 -0
  220. package/dist/agents/bee/runners/deep-think/runner.cjs +124 -0
  221. package/dist/agents/bee/runners/deep-think/runner.cjs.map +1 -0
  222. package/dist/agents/bee/runners/deep-think/runner.d.cts +166 -0
  223. package/dist/agents/bee/runners/deep-think/runner.d.ts +166 -0
  224. package/dist/agents/bee/runners/deep-think/runner.js +122 -0
  225. package/dist/agents/bee/runners/deep-think/runner.js.map +1 -0
  226. package/dist/agents/bee/runners/default/runner.cjs +416 -0
  227. package/dist/agents/bee/runners/default/runner.cjs.map +1 -0
  228. package/dist/agents/bee/runners/default/runner.d.cts +186 -0
  229. package/dist/agents/bee/runners/default/runner.d.ts +186 -0
  230. package/dist/agents/bee/runners/default/runner.js +414 -0
  231. package/dist/agents/bee/runners/default/runner.js.map +1 -0
  232. package/dist/agents/bee/runners/default/runner.spec.cjs +113 -0
  233. package/dist/agents/bee/runners/default/runner.spec.cjs.map +1 -0
  234. package/dist/agents/bee/runners/default/runner.spec.d.cts +2 -0
  235. package/dist/agents/bee/runners/default/runner.spec.d.ts +2 -0
  236. package/dist/agents/bee/runners/default/runner.spec.js +111 -0
  237. package/dist/agents/bee/runners/default/runner.spec.js.map +1 -0
  238. package/dist/agents/bee/runners/granite/prompts.cjs +94 -0
  239. package/dist/agents/bee/runners/granite/prompts.cjs.map +1 -0
  240. package/dist/agents/bee/runners/granite/prompts.d.cts +145 -0
  241. package/dist/agents/bee/runners/granite/prompts.d.ts +145 -0
  242. package/dist/agents/bee/runners/granite/prompts.js +86 -0
  243. package/dist/agents/bee/runners/granite/prompts.js.map +1 -0
  244. package/dist/agents/bee/runners/granite/runner.cjs +102 -0
  245. package/dist/agents/bee/runners/granite/runner.cjs.map +1 -0
  246. package/dist/agents/bee/runners/granite/runner.d.cts +167 -0
  247. package/dist/agents/bee/runners/granite/runner.d.ts +167 -0
  248. package/dist/agents/bee/runners/granite/runner.js +100 -0
  249. package/dist/agents/bee/runners/granite/runner.js.map +1 -0
  250. package/dist/agents/bee/types.cjs +4 -0
  251. package/dist/agents/bee/types.cjs.map +1 -0
  252. package/dist/agents/bee/types.d.cts +164 -0
  253. package/dist/agents/bee/types.d.ts +164 -0
  254. package/dist/agents/bee/types.js +3 -0
  255. package/dist/agents/bee/types.js.map +1 -0
  256. package/dist/agents/experimental/replan/agent.cjs +119 -0
  257. package/dist/agents/experimental/replan/agent.cjs.map +1 -0
  258. package/dist/agents/experimental/replan/agent.d.cts +96 -0
  259. package/dist/agents/experimental/replan/agent.d.ts +96 -0
  260. package/dist/agents/experimental/replan/agent.js +117 -0
  261. package/dist/agents/experimental/replan/agent.js.map +1 -0
  262. package/dist/agents/experimental/replan/prompts.cjs +89 -0
  263. package/dist/agents/experimental/replan/prompts.cjs.map +1 -0
  264. package/dist/agents/experimental/replan/prompts.d.cts +153 -0
  265. package/dist/agents/experimental/replan/prompts.d.ts +153 -0
  266. package/dist/agents/experimental/replan/prompts.js +85 -0
  267. package/dist/agents/experimental/replan/prompts.js.map +1 -0
  268. package/dist/agents/experimental/streamlit/agent.cjs +161 -0
  269. package/dist/agents/experimental/streamlit/agent.cjs.map +1 -0
  270. package/dist/agents/experimental/streamlit/agent.d.cts +95 -0
  271. package/dist/agents/experimental/streamlit/agent.d.ts +95 -0
  272. package/dist/agents/experimental/streamlit/agent.js +159 -0
  273. package/dist/agents/experimental/streamlit/agent.js.map +1 -0
  274. package/dist/agents/experimental/streamlit/prompts.cjs +312 -0
  275. package/dist/agents/experimental/streamlit/prompts.cjs.map +1 -0
  276. package/dist/agents/experimental/streamlit/prompts.d.cts +30 -0
  277. package/dist/agents/experimental/streamlit/prompts.d.ts +30 -0
  278. package/dist/agents/experimental/streamlit/prompts.js +310 -0
  279. package/dist/agents/experimental/streamlit/prompts.js.map +1 -0
  280. package/dist/agents/types.cjs +4 -0
  281. package/dist/agents/types.cjs.map +1 -0
  282. package/dist/agents/types.d.cts +18 -0
  283. package/dist/agents/types.d.ts +18 -0
  284. package/dist/agents/types.js +3 -0
  285. package/dist/agents/types.js.map +1 -0
  286. package/dist/backend/backend.cjs +45 -0
  287. package/dist/backend/backend.cjs.map +1 -0
  288. package/dist/backend/backend.d.cts +56 -0
  289. package/dist/backend/backend.d.ts +56 -0
  290. package/dist/backend/backend.js +43 -0
  291. package/dist/backend/backend.js.map +1 -0
  292. package/dist/backend/chat.cjs +270 -0
  293. package/dist/backend/chat.cjs.map +1 -0
  294. package/dist/backend/chat.d.cts +141 -0
  295. package/dist/backend/chat.d.ts +141 -0
  296. package/dist/backend/chat.js +267 -0
  297. package/dist/backend/chat.js.map +1 -0
  298. package/dist/backend/client.cjs +40 -0
  299. package/dist/backend/client.cjs.map +1 -0
  300. package/dist/backend/client.d.cts +33 -0
  301. package/dist/backend/client.d.ts +33 -0
  302. package/dist/backend/client.js +38 -0
  303. package/dist/backend/client.js.map +1 -0
  304. package/dist/backend/constants.cjs +62 -0
  305. package/dist/backend/constants.cjs.map +1 -0
  306. package/dist/backend/constants.d.cts +62 -0
  307. package/dist/backend/constants.d.ts +62 -0
  308. package/dist/backend/constants.js +60 -0
  309. package/dist/backend/constants.js.map +1 -0
  310. package/dist/backend/core.cjs +42 -0
  311. package/dist/backend/core.cjs.map +1 -0
  312. package/dist/backend/core.d.cts +23 -0
  313. package/dist/backend/core.d.ts +23 -0
  314. package/dist/backend/core.js +7 -0
  315. package/dist/backend/core.js.map +1 -0
  316. package/dist/backend/embedding.cjs +70 -0
  317. package/dist/backend/embedding.cjs.map +1 -0
  318. package/dist/backend/embedding.d.cts +50 -0
  319. package/dist/backend/embedding.d.ts +50 -0
  320. package/dist/backend/embedding.js +68 -0
  321. package/dist/backend/embedding.js.map +1 -0
  322. package/dist/backend/errors.cjs +27 -0
  323. package/dist/backend/errors.cjs.map +1 -0
  324. package/dist/backend/errors.d.cts +28 -0
  325. package/dist/backend/errors.d.ts +28 -0
  326. package/dist/backend/errors.js +23 -0
  327. package/dist/backend/errors.js.map +1 -0
  328. package/dist/backend/message.cjs +201 -0
  329. package/dist/backend/message.cjs.map +1 -0
  330. package/dist/backend/message.d.cts +85 -0
  331. package/dist/backend/message.d.ts +85 -0
  332. package/dist/backend/message.js +193 -0
  333. package/dist/backend/message.js.map +1 -0
  334. package/dist/backend/utils.cjs +39 -0
  335. package/dist/backend/utils.cjs.map +1 -0
  336. package/dist/backend/utils.d.cts +29 -0
  337. package/dist/backend/utils.d.ts +29 -0
  338. package/dist/backend/utils.js +36 -0
  339. package/dist/backend/utils.js.map +1 -0
  340. package/dist/base-Csr9guq2.d.cts +66 -0
  341. package/dist/base-DHhpWHQm.d.ts +66 -0
  342. package/dist/cache/base.cjs +16 -0
  343. package/dist/cache/base.cjs.map +1 -0
  344. package/dist/cache/base.d.cts +31 -0
  345. package/dist/cache/base.d.ts +31 -0
  346. package/dist/cache/base.js +14 -0
  347. package/dist/cache/base.js.map +1 -0
  348. package/dist/cache/decoratorCache.cjs +289 -0
  349. package/dist/cache/decoratorCache.cjs.map +1 -0
  350. package/dist/cache/decoratorCache.d.cts +66 -0
  351. package/dist/cache/decoratorCache.d.ts +66 -0
  352. package/dist/cache/decoratorCache.js +259 -0
  353. package/dist/cache/decoratorCache.js.map +1 -0
  354. package/dist/cache/fileCache.cjs +121 -0
  355. package/dist/cache/fileCache.cjs.map +1 -0
  356. package/dist/cache/fileCache.d.cts +48 -0
  357. package/dist/cache/fileCache.d.ts +48 -0
  358. package/dist/cache/fileCache.js +115 -0
  359. package/dist/cache/fileCache.js.map +1 -0
  360. package/dist/cache/nullCache.cjs +40 -0
  361. package/dist/cache/nullCache.cjs.map +1 -0
  362. package/dist/cache/nullCache.d.cts +36 -0
  363. package/dist/cache/nullCache.d.ts +36 -0
  364. package/dist/cache/nullCache.js +38 -0
  365. package/dist/cache/nullCache.js.map +1 -0
  366. package/dist/cache/slidingCache.cjs +81 -0
  367. package/dist/cache/slidingCache.cjs.map +1 -0
  368. package/dist/cache/slidingCache.d.cts +53 -0
  369. package/dist/cache/slidingCache.d.ts +53 -0
  370. package/dist/cache/slidingCache.js +79 -0
  371. package/dist/cache/slidingCache.js.map +1 -0
  372. package/dist/cache/unconstrainedCache.cjs +46 -0
  373. package/dist/cache/unconstrainedCache.cjs.map +1 -0
  374. package/dist/cache/unconstrainedCache.d.cts +37 -0
  375. package/dist/cache/unconstrainedCache.d.ts +37 -0
  376. package/dist/cache/unconstrainedCache.js +44 -0
  377. package/dist/cache/unconstrainedCache.js.map +1 -0
  378. package/dist/context.cjs +162 -0
  379. package/dist/context.cjs.map +1 -0
  380. package/dist/context.d.cts +79 -0
  381. package/dist/context.d.ts +79 -0
  382. package/dist/context.js +159 -0
  383. package/dist/context.js.map +1 -0
  384. package/dist/emitter/emitter.cjs +222 -0
  385. package/dist/emitter/emitter.cjs.map +1 -0
  386. package/dist/emitter/emitter.d.cts +4 -0
  387. package/dist/emitter/emitter.d.ts +4 -0
  388. package/dist/emitter/emitter.js +220 -0
  389. package/dist/emitter/emitter.js.map +1 -0
  390. package/dist/emitter/errors.cjs +15 -0
  391. package/dist/emitter/errors.cjs.map +1 -0
  392. package/dist/emitter/errors.d.cts +24 -0
  393. package/dist/emitter/errors.d.ts +24 -0
  394. package/dist/emitter/errors.js +13 -0
  395. package/dist/emitter/errors.js.map +1 -0
  396. package/dist/emitter/types.cjs +4 -0
  397. package/dist/emitter/types.cjs.map +1 -0
  398. package/dist/emitter/types.d.cts +4 -0
  399. package/dist/emitter/types.d.ts +4 -0
  400. package/dist/emitter/types.js +3 -0
  401. package/dist/emitter/types.js.map +1 -0
  402. package/dist/emitter/utils.cjs +38 -0
  403. package/dist/emitter/utils.cjs.map +1 -0
  404. package/dist/emitter/utils.d.cts +21 -0
  405. package/dist/emitter/utils.d.ts +21 -0
  406. package/dist/emitter/utils.js +33 -0
  407. package/dist/emitter/utils.js.map +1 -0
  408. package/dist/emitter-BWtGHYn0.d.cts +121 -0
  409. package/dist/emitter-l0W9gC1A.d.ts +121 -0
  410. package/dist/errors.cjs +144 -0
  411. package/dist/errors.cjs.map +1 -0
  412. package/dist/errors.d.cts +50 -0
  413. package/dist/errors.d.ts +50 -0
  414. package/dist/errors.js +116 -0
  415. package/dist/errors.js.map +1 -0
  416. package/dist/index.cjs +49 -0
  417. package/dist/index.cjs.map +1 -0
  418. package/dist/index.d.cts +23 -0
  419. package/dist/index.d.ts +23 -0
  420. package/dist/index.js +8 -0
  421. package/dist/index.js.map +1 -0
  422. package/dist/instrumentation/config.cjs +12 -0
  423. package/dist/instrumentation/config.cjs.map +1 -0
  424. package/dist/instrumentation/config.d.cts +19 -0
  425. package/dist/instrumentation/config.d.ts +19 -0
  426. package/dist/instrumentation/config.js +9 -0
  427. package/dist/instrumentation/config.js.map +1 -0
  428. package/dist/instrumentation/create-telemetry-middleware.cjs +239 -0
  429. package/dist/instrumentation/create-telemetry-middleware.cjs.map +1 -0
  430. package/dist/instrumentation/create-telemetry-middleware.d.cts +26 -0
  431. package/dist/instrumentation/create-telemetry-middleware.d.ts +26 -0
  432. package/dist/instrumentation/create-telemetry-middleware.js +237 -0
  433. package/dist/instrumentation/create-telemetry-middleware.js.map +1 -0
  434. package/dist/instrumentation/helpers/create-span.cjs +36 -0
  435. package/dist/instrumentation/helpers/create-span.cjs.map +1 -0
  436. package/dist/instrumentation/helpers/create-span.d.cts +34 -0
  437. package/dist/instrumentation/helpers/create-span.d.ts +34 -0
  438. package/dist/instrumentation/helpers/create-span.js +34 -0
  439. package/dist/instrumentation/helpers/create-span.js.map +1 -0
  440. package/dist/instrumentation/helpers/get-error-safe.cjs +20 -0
  441. package/dist/instrumentation/helpers/get-error-safe.cjs.map +1 -0
  442. package/dist/instrumentation/helpers/get-error-safe.d.cts +18 -0
  443. package/dist/instrumentation/helpers/get-error-safe.d.ts +18 -0
  444. package/dist/instrumentation/helpers/get-error-safe.js +18 -0
  445. package/dist/instrumentation/helpers/get-error-safe.js.map +1 -0
  446. package/dist/instrumentation/helpers/get-serialized-object-safe.cjs +27 -0
  447. package/dist/instrumentation/helpers/get-serialized-object-safe.cjs.map +1 -0
  448. package/dist/instrumentation/helpers/get-serialized-object-safe.d.cts +18 -0
  449. package/dist/instrumentation/helpers/get-serialized-object-safe.d.ts +18 -0
  450. package/dist/instrumentation/helpers/get-serialized-object-safe.js +25 -0
  451. package/dist/instrumentation/helpers/get-serialized-object-safe.js.map +1 -0
  452. package/dist/instrumentation/helpers/id-name-manager.cjs +34 -0
  453. package/dist/instrumentation/helpers/id-name-manager.cjs.map +1 -0
  454. package/dist/instrumentation/helpers/id-name-manager.d.cts +31 -0
  455. package/dist/instrumentation/helpers/id-name-manager.d.ts +31 -0
  456. package/dist/instrumentation/helpers/id-name-manager.js +32 -0
  457. package/dist/instrumentation/helpers/id-name-manager.js.map +1 -0
  458. package/dist/instrumentation/helpers/trace-serializer.cjs +30 -0
  459. package/dist/instrumentation/helpers/trace-serializer.cjs.map +1 -0
  460. package/dist/instrumentation/helpers/trace-serializer.d.cts +20 -0
  461. package/dist/instrumentation/helpers/trace-serializer.d.ts +20 -0
  462. package/dist/instrumentation/helpers/trace-serializer.js +28 -0
  463. package/dist/instrumentation/helpers/trace-serializer.js.map +1 -0
  464. package/dist/instrumentation/helpers/utils.cjs +14 -0
  465. package/dist/instrumentation/helpers/utils.cjs.map +1 -0
  466. package/dist/instrumentation/helpers/utils.d.cts +40 -0
  467. package/dist/instrumentation/helpers/utils.d.ts +40 -0
  468. package/dist/instrumentation/helpers/utils.js +12 -0
  469. package/dist/instrumentation/helpers/utils.js.map +1 -0
  470. package/dist/instrumentation/logger.cjs +12 -0
  471. package/dist/instrumentation/logger.cjs.map +1 -0
  472. package/dist/instrumentation/logger.d.cts +26 -0
  473. package/dist/instrumentation/logger.d.ts +26 -0
  474. package/dist/instrumentation/logger.js +10 -0
  475. package/dist/instrumentation/logger.js.map +1 -0
  476. package/dist/instrumentation/tracer.cjs +84 -0
  477. package/dist/instrumentation/tracer.cjs.map +1 -0
  478. package/dist/instrumentation/tracer.d.cts +36 -0
  479. package/dist/instrumentation/tracer.d.ts +36 -0
  480. package/dist/instrumentation/tracer.js +76 -0
  481. package/dist/instrumentation/tracer.js.map +1 -0
  482. package/dist/instrumentation/types.cjs +4 -0
  483. package/dist/instrumentation/types.cjs.map +1 -0
  484. package/dist/instrumentation/types.d.cts +39 -0
  485. package/dist/instrumentation/types.d.ts +39 -0
  486. package/dist/instrumentation/types.js +3 -0
  487. package/dist/instrumentation/types.js.map +1 -0
  488. package/dist/internals/env.cjs +43 -0
  489. package/dist/internals/env.cjs.map +1 -0
  490. package/dist/internals/env.d.cts +27 -0
  491. package/dist/internals/env.d.ts +27 -0
  492. package/dist/internals/env.js +39 -0
  493. package/dist/internals/env.js.map +1 -0
  494. package/dist/internals/fetcher.cjs +189 -0
  495. package/dist/internals/fetcher.cjs.map +1 -0
  496. package/dist/internals/fetcher.d.cts +101 -0
  497. package/dist/internals/fetcher.d.ts +101 -0
  498. package/dist/internals/fetcher.js +185 -0
  499. package/dist/internals/fetcher.js.map +1 -0
  500. package/dist/internals/helpers/array.cjs +30 -0
  501. package/dist/internals/helpers/array.cjs.map +1 -0
  502. package/dist/internals/helpers/array.d.cts +21 -0
  503. package/dist/internals/helpers/array.d.ts +21 -0
  504. package/dist/internals/helpers/array.js +26 -0
  505. package/dist/internals/helpers/array.js.map +1 -0
  506. package/dist/internals/helpers/cancellation.cjs +29 -0
  507. package/dist/internals/helpers/cancellation.cjs.map +1 -0
  508. package/dist/internals/helpers/cancellation.d.cts +19 -0
  509. package/dist/internals/helpers/cancellation.d.ts +19 -0
  510. package/dist/internals/helpers/cancellation.js +26 -0
  511. package/dist/internals/helpers/cancellation.js.map +1 -0
  512. package/dist/internals/helpers/counter.cjs +53 -0
  513. package/dist/internals/helpers/counter.cjs.map +1 -0
  514. package/dist/internals/helpers/counter.d.cts +40 -0
  515. package/dist/internals/helpers/counter.d.ts +40 -0
  516. package/dist/internals/helpers/counter.js +51 -0
  517. package/dist/internals/helpers/counter.js.map +1 -0
  518. package/dist/internals/helpers/general.cjs +31 -0
  519. package/dist/internals/helpers/general.cjs.map +1 -0
  520. package/dist/internals/helpers/general.d.cts +25 -0
  521. package/dist/internals/helpers/general.d.ts +25 -0
  522. package/dist/internals/helpers/general.js +28 -0
  523. package/dist/internals/helpers/general.js.map +1 -0
  524. package/dist/internals/helpers/guards.cjs +34 -0
  525. package/dist/internals/helpers/guards.cjs.map +1 -0
  526. package/dist/internals/helpers/guards.d.cts +19 -0
  527. package/dist/internals/helpers/guards.d.ts +19 -0
  528. package/dist/internals/helpers/guards.js +12 -0
  529. package/dist/internals/helpers/guards.js.map +1 -0
  530. package/dist/internals/helpers/hash.cjs +21 -0
  531. package/dist/internals/helpers/hash.cjs.map +1 -0
  532. package/dist/internals/helpers/hash.d.cts +19 -0
  533. package/dist/internals/helpers/hash.d.ts +19 -0
  534. package/dist/internals/helpers/hash.js +18 -0
  535. package/dist/internals/helpers/hash.js.map +1 -0
  536. package/dist/internals/helpers/map.cjs +16 -0
  537. package/dist/internals/helpers/map.cjs.map +1 -0
  538. package/dist/internals/helpers/map.d.cts +18 -0
  539. package/dist/internals/helpers/map.d.ts +18 -0
  540. package/dist/internals/helpers/map.js +14 -0
  541. package/dist/internals/helpers/map.js.map +1 -0
  542. package/dist/internals/helpers/math.cjs +31 -0
  543. package/dist/internals/helpers/math.cjs.map +1 -0
  544. package/dist/internals/helpers/math.d.cts +19 -0
  545. package/dist/internals/helpers/math.d.ts +19 -0
  546. package/dist/internals/helpers/math.js +28 -0
  547. package/dist/internals/helpers/math.js.map +1 -0
  548. package/dist/internals/helpers/number.cjs +48 -0
  549. package/dist/internals/helpers/number.cjs.map +1 -0
  550. package/dist/internals/helpers/number.d.cts +23 -0
  551. package/dist/internals/helpers/number.d.ts +23 -0
  552. package/dist/internals/helpers/number.js +24 -0
  553. package/dist/internals/helpers/number.js.map +1 -0
  554. package/dist/internals/helpers/object.cjs +142 -0
  555. package/dist/internals/helpers/object.cjs.map +1 -0
  556. package/dist/internals/helpers/object.d.cts +35 -0
  557. package/dist/internals/helpers/object.d.ts +35 -0
  558. package/dist/internals/helpers/object.js +108 -0
  559. package/dist/internals/helpers/object.js.map +1 -0
  560. package/dist/internals/helpers/paginate.cjs +28 -0
  561. package/dist/internals/helpers/paginate.cjs.map +1 -0
  562. package/dist/internals/helpers/paginate.d.cts +28 -0
  563. package/dist/internals/helpers/paginate.d.ts +28 -0
  564. package/dist/internals/helpers/paginate.js +26 -0
  565. package/dist/internals/helpers/paginate.js.map +1 -0
  566. package/dist/internals/helpers/promise.cjs +143 -0
  567. package/dist/internals/helpers/promise.cjs.map +1 -0
  568. package/dist/internals/helpers/promise.d.cts +45 -0
  569. package/dist/internals/helpers/promise.d.ts +45 -0
  570. package/dist/internals/helpers/promise.js +132 -0
  571. package/dist/internals/helpers/promise.js.map +1 -0
  572. package/dist/internals/helpers/prototype.cjs +56 -0
  573. package/dist/internals/helpers/prototype.cjs.map +1 -0
  574. package/dist/internals/helpers/prototype.d.cts +24 -0
  575. package/dist/internals/helpers/prototype.d.ts +24 -0
  576. package/dist/internals/helpers/prototype.js +32 -0
  577. package/dist/internals/helpers/prototype.js.map +1 -0
  578. package/dist/internals/helpers/retry.cjs +44 -0
  579. package/dist/internals/helpers/retry.cjs.map +1 -0
  580. package/dist/internals/helpers/retry.d.cts +29 -0
  581. package/dist/internals/helpers/retry.d.ts +29 -0
  582. package/dist/internals/helpers/retry.js +42 -0
  583. package/dist/internals/helpers/retry.js.map +1 -0
  584. package/dist/internals/helpers/retryable.cjs +169 -0
  585. package/dist/internals/helpers/retryable.cjs.map +1 -0
  586. package/dist/internals/helpers/retryable.d.cts +71 -0
  587. package/dist/internals/helpers/retryable.d.ts +71 -0
  588. package/dist/internals/helpers/retryable.js +146 -0
  589. package/dist/internals/helpers/retryable.js.map +1 -0
  590. package/dist/internals/helpers/schema.cjs +78 -0
  591. package/dist/internals/helpers/schema.cjs.map +1 -0
  592. package/dist/internals/helpers/schema.d.cts +36 -0
  593. package/dist/internals/helpers/schema.d.ts +36 -0
  594. package/dist/internals/helpers/schema.js +69 -0
  595. package/dist/internals/helpers/schema.js.map +1 -0
  596. package/dist/internals/helpers/stream.cjs +21 -0
  597. package/dist/internals/helpers/stream.cjs.map +1 -0
  598. package/dist/internals/helpers/stream.d.cts +19 -0
  599. package/dist/internals/helpers/stream.d.ts +19 -0
  600. package/dist/internals/helpers/stream.js +18 -0
  601. package/dist/internals/helpers/stream.js.map +1 -0
  602. package/dist/internals/helpers/string.cjs +230 -0
  603. package/dist/internals/helpers/string.cjs.map +1 -0
  604. package/dist/internals/helpers/string.d.cts +57 -0
  605. package/dist/internals/helpers/string.d.ts +57 -0
  606. package/dist/internals/helpers/string.js +201 -0
  607. package/dist/internals/helpers/string.js.map +1 -0
  608. package/dist/internals/helpers/weakRef.cjs +65 -0
  609. package/dist/internals/helpers/weakRef.cjs.map +1 -0
  610. package/dist/internals/helpers/weakRef.d.cts +29 -0
  611. package/dist/internals/helpers/weakRef.d.ts +29 -0
  612. package/dist/internals/helpers/weakRef.js +61 -0
  613. package/dist/internals/helpers/weakRef.js.map +1 -0
  614. package/dist/internals/serializable.cjs +63 -0
  615. package/dist/internals/serializable.cjs.map +1 -0
  616. package/dist/internals/serializable.d.cts +36 -0
  617. package/dist/internals/serializable.d.ts +36 -0
  618. package/dist/internals/serializable.js +61 -0
  619. package/dist/internals/serializable.js.map +1 -0
  620. package/dist/internals/types.cjs +15 -0
  621. package/dist/internals/types.cjs.map +1 -0
  622. package/dist/internals/types.d.cts +92 -0
  623. package/dist/internals/types.d.ts +92 -0
  624. package/dist/internals/types.js +13 -0
  625. package/dist/internals/types.js.map +1 -0
  626. package/dist/logger/logger.cjs +210 -0
  627. package/dist/logger/logger.cjs.map +1 -0
  628. package/dist/logger/logger.d.cts +48 -0
  629. package/dist/logger/logger.d.ts +48 -0
  630. package/dist/logger/logger.js +181 -0
  631. package/dist/logger/logger.js.map +1 -0
  632. package/dist/logger/pretty.cjs +79 -0
  633. package/dist/logger/pretty.cjs.map +1 -0
  634. package/dist/logger/pretty.d.cts +5 -0
  635. package/dist/logger/pretty.d.ts +5 -0
  636. package/dist/logger/pretty.js +72 -0
  637. package/dist/logger/pretty.js.map +1 -0
  638. package/dist/memory/base.cjs +98 -0
  639. package/dist/memory/base.cjs.map +1 -0
  640. package/dist/memory/base.d.cts +44 -0
  641. package/dist/memory/base.d.ts +44 -0
  642. package/dist/memory/base.js +93 -0
  643. package/dist/memory/base.js.map +1 -0
  644. package/dist/memory/slidingMemory.cjs +79 -0
  645. package/dist/memory/slidingMemory.cjs.map +1 -0
  646. package/dist/memory/slidingMemory.d.cts +30 -0
  647. package/dist/memory/slidingMemory.d.ts +30 -0
  648. package/dist/memory/slidingMemory.js +77 -0
  649. package/dist/memory/slidingMemory.js.map +1 -0
  650. package/dist/memory/summarizeMemory.cjs +82 -0
  651. package/dist/memory/summarizeMemory.cjs.map +1 -0
  652. package/dist/memory/summarizeMemory.d.cts +65 -0
  653. package/dist/memory/summarizeMemory.d.ts +65 -0
  654. package/dist/memory/summarizeMemory.js +79 -0
  655. package/dist/memory/summarizeMemory.js.map +1 -0
  656. package/dist/memory/tokenMemory.cjs +154 -0
  657. package/dist/memory/tokenMemory.cjs.map +1 -0
  658. package/dist/memory/tokenMemory.d.cts +55 -0
  659. package/dist/memory/tokenMemory.d.ts +55 -0
  660. package/dist/memory/tokenMemory.js +133 -0
  661. package/dist/memory/tokenMemory.js.map +1 -0
  662. package/dist/memory/unconstrainedMemory.cjs +43 -0
  663. package/dist/memory/unconstrainedMemory.cjs.map +1 -0
  664. package/dist/memory/unconstrainedMemory.d.cts +20 -0
  665. package/dist/memory/unconstrainedMemory.d.ts +20 -0
  666. package/dist/memory/unconstrainedMemory.js +41 -0
  667. package/dist/memory/unconstrainedMemory.js.map +1 -0
  668. package/dist/parsers/errors.cjs +32 -0
  669. package/dist/parsers/errors.cjs.map +1 -0
  670. package/dist/parsers/errors.d.cts +46 -0
  671. package/dist/parsers/errors.d.ts +46 -0
  672. package/dist/parsers/errors.js +30 -0
  673. package/dist/parsers/errors.js.map +1 -0
  674. package/dist/parsers/field.cjs +192 -0
  675. package/dist/parsers/field.cjs.map +1 -0
  676. package/dist/parsers/field.d.cts +68 -0
  677. package/dist/parsers/field.d.ts +68 -0
  678. package/dist/parsers/field.js +188 -0
  679. package/dist/parsers/field.js.map +1 -0
  680. package/dist/parsers/linePrefix.cjs +312 -0
  681. package/dist/parsers/linePrefix.cjs.map +1 -0
  682. package/dist/parsers/linePrefix.d.cts +127 -0
  683. package/dist/parsers/linePrefix.d.ts +127 -0
  684. package/dist/parsers/linePrefix.js +305 -0
  685. package/dist/parsers/linePrefix.js.map +1 -0
  686. package/dist/serializer/error.cjs +21 -0
  687. package/dist/serializer/error.cjs.map +1 -0
  688. package/dist/serializer/error.d.cts +25 -0
  689. package/dist/serializer/error.d.ts +25 -0
  690. package/dist/serializer/error.js +19 -0
  691. package/dist/serializer/error.js.map +1 -0
  692. package/dist/serializer/serializer.cjs +543 -0
  693. package/dist/serializer/serializer.cjs.map +1 -0
  694. package/dist/serializer/serializer.d.cts +4 -0
  695. package/dist/serializer/serializer.d.ts +4 -0
  696. package/dist/serializer/serializer.js +521 -0
  697. package/dist/serializer/serializer.js.map +1 -0
  698. package/dist/serializer/utils.cjs +261 -0
  699. package/dist/serializer/utils.cjs.map +1 -0
  700. package/dist/serializer/utils.d.cts +4 -0
  701. package/dist/serializer/utils.d.ts +4 -0
  702. package/dist/serializer/utils.js +226 -0
  703. package/dist/serializer/utils.js.map +1 -0
  704. package/dist/serializer-CJx5ZpUx.d.cts +125 -0
  705. package/dist/serializer-VYDhdryk.d.ts +125 -0
  706. package/dist/template.cjs +121 -0
  707. package/dist/template.cjs.map +1 -0
  708. package/dist/template.d.cts +75 -0
  709. package/dist/template.d.ts +75 -0
  710. package/dist/template.js +113 -0
  711. package/dist/template.js.map +1 -0
  712. package/dist/tools/arxiv.cjs +212 -0
  713. package/dist/tools/arxiv.cjs.map +1 -0
  714. package/dist/tools/arxiv.d.cts +196 -0
  715. package/dist/tools/arxiv.d.ts +196 -0
  716. package/dist/tools/arxiv.js +205 -0
  717. package/dist/tools/arxiv.js.map +1 -0
  718. package/dist/tools/base.cjs +434 -0
  719. package/dist/tools/base.cjs.map +1 -0
  720. package/dist/tools/base.d.cts +156 -0
  721. package/dist/tools/base.d.ts +156 -0
  722. package/dist/tools/base.js +407 -0
  723. package/dist/tools/base.js.map +1 -0
  724. package/dist/tools/calculator.cjs +74 -0
  725. package/dist/tools/calculator.cjs.map +1 -0
  726. package/dist/tools/calculator.d.cts +63 -0
  727. package/dist/tools/calculator.d.ts +63 -0
  728. package/dist/tools/calculator.js +72 -0
  729. package/dist/tools/calculator.js.map +1 -0
  730. package/dist/tools/custom.cjs +122 -0
  731. package/dist/tools/custom.cjs.map +1 -0
  732. package/dist/tools/custom.d.cts +110 -0
  733. package/dist/tools/custom.d.ts +110 -0
  734. package/dist/tools/custom.js +118 -0
  735. package/dist/tools/custom.js.map +1 -0
  736. package/dist/tools/database/elasticsearch.cjs +157 -0
  737. package/dist/tools/database/elasticsearch.cjs.map +1 -0
  738. package/dist/tools/database/elasticsearch.d.cts +78 -0
  739. package/dist/tools/database/elasticsearch.d.ts +78 -0
  740. package/dist/tools/database/elasticsearch.js +154 -0
  741. package/dist/tools/database/elasticsearch.js.map +1 -0
  742. package/dist/tools/database/metadata.cjs +114 -0
  743. package/dist/tools/database/metadata.cjs.map +1 -0
  744. package/dist/tools/database/metadata.d.cts +27 -0
  745. package/dist/tools/database/metadata.d.ts +27 -0
  746. package/dist/tools/database/metadata.js +112 -0
  747. package/dist/tools/database/metadata.js.map +1 -0
  748. package/dist/tools/database/milvus.cjs +191 -0
  749. package/dist/tools/database/milvus.cjs.map +1 -0
  750. package/dist/tools/database/milvus.d.cts +89 -0
  751. package/dist/tools/database/milvus.d.ts +89 -0
  752. package/dist/tools/database/milvus.js +188 -0
  753. package/dist/tools/database/milvus.js.map +1 -0
  754. package/dist/tools/database/sql.cjs +174 -0
  755. package/dist/tools/database/sql.cjs.map +1 -0
  756. package/dist/tools/database/sql.d.cts +71 -0
  757. package/dist/tools/database/sql.d.ts +71 -0
  758. package/dist/tools/database/sql.js +170 -0
  759. package/dist/tools/database/sql.js.map +1 -0
  760. package/dist/tools/llm.cjs +74 -0
  761. package/dist/tools/llm.cjs.map +1 -0
  762. package/dist/tools/llm.d.cts +68 -0
  763. package/dist/tools/llm.d.ts +68 -0
  764. package/dist/tools/llm.js +72 -0
  765. package/dist/tools/llm.js.map +1 -0
  766. package/dist/tools/mcp.cjs +73 -0
  767. package/dist/tools/mcp.cjs.map +1 -0
  768. package/dist/tools/mcp.d.cts +52 -0
  769. package/dist/tools/mcp.d.ts +52 -0
  770. package/dist/tools/mcp.js +70 -0
  771. package/dist/tools/mcp.js.map +1 -0
  772. package/dist/tools/openapi.cjs +178 -0
  773. package/dist/tools/openapi.cjs.map +1 -0
  774. package/dist/tools/openapi.d.cts +59 -0
  775. package/dist/tools/openapi.d.ts +59 -0
  776. package/dist/tools/openapi.js +175 -0
  777. package/dist/tools/openapi.js.map +1 -0
  778. package/dist/tools/python/output.cjs +65 -0
  779. package/dist/tools/python/output.cjs.map +1 -0
  780. package/dist/tools/python/output.d.cts +52 -0
  781. package/dist/tools/python/output.d.ts +52 -0
  782. package/dist/tools/python/output.js +63 -0
  783. package/dist/tools/python/output.js.map +1 -0
  784. package/dist/tools/python/python.cjs +163 -0
  785. package/dist/tools/python/python.cjs.map +1 -0
  786. package/dist/tools/python/python.d.cts +91 -0
  787. package/dist/tools/python/python.d.ts +91 -0
  788. package/dist/tools/python/python.js +160 -0
  789. package/dist/tools/python/python.js.map +1 -0
  790. package/dist/tools/python/storage.cjs +170 -0
  791. package/dist/tools/python/storage.cjs.map +1 -0
  792. package/dist/tools/python/storage.d.cts +83 -0
  793. package/dist/tools/python/storage.d.ts +83 -0
  794. package/dist/tools/python/storage.js +142 -0
  795. package/dist/tools/python/storage.js.map +1 -0
  796. package/dist/tools/search/base.cjs +77 -0
  797. package/dist/tools/search/base.cjs.map +1 -0
  798. package/dist/tools/search/base.d.cts +49 -0
  799. package/dist/tools/search/base.d.ts +49 -0
  800. package/dist/tools/search/base.js +55 -0
  801. package/dist/tools/search/base.js.map +1 -0
  802. package/dist/tools/search/duckDuckGoSearch.cjs +146 -0
  803. package/dist/tools/search/duckDuckGoSearch.cjs.map +1 -0
  804. package/dist/tools/search/duckDuckGoSearch.d.cts +75 -0
  805. package/dist/tools/search/duckDuckGoSearch.d.ts +75 -0
  806. package/dist/tools/search/duckDuckGoSearch.js +136 -0
  807. package/dist/tools/search/duckDuckGoSearch.js.map +1 -0
  808. package/dist/tools/search/googleSearch.cjs +155 -0
  809. package/dist/tools/search/googleSearch.cjs.map +1 -0
  810. package/dist/tools/search/googleSearch.d.cts +62 -0
  811. package/dist/tools/search/googleSearch.d.ts +62 -0
  812. package/dist/tools/search/googleSearch.js +152 -0
  813. package/dist/tools/search/googleSearch.js.map +1 -0
  814. package/dist/tools/search/searXNGSearch.cjs +86 -0
  815. package/dist/tools/search/searXNGSearch.cjs.map +1 -0
  816. package/dist/tools/search/searXNGSearch.d.cts +61 -0
  817. package/dist/tools/search/searXNGSearch.d.ts +61 -0
  818. package/dist/tools/search/searXNGSearch.js +83 -0
  819. package/dist/tools/search/searXNGSearch.js.map +1 -0
  820. package/dist/tools/search/wikipedia.cjs +338 -0
  821. package/dist/tools/search/wikipedia.cjs.map +1 -0
  822. package/dist/tools/search/wikipedia.d.cts +108 -0
  823. package/dist/tools/search/wikipedia.d.ts +108 -0
  824. package/dist/tools/search/wikipedia.js +310 -0
  825. package/dist/tools/search/wikipedia.js.map +1 -0
  826. package/dist/tools/similarity.cjs +61 -0
  827. package/dist/tools/similarity.cjs.map +1 -0
  828. package/dist/tools/similarity.d.cts +90 -0
  829. package/dist/tools/similarity.d.ts +90 -0
  830. package/dist/tools/similarity.js +58 -0
  831. package/dist/tools/similarity.js.map +1 -0
  832. package/dist/tools/weather/openMeteo.cjs +221 -0
  833. package/dist/tools/weather/openMeteo.cjs.map +1 -0
  834. package/dist/tools/weather/openMeteo.d.cts +123 -0
  835. package/dist/tools/weather/openMeteo.d.ts +123 -0
  836. package/dist/tools/weather/openMeteo.js +218 -0
  837. package/dist/tools/weather/openMeteo.js.map +1 -0
  838. package/dist/tools/web/webCrawler.cjs +111 -0
  839. package/dist/tools/web/webCrawler.cjs.map +1 -0
  840. package/dist/tools/web/webCrawler.d.cts +66 -0
  841. package/dist/tools/web/webCrawler.d.ts +66 -0
  842. package/dist/tools/web/webCrawler.js +108 -0
  843. package/dist/tools/web/webCrawler.js.map +1 -0
  844. package/dist/version.cjs +9 -0
  845. package/dist/version.cjs.map +1 -0
  846. package/dist/version.d.cts +18 -0
  847. package/dist/version.d.ts +18 -0
  848. package/dist/version.js +9 -0
  849. package/dist/version.js.map +1 -0
  850. package/dist/workflows/agent.cjs +95 -0
  851. package/dist/workflows/agent.cjs.map +1 -0
  852. package/dist/workflows/agent.d.cts +166 -0
  853. package/dist/workflows/agent.d.ts +166 -0
  854. package/dist/workflows/agent.js +93 -0
  855. package/dist/workflows/agent.js.map +1 -0
  856. package/dist/workflows/workflow.cjs +222 -0
  857. package/dist/workflows/workflow.cjs.map +1 -0
  858. package/dist/workflows/workflow.d.cts +118 -0
  859. package/dist/workflows/workflow.d.ts +118 -0
  860. package/dist/workflows/workflow.js +219 -0
  861. package/dist/workflows/workflow.js.map +1 -0
  862. package/package.json +339 -0
@@ -0,0 +1,222 @@
1
+ 'use strict';
2
+
3
+ var zod = require('zod');
4
+ var serializable_cjs = require('../internals/serializable.cjs');
5
+ var emitter_cjs = require('../emitter/emitter.cjs');
6
+ var context_cjs = require('../context.cjs');
7
+ var remeda = require('remeda');
8
+ var utils_cjs = require('../serializer/utils.cjs');
9
+ var errors_cjs = require('../errors.cjs');
10
+
11
+ var __defProp = Object.defineProperty;
12
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
13
+ class WorkflowError extends errors_cjs.FrameworkError {
14
+ static {
15
+ __name(this, "WorkflowError");
16
+ }
17
+ constructor(message, extra) {
18
+ super(message, extra?.errors, {
19
+ context: extra?.run ?? {},
20
+ isRetryable: false,
21
+ isFatal: true
22
+ });
23
+ }
24
+ }
25
+ class Workflow extends serializable_cjs.Serializable {
26
+ static {
27
+ __name(this, "Workflow");
28
+ }
29
+ input;
30
+ static START = "__start__";
31
+ static SELF = "__self__";
32
+ static PREV = "__prev__";
33
+ static NEXT = "__next__";
34
+ static END = "__end__";
35
+ emitter;
36
+ steps;
37
+ startStep;
38
+ constructor(input) {
39
+ super(), this.input = input, this.steps = /* @__PURE__ */ new Map(), this.startStep = void 0;
40
+ this.emitter = emitter_cjs.Emitter.root.child({
41
+ namespace: [
42
+ "workflow",
43
+ remeda.toCamelCase(input?.name ?? "")
44
+ ].filter(Boolean),
45
+ creator: this
46
+ });
47
+ }
48
+ getSteps() {
49
+ return Array.from(this.steps.keys());
50
+ }
51
+ get name() {
52
+ return this.input.name ?? "";
53
+ }
54
+ get schemas() {
55
+ return remeda.pick(this.input, [
56
+ "schema",
57
+ "outputSchema"
58
+ ]);
59
+ }
60
+ addStep(name, step) {
61
+ return this._addStep(name, step);
62
+ }
63
+ addStrictStep(name, schema, step) {
64
+ return this._addStep(name, schema, step);
65
+ }
66
+ _addStep(name, schemaOrStep, stepOrEmpty) {
67
+ if (!name.trim()) {
68
+ throw new errors_cjs.ValueError(`Step name cannot be empty!`);
69
+ }
70
+ if (this.steps.has(name)) {
71
+ throw new errors_cjs.ValueError(`Step '${name}' already exists!`);
72
+ }
73
+ if (name === Workflow.END) {
74
+ throw new errors_cjs.ValueError(`The name '${name}' cannot be used!`);
75
+ }
76
+ const schema = schemaOrStep && stepOrEmpty ? schemaOrStep : this.input.schema;
77
+ const stepOrFlow = stepOrEmpty || schemaOrStep;
78
+ this.steps.set(name, {
79
+ schema,
80
+ handler: stepOrFlow instanceof Workflow ? stepOrFlow.asStep({}) : stepOrFlow
81
+ });
82
+ return this;
83
+ }
84
+ setStart(name) {
85
+ this.startStep = name;
86
+ return this;
87
+ }
88
+ run(state, options = {}) {
89
+ return context_cjs.RunContext.enter(this, {
90
+ signal: options?.signal,
91
+ params: [
92
+ state,
93
+ options
94
+ ]
95
+ }, async (runContext) => {
96
+ const run = {
97
+ steps: [],
98
+ state: this.input.schema.parse(state),
99
+ result: void 0
100
+ };
101
+ const handlers = {
102
+ steps: run.steps,
103
+ signal: runContext.signal,
104
+ abort: /* @__PURE__ */ __name((reason) => runContext.abort(reason), "abort")
105
+ };
106
+ let next = this.findStep(options?.start || this.startStep || this.getSteps()[0]).current ?? Workflow.END;
107
+ while (next && next !== Workflow.END) {
108
+ const name = next;
109
+ const step = this.steps.get(next);
110
+ if (!step) {
111
+ throw new WorkflowError(`Step '${next}' was not found.`, {
112
+ run
113
+ });
114
+ }
115
+ await runContext.emitter.emit("start", {
116
+ run,
117
+ step: next
118
+ });
119
+ try {
120
+ const state2 = await step.schema.parseAsync(run.state).catch(async (err) => {
121
+ throw new WorkflowError(`Step '${next}' cannot be executed because the provided input doesn't adhere to the step's schema.`, {
122
+ run: utils_cjs.shallowCopy(run),
123
+ errors: [
124
+ err
125
+ ]
126
+ });
127
+ }).then(utils_cjs.deepCopy);
128
+ const nextStepRaw = await step.handler(state2, handlers);
129
+ if (nextStepRaw === Workflow.START) {
130
+ next = run.steps.at(0)?.name;
131
+ } else if (nextStepRaw === Workflow.PREV) {
132
+ next = run.steps.at(-2)?.name;
133
+ } else if (nextStepRaw === Workflow.SELF) {
134
+ next = run.steps.at(-1)?.name;
135
+ } else if (!nextStepRaw || nextStepRaw === Workflow.NEXT) {
136
+ next = this.findStep(next).next || Workflow.END;
137
+ } else {
138
+ next = nextStepRaw;
139
+ }
140
+ const stepResult = {
141
+ name,
142
+ state: state2,
143
+ next
144
+ };
145
+ run.steps.push(stepResult);
146
+ run.state = stepResult.state;
147
+ await runContext.emitter.emit("success", {
148
+ run: utils_cjs.shallowCopy(run),
149
+ state: stepResult.state,
150
+ step: stepResult.name,
151
+ next: stepResult.next
152
+ });
153
+ } catch (error) {
154
+ await runContext.emitter.emit("error", {
155
+ run: utils_cjs.shallowCopy(run),
156
+ step: next,
157
+ error
158
+ });
159
+ throw error;
160
+ }
161
+ }
162
+ run.result = await (this.input.outputSchema ?? this.input.schema).parseAsync(run.state).catch((err) => {
163
+ throw new WorkflowError(`Workflow has ended but it's state does not adhere to the workflow's output schema.`, {
164
+ run: utils_cjs.shallowCopy(run),
165
+ errors: [
166
+ err
167
+ ]
168
+ });
169
+ });
170
+ return run;
171
+ });
172
+ }
173
+ delStep(name) {
174
+ if (this.startStep === name) {
175
+ this.startStep = void 0;
176
+ }
177
+ this.steps.delete(name);
178
+ return this;
179
+ }
180
+ asStep(overrides) {
181
+ return async (state, ctx) => {
182
+ const mappedInput = overrides?.input ? overrides.input(state) : state;
183
+ const result = await this.run(mappedInput, {
184
+ start: overrides?.start,
185
+ signal: ctx.signal
186
+ });
187
+ const mappedOutput = overrides?.output ? overrides.output(result.state) : result.state;
188
+ Object.assign(state, mappedOutput);
189
+ return overrides.next;
190
+ };
191
+ }
192
+ findStep(current) {
193
+ const steps = this.getSteps();
194
+ const index = steps.indexOf(current);
195
+ return {
196
+ prev: steps[index - 1],
197
+ current: steps[index],
198
+ next: steps[index + 1]
199
+ };
200
+ }
201
+ createSnapshot() {
202
+ return {
203
+ input: remeda.omit(this.input, [
204
+ "schema",
205
+ "outputSchema"
206
+ ]),
207
+ emitter: this.emitter,
208
+ startStep: this.startStep,
209
+ steps: this.steps
210
+ };
211
+ }
212
+ loadSnapshot(snapshot) {
213
+ Object.assign(this, snapshot);
214
+ this.input.schema ??= zod.z.any();
215
+ this.input.outputSchema ??= zod.z.any();
216
+ }
217
+ }
218
+
219
+ exports.Workflow = Workflow;
220
+ exports.WorkflowError = WorkflowError;
221
+ //# sourceMappingURL=workflow.cjs.map
222
+ //# sourceMappingURL=workflow.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/workflows/workflow.ts"],"names":["WorkflowError","FrameworkError","constructor","message","extra","errors","context","run","isRetryable","isFatal","Workflow","Serializable","START","SELF","PREV","NEXT","END","emitter","steps","startStep","input","Map","undefined","Emitter","root","child","namespace","toCamelCase","name","filter","Boolean","creator","getSteps","Array","from","keys","schemas","pick","addStep","step","_addStep","addStrictStep","schema","schemaOrStep","stepOrEmpty","trim","ValueError","has","stepOrFlow","set","handler","asStep","setStart","state","options","RunContext","enter","signal","params","runContext","parse","result","handlers","abort","reason","next","findStep","start","current","get","emit","parseAsync","catch","err","shallowCopy","then","deepCopy","nextStepRaw","at","stepResult","push","error","outputSchema","delStep","delete","overrides","ctx","mappedInput","mappedOutput","output","Object","assign","index","indexOf","prev","createSnapshot","omit","loadSnapshot","snapshot","z","any"],"mappings":"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","file":"workflow.cjs","sourcesContent":["/**\n * Copyright 2025 IBM Corp.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { z, ZodSchema } from \"zod\";\nimport { Serializable } from \"@/internals/serializable.js\";\nimport { Callback, Emitter } from \"@/emitter/emitter.js\";\nimport { RunContext } from \"@/context.js\";\nimport { omit, pick, toCamelCase } from \"remeda\";\nimport { deepCopy, shallowCopy } from \"@/serializer/utils.js\";\nimport { FrameworkError, ValueError } from \"@/errors.js\";\n\n// eslint-disable-next-line @typescript-eslint/no-invalid-void-type\ntype WorkflowStepHandlerReturn<K extends string> = K | ReservedStep | void;\n\nexport interface WorkflowRun<T extends ZodSchema, T2 extends ZodSchema, K extends string> {\n result: z.output<T2>;\n steps: WorkflowStepRes<T, K>[];\n state: z.output<T>;\n}\n\nexport interface WorkflowRunOptions<K extends string> {\n start?: K;\n signal?: AbortSignal;\n}\n\nexport interface WorkflowStepDef<T extends ZodSchema, K extends string> {\n schema: T;\n handler: WorkflowStepHandler<T, K>;\n}\n\nexport interface WorkflowStepRes<T extends ZodSchema, K extends string> {\n name: K;\n next: K | ReservedStep;\n state: z.output<T>;\n}\n\nexport interface WorkflowRunContext<T extends ZodSchema, K extends string> {\n steps: WorkflowStepRes<T, K>[];\n signal: AbortSignal;\n abort: (reason?: Error) => void;\n}\n\nexport type WorkflowStepHandler<T extends ZodSchema, K extends string> = (\n state: z.output<T>,\n context: WorkflowRunContext<T, K>,\n) => Promise<WorkflowStepHandlerReturn<K>> | WorkflowStepHandlerReturn<K>;\n\nexport interface WorkflowEvents<T extends ZodSchema, T2 extends ZodSchema, K extends string> {\n start: Callback<{ step: K; run: WorkflowRun<T, T2, K> }>;\n error: Callback<{\n step: K;\n error: Error;\n run: WorkflowRun<T, T2, K>;\n }>;\n success: Callback<{\n step: K;\n next: K | ReservedStep;\n state: z.output<T>;\n run: WorkflowRun<T, T2, K>;\n }>;\n}\n\ninterface FlowInput<TS extends ZodSchema, TS2 extends ZodSchema = TS> {\n name?: string;\n schema: TS;\n outputSchema?: TS2;\n}\n\ntype RunStep<K extends string> = K | typeof Workflow.END;\ntype ReservedStep =\n | typeof Workflow.START\n | typeof Workflow.NEXT\n | typeof Workflow.PREV\n | typeof Workflow.END\n | typeof Workflow.SELF;\nexport type FlowStepName<K extends string> = K | ReservedStep;\n\nexport class WorkflowError<\n T extends ZodSchema,\n T2 extends ZodSchema,\n K extends string,\n> extends FrameworkError {\n constructor(message: string, extra?: { run?: WorkflowRun<T, T2, K>; errors?: Error[] }) {\n super(message, extra?.errors, {\n context: extra?.run ?? {},\n isRetryable: false,\n isFatal: true,\n });\n }\n}\n\nexport class Workflow<\n TInput extends ZodSchema,\n TOutput extends ZodSchema = TInput,\n TKeys extends string = string,\n> extends Serializable {\n public static readonly START = \"__start__\";\n public static readonly SELF = \"__self__\";\n public static readonly PREV = \"__prev__\";\n public static readonly NEXT = \"__next__\";\n public static readonly END = \"__end__\";\n\n public readonly emitter: Emitter<WorkflowEvents<TInput, TOutput, TKeys>>;\n\n protected readonly steps = new Map<string, WorkflowStepDef<TInput, TKeys>>();\n protected startStep: TKeys | undefined = undefined;\n\n constructor(protected readonly input: FlowInput<TInput, TOutput>) {\n super();\n this.emitter = Emitter.root.child({\n namespace: [\"workflow\", toCamelCase(input?.name ?? \"\")].filter(Boolean),\n creator: this,\n });\n }\n\n getSteps() {\n return Array.from(this.steps.keys()) as TKeys[];\n }\n\n get name() {\n return this.input.name ?? \"\";\n }\n\n get schemas() {\n return pick(this.input, [\"schema\", \"outputSchema\"]);\n }\n\n addStep<L extends string>(\n name: L,\n handler: WorkflowStepHandler<TInput | TOutput, TKeys>,\n ): Workflow<TInput, TOutput, L | TKeys>;\n addStep<L extends string, TFlow extends AnyWorkflowFlow>(\n name: L,\n flow: Workflow.pipeable<this, TFlow>,\n ): Workflow<TInput, TOutput, L | TKeys>;\n addStep<L extends string>(\n name: L,\n step: WorkflowStepHandler<TInput | TOutput, TKeys> | AnyWorkflowFlow,\n ): Workflow<TInput, TOutput, L | TKeys> {\n return this._addStep(name, step);\n }\n\n addStrictStep<L extends string, TI2 extends ZodSchema>(\n name: L,\n schema: TI2,\n handler: WorkflowStepHandler<TI2, TKeys>,\n ): Workflow<TInput, TOutput, L | TKeys>;\n addStrictStep<L extends string, TI2 extends ZodSchema, TFlow extends AnyWorkflowFlow>(\n name: L,\n schema: TI2,\n flow: Workflow.pipeable<Workflow<TI2, TOutput, TKeys>, TFlow>,\n ): Workflow<TInput, TOutput, L | TKeys>;\n addStrictStep<L extends string, TI2 extends ZodSchema>(\n name: L,\n schema: TI2,\n step: WorkflowStepHandler<TI2, TKeys> | AnyWorkflowFlow,\n ): Workflow<TInput, TOutput, L | TKeys> {\n return this._addStep(name, schema, step);\n }\n\n protected _addStep<TI2 extends ZodSchema = TInput, L extends string = TKeys>(\n name: L,\n schemaOrStep: TI2 | WorkflowStepHandler<TInput, TKeys> | AnyWorkflowFlow,\n stepOrEmpty?: WorkflowStepHandler<TI2, TKeys> | AnyWorkflowFlow,\n ): Workflow<TInput, TOutput, L | TKeys> {\n if (!name.trim()) {\n throw new ValueError(`Step name cannot be empty!`);\n }\n if (this.steps.has(name)) {\n throw new ValueError(`Step '${name}' already exists!`);\n }\n if (name === Workflow.END) {\n throw new ValueError(`The name '${name}' cannot be used!`);\n }\n\n const schema = (schemaOrStep && stepOrEmpty ? schemaOrStep : this.input.schema) as TInput;\n const stepOrFlow = stepOrEmpty || schemaOrStep;\n\n this.steps.set(name, {\n schema,\n handler: stepOrFlow instanceof Workflow ? stepOrFlow.asStep({}) : stepOrFlow,\n } as WorkflowStepDef<TInput, TKeys>);\n\n return this as unknown as Workflow<TInput, TOutput, L | TKeys>;\n }\n\n setStart(name: TKeys) {\n this.startStep = name;\n return this;\n }\n\n run(state: z.input<TInput>, options: WorkflowRunOptions<TKeys> = {}) {\n return RunContext.enter(\n this,\n { signal: options?.signal, params: [state, options] as const },\n async (runContext): Promise<WorkflowRun<TInput, TOutput, TKeys>> => {\n const run: WorkflowRun<TInput, TOutput, TKeys> = {\n steps: [],\n state: this.input.schema.parse(state),\n result: undefined as z.output<TOutput>,\n };\n const handlers: WorkflowRunContext<TInput, TKeys> = {\n steps: run.steps,\n signal: runContext.signal,\n abort: (reason) => runContext.abort(reason),\n };\n\n let next: RunStep<TKeys> =\n this.findStep(options?.start || this.startStep || this.getSteps()[0]).current ??\n Workflow.END;\n\n while (next && next !== Workflow.END) {\n const name = next;\n const step = this.steps.get(next);\n if (!step) {\n throw new WorkflowError(`Step '${next}' was not found.`, { run });\n }\n await runContext.emitter.emit(\"start\", { run, step: next });\n try {\n const state = await step.schema\n .parseAsync(run.state)\n .catch(async (err: Error) => {\n throw new WorkflowError(\n `Step '${next}' cannot be executed because the provided input doesn't adhere to the step's schema.`,\n { run: shallowCopy(run), errors: [err] },\n );\n })\n .then(deepCopy);\n\n const nextStepRaw = await step.handler(state, handlers);\n if (nextStepRaw === Workflow.START) {\n next = run.steps.at(0)?.name!;\n } else if (nextStepRaw === Workflow.PREV) {\n next = run.steps.at(-2)?.name!;\n } else if (nextStepRaw === Workflow.SELF) {\n next = run.steps.at(-1)?.name!;\n } else if (!nextStepRaw || nextStepRaw === Workflow.NEXT) {\n next = this.findStep(next).next || Workflow.END;\n } else {\n next = nextStepRaw;\n }\n\n const stepResult: WorkflowStepRes<TInput, TKeys> = {\n name,\n state,\n next,\n };\n run.steps.push(stepResult);\n run.state = stepResult.state;\n\n await runContext.emitter.emit(\"success\", {\n run: shallowCopy(run),\n state: stepResult.state,\n step: stepResult.name,\n next: stepResult.next,\n });\n } catch (error) {\n await runContext.emitter.emit(\"error\", {\n run: shallowCopy(run),\n step: next as TKeys,\n error,\n });\n throw error;\n }\n }\n\n run.result = await (this.input.outputSchema ?? this.input.schema)\n .parseAsync(run.state)\n .catch((err) => {\n throw new WorkflowError(\n `Workflow has ended but it's state does not adhere to the workflow's output schema.`,\n { run: shallowCopy(run), errors: [err] },\n );\n });\n return run;\n },\n );\n }\n\n delStep<L extends TKeys>(name: L): Workflow<TInput, TOutput, Exclude<TKeys, L>> {\n if (this.startStep === name) {\n this.startStep = undefined;\n }\n this.steps.delete(name);\n return this as unknown as Workflow<TInput, TOutput, Exclude<TKeys, L>>;\n }\n\n asStep<\n TInput2 extends ZodSchema = TInput,\n TOutput2 extends ZodSchema = TOutput,\n TKeys2 extends string = TKeys,\n >(overrides: {\n input?: (input: z.output<TInput2>) => z.output<TInput> | z.input<TInput>;\n output?: (output: z.output<TOutput>) => z.output<TOutput2> | z.input<TOutput2>;\n start?: TKeys;\n next?: FlowStepName<TKeys2>;\n }): WorkflowStepHandler<TInput2, TKeys | TKeys2> {\n return async (state, ctx) => {\n const mappedInput = overrides?.input ? overrides.input(state) : state;\n const result = await this.run(mappedInput, { start: overrides?.start, signal: ctx.signal });\n const mappedOutput = overrides?.output ? overrides.output(result.state) : result.state;\n Object.assign(state, mappedOutput);\n return overrides.next;\n };\n }\n\n protected findStep(current: TKeys) {\n const steps = this.getSteps();\n const index = steps.indexOf(current);\n return {\n prev: steps[index - 1],\n current: steps[index],\n next: steps[index + 1],\n };\n }\n\n createSnapshot() {\n return {\n input: omit(this.input, [\"schema\", \"outputSchema\"]),\n emitter: this.emitter,\n startStep: this.startStep,\n steps: this.steps,\n };\n }\n\n loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>) {\n Object.assign(this, snapshot);\n this.input.schema ??= z.any() as unknown as TInput;\n this.input.outputSchema ??= z.any() as unknown as TOutput;\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace Workflow {\n export type pipeable<T extends AnyWorkflowFlow, T2 extends AnyWorkflowFlow> =\n Workflow.state<T> extends Workflow.input<T2> ? T2 : never;\n export type input<T> = T extends Workflow<infer A, any, any> ? z.input<A> : never;\n export type state<T> = T extends Workflow<infer A, any, any> ? z.output<A> : never;\n export type output<T> = T extends Workflow<any, infer A, any> ? z.output<A> : never;\n export type run<T> = T extends Workflow<infer A, infer B, infer C> ? WorkflowRun<A, B, C> : never;\n}\n\nexport type AnyWorkflowFlow = Workflow<any, any, any>;\n"]}
@@ -0,0 +1,118 @@
1
+ import { Run } from '../context.cjs';
2
+ import { ZodSchema, z } from 'zod';
3
+ import { Serializable } from '../internals/serializable.cjs';
4
+ import { C as Callback, E as Emitter } from '../emitter-BWtGHYn0.cjs';
5
+ import { FrameworkError } from '../errors.cjs';
6
+ import '../internals/helpers/promise.cjs';
7
+ import '../internals/types.cjs';
8
+ import '../internals/helpers/guards.cjs';
9
+
10
+ type WorkflowStepHandlerReturn<K extends string> = K | ReservedStep | void;
11
+ interface WorkflowRun<T extends ZodSchema, T2 extends ZodSchema, K extends string> {
12
+ result: z.output<T2>;
13
+ steps: WorkflowStepRes<T, K>[];
14
+ state: z.output<T>;
15
+ }
16
+ interface WorkflowRunOptions<K extends string> {
17
+ start?: K;
18
+ signal?: AbortSignal;
19
+ }
20
+ interface WorkflowStepDef<T extends ZodSchema, K extends string> {
21
+ schema: T;
22
+ handler: WorkflowStepHandler<T, K>;
23
+ }
24
+ interface WorkflowStepRes<T extends ZodSchema, K extends string> {
25
+ name: K;
26
+ next: K | ReservedStep;
27
+ state: z.output<T>;
28
+ }
29
+ interface WorkflowRunContext<T extends ZodSchema, K extends string> {
30
+ steps: WorkflowStepRes<T, K>[];
31
+ signal: AbortSignal;
32
+ abort: (reason?: Error) => void;
33
+ }
34
+ type WorkflowStepHandler<T extends ZodSchema, K extends string> = (state: z.output<T>, context: WorkflowRunContext<T, K>) => Promise<WorkflowStepHandlerReturn<K>> | WorkflowStepHandlerReturn<K>;
35
+ interface WorkflowEvents<T extends ZodSchema, T2 extends ZodSchema, K extends string> {
36
+ start: Callback<{
37
+ step: K;
38
+ run: WorkflowRun<T, T2, K>;
39
+ }>;
40
+ error: Callback<{
41
+ step: K;
42
+ error: Error;
43
+ run: WorkflowRun<T, T2, K>;
44
+ }>;
45
+ success: Callback<{
46
+ step: K;
47
+ next: K | ReservedStep;
48
+ state: z.output<T>;
49
+ run: WorkflowRun<T, T2, K>;
50
+ }>;
51
+ }
52
+ interface FlowInput<TS extends ZodSchema, TS2 extends ZodSchema = TS> {
53
+ name?: string;
54
+ schema: TS;
55
+ outputSchema?: TS2;
56
+ }
57
+ type ReservedStep = typeof Workflow.START | typeof Workflow.NEXT | typeof Workflow.PREV | typeof Workflow.END | typeof Workflow.SELF;
58
+ type FlowStepName<K extends string> = K | ReservedStep;
59
+ declare class WorkflowError<T extends ZodSchema, T2 extends ZodSchema, K extends string> extends FrameworkError {
60
+ constructor(message: string, extra?: {
61
+ run?: WorkflowRun<T, T2, K>;
62
+ errors?: Error[];
63
+ });
64
+ }
65
+ declare class Workflow<TInput extends ZodSchema, TOutput extends ZodSchema = TInput, TKeys extends string = string> extends Serializable {
66
+ protected readonly input: FlowInput<TInput, TOutput>;
67
+ static readonly START = "__start__";
68
+ static readonly SELF = "__self__";
69
+ static readonly PREV = "__prev__";
70
+ static readonly NEXT = "__next__";
71
+ static readonly END = "__end__";
72
+ readonly emitter: Emitter<WorkflowEvents<TInput, TOutput, TKeys>>;
73
+ protected readonly steps: Map<string, WorkflowStepDef<TInput, TKeys>>;
74
+ protected startStep: TKeys | undefined;
75
+ constructor(input: FlowInput<TInput, TOutput>);
76
+ getSteps(): TKeys[];
77
+ get name(): string;
78
+ get schemas(): {
79
+ schema: TInput;
80
+ outputSchema?: TOutput | undefined;
81
+ };
82
+ addStep<L extends string>(name: L, handler: WorkflowStepHandler<TInput | TOutput, TKeys>): Workflow<TInput, TOutput, L | TKeys>;
83
+ addStep<L extends string, TFlow extends AnyWorkflowFlow>(name: L, flow: Workflow.pipeable<this, TFlow>): Workflow<TInput, TOutput, L | TKeys>;
84
+ addStrictStep<L extends string, TI2 extends ZodSchema>(name: L, schema: TI2, handler: WorkflowStepHandler<TI2, TKeys>): Workflow<TInput, TOutput, L | TKeys>;
85
+ addStrictStep<L extends string, TI2 extends ZodSchema, TFlow extends AnyWorkflowFlow>(name: L, schema: TI2, flow: Workflow.pipeable<Workflow<TI2, TOutput, TKeys>, TFlow>): Workflow<TInput, TOutput, L | TKeys>;
86
+ protected _addStep<TI2 extends ZodSchema = TInput, L extends string = TKeys>(name: L, schemaOrStep: TI2 | WorkflowStepHandler<TInput, TKeys> | AnyWorkflowFlow, stepOrEmpty?: WorkflowStepHandler<TI2, TKeys> | AnyWorkflowFlow): Workflow<TInput, TOutput, L | TKeys>;
87
+ setStart(name: TKeys): this;
88
+ run(state: z.input<TInput>, options?: WorkflowRunOptions<TKeys>): Run<WorkflowRun<TInput, TOutput, TKeys>, this, readonly [z.input<TInput>, WorkflowRunOptions<TKeys>]>;
89
+ delStep<L extends TKeys>(name: L): Workflow<TInput, TOutput, Exclude<TKeys, L>>;
90
+ asStep<TInput2 extends ZodSchema = TInput, TOutput2 extends ZodSchema = TOutput, TKeys2 extends string = TKeys>(overrides: {
91
+ input?: (input: z.output<TInput2>) => z.output<TInput> | z.input<TInput>;
92
+ output?: (output: z.output<TOutput>) => z.output<TOutput2> | z.input<TOutput2>;
93
+ start?: TKeys;
94
+ next?: FlowStepName<TKeys2>;
95
+ }): WorkflowStepHandler<TInput2, TKeys | TKeys2>;
96
+ protected findStep(current: TKeys): {
97
+ prev: TKeys;
98
+ current: TKeys;
99
+ next: TKeys;
100
+ };
101
+ createSnapshot(): {
102
+ input: Omit<FlowInput<TInput, TOutput>, "schema" | "outputSchema">;
103
+ emitter: Emitter<WorkflowEvents<TInput, TOutput, TKeys>>;
104
+ startStep: TKeys | undefined;
105
+ steps: Map<string, WorkflowStepDef<TInput, TKeys>>;
106
+ };
107
+ loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>): void;
108
+ }
109
+ declare namespace Workflow {
110
+ type pipeable<T extends AnyWorkflowFlow, T2 extends AnyWorkflowFlow> = Workflow.state<T> extends Workflow.input<T2> ? T2 : never;
111
+ type input<T> = T extends Workflow<infer A, any, any> ? z.input<A> : never;
112
+ type state<T> = T extends Workflow<infer A, any, any> ? z.output<A> : never;
113
+ type output<T> = T extends Workflow<any, infer A, any> ? z.output<A> : never;
114
+ type run<T> = T extends Workflow<infer A, infer B, infer C> ? WorkflowRun<A, B, C> : never;
115
+ }
116
+ type AnyWorkflowFlow = Workflow<any, any, any>;
117
+
118
+ export { type AnyWorkflowFlow, type FlowStepName, Workflow, WorkflowError, type WorkflowEvents, type WorkflowRun, type WorkflowRunContext, type WorkflowRunOptions, type WorkflowStepDef, type WorkflowStepHandler, type WorkflowStepRes };
@@ -0,0 +1,118 @@
1
+ import { Run } from '../context.js';
2
+ import { ZodSchema, z } from 'zod';
3
+ import { Serializable } from '../internals/serializable.js';
4
+ import { C as Callback, E as Emitter } from '../emitter-l0W9gC1A.js';
5
+ import { FrameworkError } from '../errors.js';
6
+ import '../internals/helpers/promise.js';
7
+ import '../internals/types.js';
8
+ import '../internals/helpers/guards.js';
9
+
10
+ type WorkflowStepHandlerReturn<K extends string> = K | ReservedStep | void;
11
+ interface WorkflowRun<T extends ZodSchema, T2 extends ZodSchema, K extends string> {
12
+ result: z.output<T2>;
13
+ steps: WorkflowStepRes<T, K>[];
14
+ state: z.output<T>;
15
+ }
16
+ interface WorkflowRunOptions<K extends string> {
17
+ start?: K;
18
+ signal?: AbortSignal;
19
+ }
20
+ interface WorkflowStepDef<T extends ZodSchema, K extends string> {
21
+ schema: T;
22
+ handler: WorkflowStepHandler<T, K>;
23
+ }
24
+ interface WorkflowStepRes<T extends ZodSchema, K extends string> {
25
+ name: K;
26
+ next: K | ReservedStep;
27
+ state: z.output<T>;
28
+ }
29
+ interface WorkflowRunContext<T extends ZodSchema, K extends string> {
30
+ steps: WorkflowStepRes<T, K>[];
31
+ signal: AbortSignal;
32
+ abort: (reason?: Error) => void;
33
+ }
34
+ type WorkflowStepHandler<T extends ZodSchema, K extends string> = (state: z.output<T>, context: WorkflowRunContext<T, K>) => Promise<WorkflowStepHandlerReturn<K>> | WorkflowStepHandlerReturn<K>;
35
+ interface WorkflowEvents<T extends ZodSchema, T2 extends ZodSchema, K extends string> {
36
+ start: Callback<{
37
+ step: K;
38
+ run: WorkflowRun<T, T2, K>;
39
+ }>;
40
+ error: Callback<{
41
+ step: K;
42
+ error: Error;
43
+ run: WorkflowRun<T, T2, K>;
44
+ }>;
45
+ success: Callback<{
46
+ step: K;
47
+ next: K | ReservedStep;
48
+ state: z.output<T>;
49
+ run: WorkflowRun<T, T2, K>;
50
+ }>;
51
+ }
52
+ interface FlowInput<TS extends ZodSchema, TS2 extends ZodSchema = TS> {
53
+ name?: string;
54
+ schema: TS;
55
+ outputSchema?: TS2;
56
+ }
57
+ type ReservedStep = typeof Workflow.START | typeof Workflow.NEXT | typeof Workflow.PREV | typeof Workflow.END | typeof Workflow.SELF;
58
+ type FlowStepName<K extends string> = K | ReservedStep;
59
+ declare class WorkflowError<T extends ZodSchema, T2 extends ZodSchema, K extends string> extends FrameworkError {
60
+ constructor(message: string, extra?: {
61
+ run?: WorkflowRun<T, T2, K>;
62
+ errors?: Error[];
63
+ });
64
+ }
65
+ declare class Workflow<TInput extends ZodSchema, TOutput extends ZodSchema = TInput, TKeys extends string = string> extends Serializable {
66
+ protected readonly input: FlowInput<TInput, TOutput>;
67
+ static readonly START = "__start__";
68
+ static readonly SELF = "__self__";
69
+ static readonly PREV = "__prev__";
70
+ static readonly NEXT = "__next__";
71
+ static readonly END = "__end__";
72
+ readonly emitter: Emitter<WorkflowEvents<TInput, TOutput, TKeys>>;
73
+ protected readonly steps: Map<string, WorkflowStepDef<TInput, TKeys>>;
74
+ protected startStep: TKeys | undefined;
75
+ constructor(input: FlowInput<TInput, TOutput>);
76
+ getSteps(): TKeys[];
77
+ get name(): string;
78
+ get schemas(): {
79
+ schema: TInput;
80
+ outputSchema?: TOutput | undefined;
81
+ };
82
+ addStep<L extends string>(name: L, handler: WorkflowStepHandler<TInput | TOutput, TKeys>): Workflow<TInput, TOutput, L | TKeys>;
83
+ addStep<L extends string, TFlow extends AnyWorkflowFlow>(name: L, flow: Workflow.pipeable<this, TFlow>): Workflow<TInput, TOutput, L | TKeys>;
84
+ addStrictStep<L extends string, TI2 extends ZodSchema>(name: L, schema: TI2, handler: WorkflowStepHandler<TI2, TKeys>): Workflow<TInput, TOutput, L | TKeys>;
85
+ addStrictStep<L extends string, TI2 extends ZodSchema, TFlow extends AnyWorkflowFlow>(name: L, schema: TI2, flow: Workflow.pipeable<Workflow<TI2, TOutput, TKeys>, TFlow>): Workflow<TInput, TOutput, L | TKeys>;
86
+ protected _addStep<TI2 extends ZodSchema = TInput, L extends string = TKeys>(name: L, schemaOrStep: TI2 | WorkflowStepHandler<TInput, TKeys> | AnyWorkflowFlow, stepOrEmpty?: WorkflowStepHandler<TI2, TKeys> | AnyWorkflowFlow): Workflow<TInput, TOutput, L | TKeys>;
87
+ setStart(name: TKeys): this;
88
+ run(state: z.input<TInput>, options?: WorkflowRunOptions<TKeys>): Run<WorkflowRun<TInput, TOutput, TKeys>, this, readonly [z.input<TInput>, WorkflowRunOptions<TKeys>]>;
89
+ delStep<L extends TKeys>(name: L): Workflow<TInput, TOutput, Exclude<TKeys, L>>;
90
+ asStep<TInput2 extends ZodSchema = TInput, TOutput2 extends ZodSchema = TOutput, TKeys2 extends string = TKeys>(overrides: {
91
+ input?: (input: z.output<TInput2>) => z.output<TInput> | z.input<TInput>;
92
+ output?: (output: z.output<TOutput>) => z.output<TOutput2> | z.input<TOutput2>;
93
+ start?: TKeys;
94
+ next?: FlowStepName<TKeys2>;
95
+ }): WorkflowStepHandler<TInput2, TKeys | TKeys2>;
96
+ protected findStep(current: TKeys): {
97
+ prev: TKeys;
98
+ current: TKeys;
99
+ next: TKeys;
100
+ };
101
+ createSnapshot(): {
102
+ input: Omit<FlowInput<TInput, TOutput>, "schema" | "outputSchema">;
103
+ emitter: Emitter<WorkflowEvents<TInput, TOutput, TKeys>>;
104
+ startStep: TKeys | undefined;
105
+ steps: Map<string, WorkflowStepDef<TInput, TKeys>>;
106
+ };
107
+ loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>): void;
108
+ }
109
+ declare namespace Workflow {
110
+ type pipeable<T extends AnyWorkflowFlow, T2 extends AnyWorkflowFlow> = Workflow.state<T> extends Workflow.input<T2> ? T2 : never;
111
+ type input<T> = T extends Workflow<infer A, any, any> ? z.input<A> : never;
112
+ type state<T> = T extends Workflow<infer A, any, any> ? z.output<A> : never;
113
+ type output<T> = T extends Workflow<any, infer A, any> ? z.output<A> : never;
114
+ type run<T> = T extends Workflow<infer A, infer B, infer C> ? WorkflowRun<A, B, C> : never;
115
+ }
116
+ type AnyWorkflowFlow = Workflow<any, any, any>;
117
+
118
+ export { type AnyWorkflowFlow, type FlowStepName, Workflow, WorkflowError, type WorkflowEvents, type WorkflowRun, type WorkflowRunContext, type WorkflowRunOptions, type WorkflowStepDef, type WorkflowStepHandler, type WorkflowStepRes };