beeai-framework 0.1.20 → 0.1.21

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 (365) hide show
  1. package/dist/adapters/a2a/agents/agent.cjs +4 -4
  2. package/dist/adapters/a2a/agents/agent.cjs.map +1 -1
  3. package/dist/adapters/a2a/agents/agent.d.cts +2 -2
  4. package/dist/adapters/a2a/agents/agent.d.ts +2 -2
  5. package/dist/adapters/a2a/agents/agent.js +4 -4
  6. package/dist/adapters/a2a/agents/agent.js.map +1 -1
  7. package/dist/adapters/a2a/agents/events.d.cts +1 -1
  8. package/dist/adapters/a2a/agents/events.d.ts +1 -1
  9. package/dist/adapters/a2a/agents/types.d.cts +2 -2
  10. package/dist/adapters/a2a/agents/types.d.ts +2 -2
  11. package/dist/adapters/a2a/agents/utils.cjs +2 -2
  12. package/dist/adapters/a2a/agents/utils.cjs.map +1 -1
  13. package/dist/adapters/a2a/agents/utils.js +2 -2
  14. package/dist/adapters/a2a/agents/utils.js.map +1 -1
  15. package/dist/adapters/a2a/serve/agent_executor.cjs +1 -3
  16. package/dist/adapters/a2a/serve/agent_executor.cjs.map +1 -1
  17. package/dist/adapters/a2a/serve/agent_executor.d.cts +4 -3
  18. package/dist/adapters/a2a/serve/agent_executor.d.ts +4 -3
  19. package/dist/adapters/a2a/serve/agent_executor.js +1 -3
  20. package/dist/adapters/a2a/serve/agent_executor.js.map +1 -1
  21. package/dist/adapters/a2a/serve/server.cjs +15 -0
  22. package/dist/adapters/a2a/serve/server.cjs.map +1 -1
  23. package/dist/adapters/a2a/serve/server.d.cts +4 -2
  24. package/dist/adapters/a2a/serve/server.d.ts +4 -2
  25. package/dist/adapters/a2a/serve/server.js +15 -0
  26. package/dist/adapters/a2a/serve/server.js.map +1 -1
  27. package/dist/adapters/acp/agents/agent.d.cts +2 -2
  28. package/dist/adapters/acp/agents/agent.d.ts +2 -2
  29. package/dist/adapters/acp/agents/events.d.cts +1 -1
  30. package/dist/adapters/acp/agents/events.d.ts +1 -1
  31. package/dist/adapters/{beeai_platform → agentstack}/agents/agent.cjs +4 -4
  32. package/dist/adapters/agentstack/agents/agent.cjs.map +1 -0
  33. package/dist/adapters/{beeai_platform → agentstack}/agents/agent.d.cts +12 -12
  34. package/dist/adapters/{beeai_platform → agentstack}/agents/agent.d.ts +12 -12
  35. package/dist/adapters/{beeai_platform → agentstack}/agents/agent.js +4 -4
  36. package/dist/adapters/agentstack/agents/agent.js.map +1 -0
  37. package/dist/adapters/agentstack/agents/events.d.cts +23 -0
  38. package/dist/adapters/agentstack/agents/events.d.ts +23 -0
  39. package/dist/adapters/{beeai_platform → agentstack}/agents/types.d.cts +4 -4
  40. package/dist/adapters/{beeai_platform → agentstack}/agents/types.d.ts +4 -4
  41. package/dist/adapters/amazon-bedrock/backend/chat.cjs +3 -2
  42. package/dist/adapters/amazon-bedrock/backend/chat.cjs.map +1 -1
  43. package/dist/adapters/amazon-bedrock/backend/chat.d.cts +5 -6
  44. package/dist/adapters/amazon-bedrock/backend/chat.d.ts +5 -6
  45. package/dist/adapters/amazon-bedrock/backend/chat.js +3 -2
  46. package/dist/adapters/amazon-bedrock/backend/chat.js.map +1 -1
  47. package/dist/adapters/amazon-bedrock/backend/embedding.cjs +2 -2
  48. package/dist/adapters/amazon-bedrock/backend/embedding.cjs.map +1 -1
  49. package/dist/adapters/amazon-bedrock/backend/embedding.d.cts +4 -4
  50. package/dist/adapters/amazon-bedrock/backend/embedding.d.ts +4 -4
  51. package/dist/adapters/amazon-bedrock/backend/embedding.js +2 -2
  52. package/dist/adapters/amazon-bedrock/backend/embedding.js.map +1 -1
  53. package/dist/adapters/anthropic/backend/chat.cjs +3 -2
  54. package/dist/adapters/anthropic/backend/chat.cjs.map +1 -1
  55. package/dist/adapters/anthropic/backend/chat.d.cts +5 -6
  56. package/dist/adapters/anthropic/backend/chat.d.ts +5 -6
  57. package/dist/adapters/anthropic/backend/chat.js +3 -2
  58. package/dist/adapters/anthropic/backend/chat.js.map +1 -1
  59. package/dist/adapters/anthropic/backend/embedding.d.cts +2 -2
  60. package/dist/adapters/anthropic/backend/embedding.d.ts +2 -2
  61. package/dist/adapters/azure-openai/backend/chat.cjs +3 -2
  62. package/dist/adapters/azure-openai/backend/chat.cjs.map +1 -1
  63. package/dist/adapters/azure-openai/backend/chat.d.cts +5 -6
  64. package/dist/adapters/azure-openai/backend/chat.d.ts +5 -6
  65. package/dist/adapters/azure-openai/backend/chat.js +3 -2
  66. package/dist/adapters/azure-openai/backend/chat.js.map +1 -1
  67. package/dist/adapters/azure-openai/backend/embedding.cjs +2 -2
  68. package/dist/adapters/azure-openai/backend/embedding.cjs.map +1 -1
  69. package/dist/adapters/azure-openai/backend/embedding.d.cts +3 -3
  70. package/dist/adapters/azure-openai/backend/embedding.d.ts +3 -3
  71. package/dist/adapters/azure-openai/backend/embedding.js +2 -2
  72. package/dist/adapters/azure-openai/backend/embedding.js.map +1 -1
  73. package/dist/adapters/dummy/backend/chat.d.cts +2 -2
  74. package/dist/adapters/dummy/backend/chat.d.ts +2 -2
  75. package/dist/adapters/dummy/backend/embedding.d.cts +2 -2
  76. package/dist/adapters/dummy/backend/embedding.d.ts +2 -2
  77. package/dist/adapters/google-vertex/backend/chat.cjs +3 -2
  78. package/dist/adapters/google-vertex/backend/chat.cjs.map +1 -1
  79. package/dist/adapters/google-vertex/backend/chat.d.cts +5 -6
  80. package/dist/adapters/google-vertex/backend/chat.d.ts +5 -6
  81. package/dist/adapters/google-vertex/backend/chat.js +3 -2
  82. package/dist/adapters/google-vertex/backend/chat.js.map +1 -1
  83. package/dist/adapters/google-vertex/backend/embedding.d.cts +2 -2
  84. package/dist/adapters/google-vertex/backend/embedding.d.ts +2 -2
  85. package/dist/adapters/groq/backend/chat.cjs +3 -2
  86. package/dist/adapters/groq/backend/chat.cjs.map +1 -1
  87. package/dist/adapters/groq/backend/chat.d.cts +5 -6
  88. package/dist/adapters/groq/backend/chat.d.ts +5 -6
  89. package/dist/adapters/groq/backend/chat.js +3 -2
  90. package/dist/adapters/groq/backend/chat.js.map +1 -1
  91. package/dist/adapters/groq/backend/embedding.d.cts +2 -2
  92. package/dist/adapters/groq/backend/embedding.d.ts +2 -2
  93. package/dist/adapters/langchain/backend/chat.cjs +6 -5
  94. package/dist/adapters/langchain/backend/chat.cjs.map +1 -1
  95. package/dist/adapters/langchain/backend/chat.d.cts +2 -2
  96. package/dist/adapters/langchain/backend/chat.d.ts +2 -2
  97. package/dist/adapters/langchain/backend/chat.js +6 -5
  98. package/dist/adapters/langchain/backend/chat.js.map +1 -1
  99. package/dist/adapters/langchain/backend/embedding.d.cts +3 -3
  100. package/dist/adapters/langchain/backend/embedding.d.ts +3 -3
  101. package/dist/adapters/langchain/tools.d.cts +1 -1
  102. package/dist/adapters/langchain/tools.d.ts +1 -1
  103. package/dist/adapters/ollama/backend/chat.cjs +1 -4
  104. package/dist/adapters/ollama/backend/chat.cjs.map +1 -1
  105. package/dist/adapters/ollama/backend/chat.d.cts +4 -4
  106. package/dist/adapters/ollama/backend/chat.d.ts +4 -4
  107. package/dist/adapters/ollama/backend/chat.js +1 -4
  108. package/dist/adapters/ollama/backend/chat.js.map +1 -1
  109. package/dist/adapters/ollama/backend/client.cjs +2 -2
  110. package/dist/adapters/ollama/backend/client.cjs.map +1 -1
  111. package/dist/adapters/ollama/backend/client.d.cts +1 -1
  112. package/dist/adapters/ollama/backend/client.d.ts +1 -1
  113. package/dist/adapters/ollama/backend/client.js +1 -1
  114. package/dist/adapters/ollama/backend/client.js.map +1 -1
  115. package/dist/adapters/ollama/backend/embedding.cjs.map +1 -1
  116. package/dist/adapters/ollama/backend/embedding.d.cts +3 -3
  117. package/dist/adapters/ollama/backend/embedding.d.ts +3 -3
  118. package/dist/adapters/ollama/backend/embedding.js.map +1 -1
  119. package/dist/adapters/openai/backend/chat.cjs +3 -2
  120. package/dist/adapters/openai/backend/chat.cjs.map +1 -1
  121. package/dist/adapters/openai/backend/chat.d.cts +5 -6
  122. package/dist/adapters/openai/backend/chat.d.ts +5 -6
  123. package/dist/adapters/openai/backend/chat.js +3 -2
  124. package/dist/adapters/openai/backend/chat.js.map +1 -1
  125. package/dist/adapters/openai/backend/client.cjs +2 -11
  126. package/dist/adapters/openai/backend/client.cjs.map +1 -1
  127. package/dist/adapters/openai/backend/client.js +3 -12
  128. package/dist/adapters/openai/backend/client.js.map +1 -1
  129. package/dist/adapters/openai/backend/embedding.cjs +2 -2
  130. package/dist/adapters/openai/backend/embedding.cjs.map +1 -1
  131. package/dist/adapters/openai/backend/embedding.d.cts +4 -4
  132. package/dist/adapters/openai/backend/embedding.d.ts +4 -4
  133. package/dist/adapters/openai/backend/embedding.js +2 -2
  134. package/dist/adapters/openai/backend/embedding.js.map +1 -1
  135. package/dist/adapters/vercel/backend/chat.cjs +26 -21
  136. package/dist/adapters/vercel/backend/chat.cjs.map +1 -1
  137. package/dist/adapters/vercel/backend/chat.d.cts +6 -4
  138. package/dist/adapters/vercel/backend/chat.d.ts +6 -4
  139. package/dist/adapters/vercel/backend/chat.js +27 -22
  140. package/dist/adapters/vercel/backend/chat.js.map +1 -1
  141. package/dist/adapters/vercel/backend/embedding.cjs.map +1 -1
  142. package/dist/adapters/vercel/backend/embedding.d.cts +3 -3
  143. package/dist/adapters/vercel/backend/embedding.d.ts +3 -3
  144. package/dist/adapters/vercel/backend/embedding.js.map +1 -1
  145. package/dist/adapters/vercel/backend/utils.cjs +11 -0
  146. package/dist/adapters/vercel/backend/utils.cjs.map +1 -1
  147. package/dist/adapters/vercel/backend/utils.d.cts +19 -2
  148. package/dist/adapters/vercel/backend/utils.d.ts +19 -2
  149. package/dist/adapters/vercel/backend/utils.js +11 -1
  150. package/dist/adapters/vercel/backend/utils.js.map +1 -1
  151. package/dist/adapters/watsonx/backend/chat.cjs +10 -4
  152. package/dist/adapters/watsonx/backend/chat.cjs.map +1 -1
  153. package/dist/adapters/watsonx/backend/chat.d.cts +2 -2
  154. package/dist/adapters/watsonx/backend/chat.d.ts +2 -2
  155. package/dist/adapters/watsonx/backend/chat.js +10 -4
  156. package/dist/adapters/watsonx/backend/chat.js.map +1 -1
  157. package/dist/adapters/watsonx/backend/embedding.d.cts +2 -2
  158. package/dist/adapters/watsonx/backend/embedding.d.ts +2 -2
  159. package/dist/adapters/xai/backend/chat.cjs +3 -2
  160. package/dist/adapters/xai/backend/chat.cjs.map +1 -1
  161. package/dist/adapters/xai/backend/chat.d.cts +5 -6
  162. package/dist/adapters/xai/backend/chat.d.ts +5 -6
  163. package/dist/adapters/xai/backend/chat.js +3 -2
  164. package/dist/adapters/xai/backend/chat.js.map +1 -1
  165. package/dist/{agent-CtrCeN7o.d.ts → agent-CHebzsQB.d.ts} +3 -3
  166. package/dist/{agent-I0Saf4A1.d.cts → agent-DvvVGvLr.d.cts} +3 -3
  167. package/dist/agents/base.d.cts +2 -2
  168. package/dist/agents/base.d.ts +2 -2
  169. package/dist/agents/experimental/replan/agent.d.cts +3 -3
  170. package/dist/agents/experimental/replan/agent.d.ts +3 -3
  171. package/dist/agents/experimental/replan/prompts.d.cts +1 -1
  172. package/dist/agents/experimental/replan/prompts.d.ts +1 -1
  173. package/dist/agents/experimental/streamlit/agent.d.cts +3 -3
  174. package/dist/agents/experimental/streamlit/agent.d.ts +3 -3
  175. package/dist/agents/react/agent.d.cts +5 -4
  176. package/dist/agents/react/agent.d.ts +5 -4
  177. package/dist/agents/react/runners/base.cjs.map +1 -1
  178. package/dist/agents/react/runners/base.d.cts +5 -4
  179. package/dist/agents/react/runners/base.d.ts +5 -4
  180. package/dist/agents/react/runners/base.js.map +1 -1
  181. package/dist/agents/react/runners/deep-think/runner.d.cts +5 -4
  182. package/dist/agents/react/runners/deep-think/runner.d.ts +5 -4
  183. package/dist/agents/react/runners/default/runner.cjs.map +1 -1
  184. package/dist/agents/react/runners/default/runner.d.cts +5 -4
  185. package/dist/agents/react/runners/default/runner.d.ts +5 -4
  186. package/dist/agents/react/runners/default/runner.js.map +1 -1
  187. package/dist/agents/react/runners/granite/runner.cjs +4 -2
  188. package/dist/agents/react/runners/granite/runner.cjs.map +1 -1
  189. package/dist/agents/react/runners/granite/runner.d.cts +5 -4
  190. package/dist/agents/react/runners/granite/runner.d.ts +5 -4
  191. package/dist/agents/react/runners/granite/runner.js +4 -2
  192. package/dist/agents/react/runners/granite/runner.js.map +1 -1
  193. package/dist/agents/react/types.d.cts +3 -2
  194. package/dist/agents/react/types.d.ts +3 -2
  195. package/dist/agents/toolCalling/agent.cjs +9 -5
  196. package/dist/agents/toolCalling/agent.cjs.map +1 -1
  197. package/dist/agents/toolCalling/agent.d.cts +3 -3
  198. package/dist/agents/toolCalling/agent.d.ts +3 -3
  199. package/dist/agents/toolCalling/agent.js +9 -5
  200. package/dist/agents/toolCalling/agent.js.map +1 -1
  201. package/dist/agents/toolCalling/types.d.cts +1 -1
  202. package/dist/agents/toolCalling/types.d.ts +1 -1
  203. package/dist/agents/types.d.cts +2 -2
  204. package/dist/agents/types.d.ts +2 -2
  205. package/dist/backend/backend.d.cts +2 -2
  206. package/dist/backend/backend.d.ts +2 -2
  207. package/dist/backend/chat.cjs +1 -1
  208. package/dist/backend/chat.cjs.map +1 -1
  209. package/dist/backend/chat.d.cts +2 -2
  210. package/dist/backend/chat.d.ts +2 -2
  211. package/dist/backend/chat.js +1 -1
  212. package/dist/backend/chat.js.map +1 -1
  213. package/dist/backend/core.d.cts +2 -2
  214. package/dist/backend/core.d.ts +2 -2
  215. package/dist/backend/embedding.d.cts +2 -2
  216. package/dist/backend/embedding.d.ts +2 -2
  217. package/dist/backend/message.cjs +59 -3
  218. package/dist/backend/message.cjs.map +1 -1
  219. package/dist/backend/message.d.cts +3 -0
  220. package/dist/backend/message.d.ts +3 -0
  221. package/dist/backend/message.js +59 -3
  222. package/dist/backend/message.js.map +1 -1
  223. package/dist/backend/utils.d.cts +2 -2
  224. package/dist/backend/utils.d.ts +2 -2
  225. package/dist/{base-BsY2baWy.d.ts → base-BQgDlcGa.d.ts} +1 -1
  226. package/dist/{base-BP7v-NSL.d.cts → base-CwcxwybB.d.cts} +1 -1
  227. package/dist/cache/fileCache.cjs.map +1 -1
  228. package/dist/cache/fileCache.js.map +1 -1
  229. package/dist/{chat-W9j8T6UU.d.ts → chat-C0s-o6ll.d.ts} +4 -2
  230. package/dist/{chat-CR4yfOR9.d.cts → chat-CRb3vUVg.d.cts} +4 -2
  231. package/dist/context.d.cts +1 -1
  232. package/dist/context.d.ts +1 -1
  233. package/dist/emitter/emitter.d.cts +1 -1
  234. package/dist/emitter/emitter.d.ts +1 -1
  235. package/dist/emitter/types.d.cts +1 -1
  236. package/dist/emitter/types.d.ts +1 -1
  237. package/dist/{emitter-C9nwGLt6.d.ts → emitter-CZFbzlUi.d.ts} +3 -3
  238. package/dist/{emitter-DWEsd-ud.d.cts → emitter-DpqUYjXH.d.cts} +3 -3
  239. package/dist/index.d.cts +3 -3
  240. package/dist/index.d.ts +3 -3
  241. package/dist/internals/fetcher.d.cts +1 -1
  242. package/dist/internals/fetcher.d.ts +1 -1
  243. package/dist/internals/helpers/array.cjs +35 -0
  244. package/dist/internals/helpers/array.cjs.map +1 -1
  245. package/dist/internals/helpers/array.d.cts +6 -1
  246. package/dist/internals/helpers/array.d.ts +6 -1
  247. package/dist/internals/helpers/array.js +35 -1
  248. package/dist/internals/helpers/array.js.map +1 -1
  249. package/dist/internals/helpers/object.cjs +30 -5
  250. package/dist/internals/helpers/object.cjs.map +1 -1
  251. package/dist/internals/helpers/object.d.cts +3 -2
  252. package/dist/internals/helpers/object.d.ts +3 -2
  253. package/dist/internals/helpers/object.js +29 -5
  254. package/dist/internals/helpers/object.js.map +1 -1
  255. package/dist/logger/logger.cjs +8 -4
  256. package/dist/logger/logger.cjs.map +1 -1
  257. package/dist/logger/logger.d.cts +21 -15
  258. package/dist/logger/logger.d.ts +21 -15
  259. package/dist/logger/logger.js +6 -3
  260. package/dist/logger/logger.js.map +1 -1
  261. package/dist/logger/pretty.cjs +2 -2
  262. package/dist/logger/pretty.cjs.map +1 -1
  263. package/dist/logger/pretty.js +2 -2
  264. package/dist/logger/pretty.js.map +1 -1
  265. package/dist/memory/slidingMemory.d.cts +1 -1
  266. package/dist/memory/slidingMemory.d.ts +1 -1
  267. package/dist/memory/summarizeMemory.d.cts +2 -2
  268. package/dist/memory/summarizeMemory.d.ts +2 -2
  269. package/dist/parsers/linePrefix.cjs.map +1 -1
  270. package/dist/parsers/linePrefix.d.cts +4 -8
  271. package/dist/parsers/linePrefix.d.ts +4 -8
  272. package/dist/parsers/linePrefix.js.map +1 -1
  273. package/dist/serializer/utils.cjs.map +1 -1
  274. package/dist/serializer/utils.js.map +1 -1
  275. package/dist/tools/arxiv.cjs.map +1 -1
  276. package/dist/tools/arxiv.d.cts +1 -1
  277. package/dist/tools/arxiv.d.ts +1 -1
  278. package/dist/tools/arxiv.js.map +1 -1
  279. package/dist/tools/base.cjs.map +1 -1
  280. package/dist/tools/base.d.cts +1 -1
  281. package/dist/tools/base.d.ts +1 -1
  282. package/dist/tools/base.js.map +1 -1
  283. package/dist/tools/calculator.d.cts +1 -1
  284. package/dist/tools/calculator.d.ts +1 -1
  285. package/dist/tools/custom.d.cts +2 -2
  286. package/dist/tools/custom.d.ts +2 -2
  287. package/dist/tools/database/elasticsearch.cjs.map +1 -1
  288. package/dist/tools/database/elasticsearch.d.cts +1 -1
  289. package/dist/tools/database/elasticsearch.d.ts +1 -1
  290. package/dist/tools/database/elasticsearch.js.map +1 -1
  291. package/dist/tools/database/milvus.cjs +3 -3
  292. package/dist/tools/database/milvus.cjs.map +1 -1
  293. package/dist/tools/database/milvus.d.cts +3 -3
  294. package/dist/tools/database/milvus.d.ts +3 -3
  295. package/dist/tools/database/milvus.js +3 -3
  296. package/dist/tools/database/milvus.js.map +1 -1
  297. package/dist/tools/database/qdrant.cjs +2 -2
  298. package/dist/tools/database/qdrant.cjs.map +1 -1
  299. package/dist/tools/database/qdrant.d.cts +1 -1
  300. package/dist/tools/database/qdrant.d.ts +1 -1
  301. package/dist/tools/database/qdrant.js +2 -2
  302. package/dist/tools/database/qdrant.js.map +1 -1
  303. package/dist/tools/database/sql.cjs.map +1 -1
  304. package/dist/tools/database/sql.d.cts +1 -1
  305. package/dist/tools/database/sql.d.ts +1 -1
  306. package/dist/tools/database/sql.js.map +1 -1
  307. package/dist/tools/llm.d.cts +2 -2
  308. package/dist/tools/llm.d.ts +2 -2
  309. package/dist/tools/mcp.d.cts +1 -1
  310. package/dist/tools/mcp.d.ts +1 -1
  311. package/dist/tools/openapi.d.cts +1 -1
  312. package/dist/tools/openapi.d.ts +1 -1
  313. package/dist/tools/python/output.d.cts +1 -1
  314. package/dist/tools/python/output.d.ts +1 -1
  315. package/dist/tools/python/python.d.cts +2 -2
  316. package/dist/tools/python/python.d.ts +2 -2
  317. package/dist/tools/search/base.cjs.map +1 -1
  318. package/dist/tools/search/base.d.cts +1 -1
  319. package/dist/tools/search/base.d.ts +1 -1
  320. package/dist/tools/search/base.js.map +1 -1
  321. package/dist/tools/search/duckDuckGoSearch.cjs.map +1 -1
  322. package/dist/tools/search/duckDuckGoSearch.d.cts +1 -1
  323. package/dist/tools/search/duckDuckGoSearch.d.ts +1 -1
  324. package/dist/tools/search/duckDuckGoSearch.js.map +1 -1
  325. package/dist/tools/search/googleSearch.cjs.map +1 -1
  326. package/dist/tools/search/googleSearch.d.cts +1 -1
  327. package/dist/tools/search/googleSearch.d.ts +1 -1
  328. package/dist/tools/search/googleSearch.js.map +1 -1
  329. package/dist/tools/search/searXNGSearch.d.cts +1 -1
  330. package/dist/tools/search/searXNGSearch.d.ts +1 -1
  331. package/dist/tools/search/wikipedia.cjs +25 -0
  332. package/dist/tools/search/wikipedia.cjs.map +1 -1
  333. package/dist/tools/search/wikipedia.d.cts +2 -3
  334. package/dist/tools/search/wikipedia.d.ts +2 -3
  335. package/dist/tools/search/wikipedia.js +23 -0
  336. package/dist/tools/search/wikipedia.js.map +1 -1
  337. package/dist/tools/similarity.d.cts +1 -1
  338. package/dist/tools/similarity.d.ts +1 -1
  339. package/dist/tools/weather/openMeteo.cjs.map +1 -1
  340. package/dist/tools/weather/openMeteo.d.cts +1 -1
  341. package/dist/tools/weather/openMeteo.d.ts +1 -1
  342. package/dist/tools/weather/openMeteo.js.map +1 -1
  343. package/dist/tools/web/webCrawler.cjs.map +1 -1
  344. package/dist/tools/web/webCrawler.d.cts +1 -1
  345. package/dist/tools/web/webCrawler.d.ts +1 -1
  346. package/dist/tools/web/webCrawler.js.map +1 -1
  347. package/dist/version.cjs +1 -1
  348. package/dist/version.js +1 -1
  349. package/dist/workflows/agent.d.cts +3 -3
  350. package/dist/workflows/agent.d.ts +3 -3
  351. package/dist/workflows/workflow.d.cts +1 -1
  352. package/dist/workflows/workflow.d.ts +1 -1
  353. package/package.json +68 -67
  354. package/dist/adapters/beeai_platform/agents/agent.cjs.map +0 -1
  355. package/dist/adapters/beeai_platform/agents/agent.js.map +0 -1
  356. package/dist/adapters/beeai_platform/agents/events.d.cts +0 -23
  357. package/dist/adapters/beeai_platform/agents/events.d.ts +0 -23
  358. /package/dist/adapters/{beeai_platform → agentstack}/agents/events.cjs +0 -0
  359. /package/dist/adapters/{beeai_platform → agentstack}/agents/events.cjs.map +0 -0
  360. /package/dist/adapters/{beeai_platform → agentstack}/agents/events.js +0 -0
  361. /package/dist/adapters/{beeai_platform → agentstack}/agents/events.js.map +0 -0
  362. /package/dist/adapters/{beeai_platform → agentstack}/agents/types.cjs +0 -0
  363. /package/dist/adapters/{beeai_platform → agentstack}/agents/types.cjs.map +0 -0
  364. /package/dist/adapters/{beeai_platform → agentstack}/agents/types.js +0 -0
  365. /package/dist/adapters/{beeai_platform → agentstack}/agents/types.js.map +0 -0
@@ -87,9 +87,9 @@ declare class Emitter<T = Record<keyof any, Callback<unknown>>> extends Serializ
87
87
  context: object;
88
88
  trace: EventTrace | undefined;
89
89
  listeners: {
90
- readonly options?: EmitterOptions | undefined;
91
- readonly raw: Matcher;
92
- readonly callback: Callback<any>;
90
+ options?: EmitterOptions | undefined;
91
+ raw: Matcher;
92
+ callback: Callback<any>;
93
93
  }[];
94
94
  cleanups: CleanupFn[];
95
95
  };
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-BP7v-NSL.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-CwcxwybB.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-CRb3vUVg.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-DpqUYjXH.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-BsY2baWy.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-BQgDlcGa.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-C0s-o6ll.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-CZFbzlUi.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-DpqUYjXH.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-CZFbzlUi.js';
6
6
  import './types.js';
7
7
  import './helpers/guards.js';
8
8
 
@@ -22,9 +22,44 @@ function hasMinLength(arr, n) {
22
22
  return arr.length >= n;
23
23
  }
24
24
  __name(hasMinLength, "hasMinLength");
25
+ function watchArray(array, handlers) {
26
+ return new Proxy(array, {
27
+ set(target, property, value, receiver) {
28
+ const apply = /* @__PURE__ */ __name(() => Reflect.set(target, property, value, receiver), "apply");
29
+ const index = Number(property);
30
+ if (!Number.isInteger(index) || index < 0) {
31
+ return apply();
32
+ }
33
+ const isAdd = !(property in target);
34
+ const oldValue = target[index];
35
+ const result = apply();
36
+ if (isAdd) {
37
+ handlers.onAdd?.(value);
38
+ } else if (oldValue !== value) {
39
+ handlers.onRemove?.(oldValue);
40
+ handlers.onAdd?.(value);
41
+ }
42
+ return result;
43
+ },
44
+ deleteProperty(target, property) {
45
+ const index = Number(property);
46
+ if (!Number.isInteger(index) || index < 0) {
47
+ return Reflect.deleteProperty(target, property);
48
+ }
49
+ const oldValue = target[index];
50
+ const result = Reflect.deleteProperty(target, property);
51
+ if (result && oldValue !== void 0) {
52
+ handlers.onRemove?.(oldValue);
53
+ }
54
+ return result;
55
+ }
56
+ });
57
+ }
58
+ __name(watchArray, "watchArray");
25
59
 
26
60
  exports.castArray = castArray;
27
61
  exports.hasMinLength = hasMinLength;
28
62
  exports.removeFromArray = removeFromArray;
63
+ exports.watchArray = watchArray;
29
64
  //# sourceMappingURL=array.cjs.map
30
65
  //# sourceMappingURL=array.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/internals/helpers/array.ts"],"names":["removeFromArray","arr","target","index","findIndex","value","splice","castArray","result","Array","isArray","hasMinLength","n","length"],"mappings":";;;;AAKO,SAASA,eAAAA,CAAmBC,KAAUC,MAAAA,EAAS;AACpD,EAAA,MAAMC,QAAQF,GAAAA,CAAIG,SAAAA,CAAU,CAACC,KAAAA,KAAUA,UAAUH,MAAAA,CAAAA;AACjD,EAAA,IAAIC,UAAU,EAAA,EAAI;AAChB,IAAA,OAAO,KAAA;AACT;AAEAF,EAAAA,GAAAA,CAAIK,MAAAA,CAAOH,OAAO,CAAA,CAAA;AAClB,EAAA,OAAO,IAAA;AACT;AARgBH,MAAAA,CAAAA,eAAAA,EAAAA,iBAAAA,CAAAA;AAUT,SAASO,UAAaN,GAAAA,EAAM;AACjC,EAAA,MAAMO,MAAAA,GAASC,KAAAA,CAAMC,OAAAA,CAAQT,GAAAA,IAAOA,GAAAA,GAAM;AAACA,IAAAA;;AAC3C,EAAA,OAAOO,MAAAA;AACT;AAHgBD,MAAAA,CAAAA,SAAAA,EAAAA,WAAAA,CAAAA;AAST,SAASI,YAAAA,CAAkCV,KAAUW,CAAAA,EAAI;AAC9D,EAAA,OAAOX,IAAIY,MAAAA,IAAUD,CAAAA;AACvB;AAFgBD,MAAAA,CAAAA,YAAAA,EAAAA,cAAAA,CAAAA","file":"array.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport function removeFromArray<T>(arr: T[], target: T): boolean {\n const index = arr.findIndex((value) => value === target);\n if (index === -1) {\n return false;\n }\n\n arr.splice(index, 1);\n return true;\n}\n\nexport function castArray<T>(arr: T) {\n const result = Array.isArray(arr) ? arr : [arr];\n return result as T extends unknown[] ? T : [T];\n}\n\ntype HasMinLength<T, N extends number, T2 extends any[] = []> = T2[\"length\"] extends N\n ? [...T2, ...T[]]\n : HasMinLength<T, N, [any, ...T2]>;\n\nexport function hasMinLength<T, N extends number>(arr: T[], n: N): arr is HasMinLength<T, N> {\n return arr.length >= n;\n}\n"]}
1
+ {"version":3,"sources":["../../../src/internals/helpers/array.ts"],"names":["removeFromArray","arr","target","index","findIndex","value","splice","castArray","result","Array","isArray","hasMinLength","n","length","watchArray","array","handlers","Proxy","set","property","receiver","apply","Reflect","Number","isInteger","isAdd","oldValue","onAdd","onRemove","deleteProperty","undefined"],"mappings":";;;;AAKO,SAASA,eAAAA,CAAmBC,KAAUC,MAAAA,EAAS;AACpD,EAAA,MAAMC,QAAQF,GAAAA,CAAIG,SAAAA,CAAU,CAACC,KAAAA,KAAUA,UAAUH,MAAAA,CAAAA;AACjD,EAAA,IAAIC,UAAU,EAAA,EAAI;AAChB,IAAA,OAAO,KAAA;AACT;AAEAF,EAAAA,GAAAA,CAAIK,MAAAA,CAAOH,OAAO,CAAA,CAAA;AAClB,EAAA,OAAO,IAAA;AACT;AARgBH,MAAAA,CAAAA,eAAAA,EAAAA,iBAAAA,CAAAA;AAUT,SAASO,UAAaN,GAAAA,EAAM;AACjC,EAAA,MAAMO,MAAAA,GAASC,KAAAA,CAAMC,OAAAA,CAAQT,GAAAA,IAAOA,GAAAA,GAAM;AAACA,IAAAA;;AAC3C,EAAA,OAAOO,MAAAA;AACT;AAHgBD,MAAAA,CAAAA,SAAAA,EAAAA,WAAAA,CAAAA;AAST,SAASI,YAAAA,CAAkCV,KAAUW,CAAAA,EAAI;AAC9D,EAAA,OAAOX,IAAIY,MAAAA,IAAUD,CAAAA;AACvB;AAFgBD,MAAAA,CAAAA,YAAAA,EAAAA,cAAAA,CAAAA;AAST,SAASG,UAAAA,CAAcC,OAAYC,QAAAA,EAAgC;AAKxE,EAAA,OAAO,IAAIC,MAAMF,KAAAA,EAAO;IACtBG,GAAAA,CAAIhB,MAAAA,EAAQiB,QAAAA,EAAUd,KAAAA,EAAOe,QAAAA,EAAQ;AACnC,MAAA,MAAMC,KAAAA,gCAAcC,OAAAA,CAAQJ,GAAAA,CAAIhB,QAAQiB,QAAAA,EAAUd,KAAAA,EAAOe,QAAAA,CAAAA,EAA3C,OAAA,CAAA;AAEd,MAAA,MAAMjB,KAAAA,GAAQoB,OAAOJ,QAAAA,CAAAA;AAGrB,MAAA,IAAI,CAACI,MAAAA,CAAOC,SAAAA,CAAUrB,KAAAA,CAAAA,IAAUA,QAAQ,CAAA,EAAG;AACzC,QAAA,OAAOkB,KAAAA,EAAAA;AACT;AAEA,MAAA,MAAMI,KAAAA,GAAQ,EAAEN,QAAAA,IAAYjB,MAAAA,CAAAA;AAC5B,MAAA,MAAMwB,QAAAA,GAAWxB,OAAOC,KAAAA,CAAAA;AACxB,MAAA,MAAMK,SAASa,KAAAA,EAAAA;AAEf,MAAA,IAAII,KAAAA,EAAO;AACTT,QAAAA,QAAAA,CAASW,QAAQtB,KAAAA,CAAAA;AACnB,OAAA,MAAA,IAAWqB,aAAarB,KAAAA,EAAO;AAE7BW,QAAAA,QAAAA,CAASY,WAAWF,QAAAA,CAAAA;AACpBV,QAAAA,QAAAA,CAASW,QAAQtB,KAAAA,CAAAA;AACnB;AAEA,MAAA,OAAOG,MAAAA;AACT,KAAA;AAEAqB,IAAAA,cAAAA,CAAe3B,QAAQiB,QAAAA,EAAQ;AAC7B,MAAA,MAAMhB,KAAAA,GAAQoB,OAAOJ,QAAAA,CAAAA;AAErB,MAAA,IAAI,CAACI,MAAAA,CAAOC,SAAAA,CAAUrB,KAAAA,CAAAA,IAAUA,QAAQ,CAAA,EAAG;AACzC,QAAA,OAAOmB,OAAAA,CAAQO,cAAAA,CAAe3B,MAAAA,EAAQiB,QAAAA,CAAAA;AACxC;AAEA,MAAA,MAAMO,QAAAA,GAAWxB,OAAOC,KAAAA,CAAAA;AACxB,MAAA,MAAMK,MAAAA,GAASc,OAAAA,CAAQO,cAAAA,CAAe3B,MAAAA,EAAQiB,QAAAA,CAAAA;AAE9C,MAAA,IAAIX,MAAAA,IAAUkB,aAAaI,MAAAA,EAAW;AACpCd,QAAAA,QAAAA,CAASY,WAAWF,QAAAA,CAAAA;AACtB;AAEA,MAAA,OAAOlB,MAAAA;AACT;GACF,CAAA;AACF;AAhDgBM,MAAAA,CAAAA,UAAAA,EAAAA,YAAAA,CAAAA","file":"array.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport function removeFromArray<T>(arr: T[], target: T): boolean {\n const index = arr.findIndex((value) => value === target);\n if (index === -1) {\n return false;\n }\n\n arr.splice(index, 1);\n return true;\n}\n\nexport function castArray<T>(arr: T) {\n const result = Array.isArray(arr) ? arr : [arr];\n return result as T extends unknown[] ? T : [T];\n}\n\ntype HasMinLength<T, N extends number, T2 extends any[] = []> = T2[\"length\"] extends N\n ? [...T2, ...T[]]\n : HasMinLength<T, N, [any, ...T2]>;\n\nexport function hasMinLength<T, N extends number>(arr: T[], n: N): arr is HasMinLength<T, N> {\n return arr.length >= n;\n}\n\ninterface ArrayChangeHandlers<T> {\n onAdd?: (value: T) => void;\n onRemove?: (value: T) => void;\n}\n\nexport function watchArray<T>(array: T[], handlers: ArrayChangeHandlers<T>): T[] {\n /**\n * Does not handle 'length' modification\n */\n\n return new Proxy(array, {\n set(target, property, value, receiver) {\n const apply = () => Reflect.set(target, property, value, receiver);\n\n const index = Number(property);\n\n // Ignore non-index and length changes\n if (!Number.isInteger(index) || index < 0) {\n return apply();\n }\n\n const isAdd = !(property in target);\n const oldValue = target[index];\n const result = apply();\n\n if (isAdd) {\n handlers.onAdd?.(value);\n } else if (oldValue !== value) {\n // Treat replacement as removal + add\n handlers.onRemove?.(oldValue);\n handlers.onAdd?.(value);\n }\n\n return result;\n },\n\n deleteProperty(target, property) {\n const index = Number(property);\n\n if (!Number.isInteger(index) || index < 0) {\n return Reflect.deleteProperty(target, property);\n }\n\n const oldValue = target[index];\n const result = Reflect.deleteProperty(target, property);\n\n if (result && oldValue !== undefined) {\n handlers.onRemove?.(oldValue);\n }\n\n return result;\n },\n });\n}\n"]}
@@ -6,5 +6,10 @@ declare function removeFromArray<T>(arr: T[], target: T): boolean;
6
6
  declare function castArray<T>(arr: T): T extends unknown[] ? T : [T];
7
7
  type HasMinLength<T, N extends number, T2 extends any[] = []> = T2["length"] extends N ? [...T2, ...T[]] : HasMinLength<T, N, [any, ...T2]>;
8
8
  declare function hasMinLength<T, N extends number>(arr: T[], n: N): arr is HasMinLength<T, N>;
9
+ interface ArrayChangeHandlers<T> {
10
+ onAdd?: (value: T) => void;
11
+ onRemove?: (value: T) => void;
12
+ }
13
+ declare function watchArray<T>(array: T[], handlers: ArrayChangeHandlers<T>): T[];
9
14
 
10
- export { castArray, hasMinLength, removeFromArray };
15
+ export { castArray, hasMinLength, removeFromArray, watchArray };
@@ -6,5 +6,10 @@ declare function removeFromArray<T>(arr: T[], target: T): boolean;
6
6
  declare function castArray<T>(arr: T): T extends unknown[] ? T : [T];
7
7
  type HasMinLength<T, N extends number, T2 extends any[] = []> = T2["length"] extends N ? [...T2, ...T[]] : HasMinLength<T, N, [any, ...T2]>;
8
8
  declare function hasMinLength<T, N extends number>(arr: T[], n: N): arr is HasMinLength<T, N>;
9
+ interface ArrayChangeHandlers<T> {
10
+ onAdd?: (value: T) => void;
11
+ onRemove?: (value: T) => void;
12
+ }
13
+ declare function watchArray<T>(array: T[], handlers: ArrayChangeHandlers<T>): T[];
9
14
 
10
- export { castArray, hasMinLength, removeFromArray };
15
+ export { castArray, hasMinLength, removeFromArray, watchArray };
@@ -20,7 +20,41 @@ function hasMinLength(arr, n) {
20
20
  return arr.length >= n;
21
21
  }
22
22
  __name(hasMinLength, "hasMinLength");
23
+ function watchArray(array, handlers) {
24
+ return new Proxy(array, {
25
+ set(target, property, value, receiver) {
26
+ const apply = /* @__PURE__ */ __name(() => Reflect.set(target, property, value, receiver), "apply");
27
+ const index = Number(property);
28
+ if (!Number.isInteger(index) || index < 0) {
29
+ return apply();
30
+ }
31
+ const isAdd = !(property in target);
32
+ const oldValue = target[index];
33
+ const result = apply();
34
+ if (isAdd) {
35
+ handlers.onAdd?.(value);
36
+ } else if (oldValue !== value) {
37
+ handlers.onRemove?.(oldValue);
38
+ handlers.onAdd?.(value);
39
+ }
40
+ return result;
41
+ },
42
+ deleteProperty(target, property) {
43
+ const index = Number(property);
44
+ if (!Number.isInteger(index) || index < 0) {
45
+ return Reflect.deleteProperty(target, property);
46
+ }
47
+ const oldValue = target[index];
48
+ const result = Reflect.deleteProperty(target, property);
49
+ if (result && oldValue !== void 0) {
50
+ handlers.onRemove?.(oldValue);
51
+ }
52
+ return result;
53
+ }
54
+ });
55
+ }
56
+ __name(watchArray, "watchArray");
23
57
 
24
- export { castArray, hasMinLength, removeFromArray };
58
+ export { castArray, hasMinLength, removeFromArray, watchArray };
25
59
  //# sourceMappingURL=array.js.map
26
60
  //# sourceMappingURL=array.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/internals/helpers/array.ts"],"names":["removeFromArray","arr","target","index","findIndex","value","splice","castArray","result","Array","isArray","hasMinLength","n","length"],"mappings":";;AAKO,SAASA,eAAAA,CAAmBC,KAAUC,MAAAA,EAAS;AACpD,EAAA,MAAMC,QAAQF,GAAAA,CAAIG,SAAAA,CAAU,CAACC,KAAAA,KAAUA,UAAUH,MAAAA,CAAAA;AACjD,EAAA,IAAIC,UAAU,EAAA,EAAI;AAChB,IAAA,OAAO,KAAA;AACT;AAEAF,EAAAA,GAAAA,CAAIK,MAAAA,CAAOH,OAAO,CAAA,CAAA;AAClB,EAAA,OAAO,IAAA;AACT;AARgBH,MAAAA,CAAAA,eAAAA,EAAAA,iBAAAA,CAAAA;AAUT,SAASO,UAAaN,GAAAA,EAAM;AACjC,EAAA,MAAMO,MAAAA,GAASC,KAAAA,CAAMC,OAAAA,CAAQT,GAAAA,IAAOA,GAAAA,GAAM;AAACA,IAAAA;;AAC3C,EAAA,OAAOO,MAAAA;AACT;AAHgBD,MAAAA,CAAAA,SAAAA,EAAAA,WAAAA,CAAAA;AAST,SAASI,YAAAA,CAAkCV,KAAUW,CAAAA,EAAI;AAC9D,EAAA,OAAOX,IAAIY,MAAAA,IAAUD,CAAAA;AACvB;AAFgBD,MAAAA,CAAAA,YAAAA,EAAAA,cAAAA,CAAAA","file":"array.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport function removeFromArray<T>(arr: T[], target: T): boolean {\n const index = arr.findIndex((value) => value === target);\n if (index === -1) {\n return false;\n }\n\n arr.splice(index, 1);\n return true;\n}\n\nexport function castArray<T>(arr: T) {\n const result = Array.isArray(arr) ? arr : [arr];\n return result as T extends unknown[] ? T : [T];\n}\n\ntype HasMinLength<T, N extends number, T2 extends any[] = []> = T2[\"length\"] extends N\n ? [...T2, ...T[]]\n : HasMinLength<T, N, [any, ...T2]>;\n\nexport function hasMinLength<T, N extends number>(arr: T[], n: N): arr is HasMinLength<T, N> {\n return arr.length >= n;\n}\n"]}
1
+ {"version":3,"sources":["../../../src/internals/helpers/array.ts"],"names":["removeFromArray","arr","target","index","findIndex","value","splice","castArray","result","Array","isArray","hasMinLength","n","length","watchArray","array","handlers","Proxy","set","property","receiver","apply","Reflect","Number","isInteger","isAdd","oldValue","onAdd","onRemove","deleteProperty","undefined"],"mappings":";;AAKO,SAASA,eAAAA,CAAmBC,KAAUC,MAAAA,EAAS;AACpD,EAAA,MAAMC,QAAQF,GAAAA,CAAIG,SAAAA,CAAU,CAACC,KAAAA,KAAUA,UAAUH,MAAAA,CAAAA;AACjD,EAAA,IAAIC,UAAU,EAAA,EAAI;AAChB,IAAA,OAAO,KAAA;AACT;AAEAF,EAAAA,GAAAA,CAAIK,MAAAA,CAAOH,OAAO,CAAA,CAAA;AAClB,EAAA,OAAO,IAAA;AACT;AARgBH,MAAAA,CAAAA,eAAAA,EAAAA,iBAAAA,CAAAA;AAUT,SAASO,UAAaN,GAAAA,EAAM;AACjC,EAAA,MAAMO,MAAAA,GAASC,KAAAA,CAAMC,OAAAA,CAAQT,GAAAA,IAAOA,GAAAA,GAAM;AAACA,IAAAA;;AAC3C,EAAA,OAAOO,MAAAA;AACT;AAHgBD,MAAAA,CAAAA,SAAAA,EAAAA,WAAAA,CAAAA;AAST,SAASI,YAAAA,CAAkCV,KAAUW,CAAAA,EAAI;AAC9D,EAAA,OAAOX,IAAIY,MAAAA,IAAUD,CAAAA;AACvB;AAFgBD,MAAAA,CAAAA,YAAAA,EAAAA,cAAAA,CAAAA;AAST,SAASG,UAAAA,CAAcC,OAAYC,QAAAA,EAAgC;AAKxE,EAAA,OAAO,IAAIC,MAAMF,KAAAA,EAAO;IACtBG,GAAAA,CAAIhB,MAAAA,EAAQiB,QAAAA,EAAUd,KAAAA,EAAOe,QAAAA,EAAQ;AACnC,MAAA,MAAMC,KAAAA,gCAAcC,OAAAA,CAAQJ,GAAAA,CAAIhB,QAAQiB,QAAAA,EAAUd,KAAAA,EAAOe,QAAAA,CAAAA,EAA3C,OAAA,CAAA;AAEd,MAAA,MAAMjB,KAAAA,GAAQoB,OAAOJ,QAAAA,CAAAA;AAGrB,MAAA,IAAI,CAACI,MAAAA,CAAOC,SAAAA,CAAUrB,KAAAA,CAAAA,IAAUA,QAAQ,CAAA,EAAG;AACzC,QAAA,OAAOkB,KAAAA,EAAAA;AACT;AAEA,MAAA,MAAMI,KAAAA,GAAQ,EAAEN,QAAAA,IAAYjB,MAAAA,CAAAA;AAC5B,MAAA,MAAMwB,QAAAA,GAAWxB,OAAOC,KAAAA,CAAAA;AACxB,MAAA,MAAMK,SAASa,KAAAA,EAAAA;AAEf,MAAA,IAAII,KAAAA,EAAO;AACTT,QAAAA,QAAAA,CAASW,QAAQtB,KAAAA,CAAAA;AACnB,OAAA,MAAA,IAAWqB,aAAarB,KAAAA,EAAO;AAE7BW,QAAAA,QAAAA,CAASY,WAAWF,QAAAA,CAAAA;AACpBV,QAAAA,QAAAA,CAASW,QAAQtB,KAAAA,CAAAA;AACnB;AAEA,MAAA,OAAOG,MAAAA;AACT,KAAA;AAEAqB,IAAAA,cAAAA,CAAe3B,QAAQiB,QAAAA,EAAQ;AAC7B,MAAA,MAAMhB,KAAAA,GAAQoB,OAAOJ,QAAAA,CAAAA;AAErB,MAAA,IAAI,CAACI,MAAAA,CAAOC,SAAAA,CAAUrB,KAAAA,CAAAA,IAAUA,QAAQ,CAAA,EAAG;AACzC,QAAA,OAAOmB,OAAAA,CAAQO,cAAAA,CAAe3B,MAAAA,EAAQiB,QAAAA,CAAAA;AACxC;AAEA,MAAA,MAAMO,QAAAA,GAAWxB,OAAOC,KAAAA,CAAAA;AACxB,MAAA,MAAMK,MAAAA,GAASc,OAAAA,CAAQO,cAAAA,CAAe3B,MAAAA,EAAQiB,QAAAA,CAAAA;AAE9C,MAAA,IAAIX,MAAAA,IAAUkB,aAAaI,MAAAA,EAAW;AACpCd,QAAAA,QAAAA,CAASY,WAAWF,QAAAA,CAAAA;AACtB;AAEA,MAAA,OAAOlB,MAAAA;AACT;GACF,CAAA;AACF;AAhDgBM,MAAAA,CAAAA,UAAAA,EAAAA,YAAAA,CAAAA","file":"array.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport function removeFromArray<T>(arr: T[], target: T): boolean {\n const index = arr.findIndex((value) => value === target);\n if (index === -1) {\n return false;\n }\n\n arr.splice(index, 1);\n return true;\n}\n\nexport function castArray<T>(arr: T) {\n const result = Array.isArray(arr) ? arr : [arr];\n return result as T extends unknown[] ? T : [T];\n}\n\ntype HasMinLength<T, N extends number, T2 extends any[] = []> = T2[\"length\"] extends N\n ? [...T2, ...T[]]\n : HasMinLength<T, N, [any, ...T2]>;\n\nexport function hasMinLength<T, N extends number>(arr: T[], n: N): arr is HasMinLength<T, N> {\n return arr.length >= n;\n}\n\ninterface ArrayChangeHandlers<T> {\n onAdd?: (value: T) => void;\n onRemove?: (value: T) => void;\n}\n\nexport function watchArray<T>(array: T[], handlers: ArrayChangeHandlers<T>): T[] {\n /**\n * Does not handle 'length' modification\n */\n\n return new Proxy(array, {\n set(target, property, value, receiver) {\n const apply = () => Reflect.set(target, property, value, receiver);\n\n const index = Number(property);\n\n // Ignore non-index and length changes\n if (!Number.isInteger(index) || index < 0) {\n return apply();\n }\n\n const isAdd = !(property in target);\n const oldValue = target[index];\n const result = apply();\n\n if (isAdd) {\n handlers.onAdd?.(value);\n } else if (oldValue !== value) {\n // Treat replacement as removal + add\n handlers.onRemove?.(oldValue);\n handlers.onAdd?.(value);\n }\n\n return result;\n },\n\n deleteProperty(target, property) {\n const index = Number(property);\n\n if (!Number.isInteger(index) || index < 0) {\n return Reflect.deleteProperty(target, property);\n }\n\n const oldValue = target[index];\n const result = Reflect.deleteProperty(target, property);\n\n if (result && oldValue !== undefined) {\n handlers.onRemove?.(oldValue);\n }\n\n return result;\n },\n });\n}\n"]}
@@ -78,12 +78,20 @@ function getProp(target, paths, defaultValue = void 0) {
78
78
  return value;
79
79
  }
80
80
  __name(getProp, "getProp");
81
- function deleteProps(target, keys) {
82
- keys.forEach((key) => {
81
+ function popProp(target, key, fallback = null) {
82
+ if (!hasProp(target, key)) {
83
+ return fallback;
84
+ }
85
+ const value = getProp(target, [
86
+ key
87
+ ]);
88
+ try {
83
89
  delete target[key];
84
- });
90
+ } catch {
91
+ }
92
+ return value;
85
93
  }
86
- __name(deleteProps, "deleteProps");
94
+ __name(popProp, "popProp");
87
95
  function updateObject(old, update) {
88
96
  for (const [key, val] of Object.entries(update)) {
89
97
  const existing = old[key];
@@ -124,11 +132,26 @@ function mapObj(obj) {
124
132
  };
125
133
  }
126
134
  __name(mapObj, "mapObj");
135
+ function safeDefineProperty(target, key, get) {
136
+ try {
137
+ Object.defineProperty(target, key, {
138
+ enumerable: false,
139
+ configurable: false,
140
+ get() {
141
+ return get();
142
+ }
143
+ });
144
+ } catch (e) {
145
+ if (!(e instanceof TypeError)) {
146
+ throw e;
147
+ }
148
+ }
149
+ }
150
+ __name(safeDefineProperty, "safeDefineProperty");
127
151
 
128
152
  exports.assign = assign;
129
153
  exports.assignFactory = assignFactory;
130
154
  exports.customMerge = customMerge;
131
- exports.deleteProps = deleteProps;
132
155
  exports.getProp = getProp;
133
156
  exports.getPropStrict = getPropStrict;
134
157
  exports.hasProp = hasProp;
@@ -136,6 +159,8 @@ exports.hasProps = hasProps;
136
159
  exports.mapObj = mapObj;
137
160
  exports.omitEmptyValues = omitEmptyValues;
138
161
  exports.omitUndefined = omitUndefined;
162
+ exports.popProp = popProp;
163
+ exports.safeDefineProperty = safeDefineProperty;
139
164
  exports.setProp = setProp;
140
165
  exports.updateObject = updateObject;
141
166
  //# sourceMappingURL=object.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/internals/helpers/object.ts"],"names":["assignFactory","target","source","Object","assign","a","b","omitEmptyValues","R","pickBy","isTruthy","omitUndefined","isDefined","hasProp","key","Boolean","prototype","hasOwnProperty","call","hasProps","keys","every","setProp","paths","value","entry","entries","idx","isPlainObject","isArray","TypeError","isLast","length","newValue","getPropStrict","path","getProp","defaultValue","undefined","deleteProps","forEach","updateObject","old","update","val","existing","FrameworkError","context","customMerge","results","processors","finalResult","next","oldValue","takeFirstBy","mapObj","obj","fn","updated","pair"],"mappings":"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","file":"object.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport * as R from \"remeda\";\nimport { FrameworkError } from \"@/errors.js\";\n\nexport type Override<T, T2 extends Partial<T>> = {\n [K in keyof T2]: K extends keyof T ? T2[K] : never;\n};\n\nexport function assignFactory<T extends NonNullable<unknown>, T2 extends Partial<T>>(target: T) {\n return (source: NonNullable<Override<T, T2>>) => {\n Object.assign(target, source);\n };\n}\n\nexport const assign = <T extends NonNullable<unknown>, T2 extends Partial<T>>(\n a: T,\n b: NonNullable<Override<T, T2>>,\n) => assignFactory(a)(b);\nexport const omitEmptyValues = R.pickBy(R.isTruthy);\nexport const omitUndefined = R.pickBy(R.isDefined);\n\nexport function hasProp<T>(target: T | undefined, key: keyof T): key is keyof T {\n return Boolean(target) && Object.prototype.hasOwnProperty.call(target, key);\n}\n\nexport function hasProps<T>(keys: (keyof T)[]) {\n return (target: T | undefined) => keys.every((key) => hasProp(target, key));\n}\n\nexport function setProp(target: unknown, paths: readonly (keyof any)[], value: unknown) {\n for (const entry of paths.entries()) {\n const [idx, key] = entry as [number, keyof object];\n if (!R.isPlainObject(target) && !R.isArray(target)) {\n throw new TypeError(\"Only plain objects and arrays are supported!\");\n }\n\n const isLast = idx === paths.length - 1;\n const newValue = isLast ? value : (target[key] ?? {});\n Object.assign(target, { [key]: newValue });\n target = target[key];\n }\n}\n\nexport function getPropStrict(target: NonNullable<unknown>, path: string): any {\n if (!target || !(path in target)) {\n throw new TypeError(`Target does not contain key \"${path}\"`);\n }\n return target[path as keyof typeof target];\n}\n\nexport function getProp(\n target: unknown,\n paths: readonly (keyof any)[],\n defaultValue: any = undefined,\n) {\n let value: any = target;\n if (!value) {\n return undefined;\n }\n\n for (const key of paths) {\n if (!hasProp(value, key)) {\n return defaultValue;\n }\n value = value[key];\n }\n return value;\n}\n\nexport function deleteProps<T, K extends keyof T>(target: T, keys: readonly K[]) {\n keys.forEach((key) => {\n // eslint-disable-next-line @typescript-eslint/no-dynamic-delete\n delete target[key];\n });\n}\n\nexport function updateObject<T extends object, L extends object>(\n old: T,\n update: L,\n): asserts old is T & L {\n for (const [key, val] of Object.entries(update)) {\n const existing = old[key as keyof T];\n if (existing !== undefined && existing !== null) {\n throw new FrameworkError(\n `Cannot update object. Key '${key}' already exists and is defined.`,\n [],\n {\n context: {\n existing,\n update: val,\n },\n },\n );\n }\n old[key as keyof T] = val;\n }\n}\n\nexport function customMerge<T extends NonNullable<unknown>>(\n results: T[],\n processors: {\n [K in keyof T]: (value: T[K], oldValue: T[K]) => T[K];\n },\n) {\n if (results.length === 0) {\n throw new TypeError(\"Cannot merge content of an empty array!\");\n }\n\n const finalResult = {} as T;\n for (const next of results) {\n for (const [key, value] of R.entries(next)) {\n const oldValue = finalResult[key as keyof T];\n // @ts-expect-error weak typing due to generated types\n finalResult[key] = (processors[key] ?? R.takeFirstBy(1))(value, oldValue);\n }\n }\n return finalResult;\n}\n\nexport function mapObj<T extends object>(obj: T) {\n return function <K extends keyof T, R = T[K]>(\n fn: (key: K, value: T[K]) => R,\n ): Record<keyof T, R> {\n const updated = {} as Record<keyof T, R>;\n for (const pair of Object.entries(obj)) {\n const [key, value] = pair as [K, T[K]];\n updated[key] = fn(key, value);\n }\n return updated;\n };\n}\n"]}
1
+ {"version":3,"sources":["../../../src/internals/helpers/object.ts"],"names":["assignFactory","target","source","Object","assign","a","b","omitEmptyValues","R","pickBy","isTruthy","omitUndefined","isDefined","hasProp","key","Boolean","prototype","hasOwnProperty","call","hasProps","keys","every","setProp","paths","value","entry","entries","idx","isPlainObject","isArray","TypeError","isLast","length","newValue","getPropStrict","path","getProp","defaultValue","undefined","popProp","fallback","updateObject","old","update","val","existing","FrameworkError","context","customMerge","results","processors","finalResult","next","oldValue","takeFirstBy","mapObj","obj","fn","updated","pair","safeDefineProperty","get","defineProperty","enumerable","configurable","e"],"mappings":"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","file":"object.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport * as R from \"remeda\";\nimport { FrameworkError } from \"@/errors.js\";\n\nexport type Override<T, T2 extends Partial<T>> = {\n [K in keyof T2]: K extends keyof T ? T2[K] : never;\n};\n\nexport function assignFactory<T extends NonNullable<unknown>, T2 extends Partial<T>>(target: T) {\n return (source: NonNullable<Override<T, T2>>) => {\n Object.assign(target, source);\n };\n}\n\nexport const assign = <T extends NonNullable<unknown>, T2 extends Partial<T>>(\n a: T,\n b: NonNullable<Override<T, T2>>,\n) => assignFactory(a)(b);\nexport const omitEmptyValues = R.pickBy(R.isTruthy);\nexport const omitUndefined = R.pickBy(R.isDefined);\n\nexport function hasProp<T>(target: T | undefined, key: keyof T): key is keyof T {\n return Boolean(target) && Object.prototype.hasOwnProperty.call(target, key);\n}\n\nexport function hasProps<T>(keys: (keyof T)[]) {\n return (target: T | undefined) => keys.every((key) => hasProp(target, key));\n}\n\nexport function setProp(target: unknown, paths: readonly (keyof any)[], value: unknown) {\n for (const entry of paths.entries()) {\n const [idx, key] = entry as [number, keyof object];\n if (!R.isPlainObject(target) && !R.isArray(target)) {\n throw new TypeError(\"Only plain objects and arrays are supported!\");\n }\n\n const isLast = idx === paths.length - 1;\n const newValue = isLast ? value : (target[key] ?? {});\n Object.assign(target, { [key]: newValue });\n target = target[key];\n }\n}\n\nexport function getPropStrict(target: NonNullable<unknown>, path: string): any {\n if (!target || !(path in target)) {\n throw new TypeError(`Target does not contain key \"${path}\"`);\n }\n return target[path as keyof typeof target];\n}\n\nexport function getProp(\n target: unknown,\n paths: readonly (keyof any)[],\n defaultValue: any = undefined,\n) {\n let value: any = target;\n if (!value) {\n return undefined;\n }\n\n for (const key of paths) {\n if (!hasProp(value, key)) {\n return defaultValue;\n }\n value = value[key];\n }\n return value;\n}\n\nexport function popProp<T, K extends keyof T>(\n target: T,\n key: K,\n fallback: T[K] | null = null,\n): T[K] | null {\n if (!hasProp(target, key)) {\n return fallback;\n }\n const value = getProp(target, [key]);\n try {\n // eslint-disable-next-line @typescript-eslint/no-dynamic-delete\n delete target[key];\n } catch {\n /* empty */\n }\n return value;\n}\n\nexport function updateObject<T extends object, L extends object>(\n old: T,\n update: L,\n): asserts old is T & L {\n for (const [key, val] of Object.entries(update)) {\n const existing = old[key as keyof T];\n if (existing !== undefined && existing !== null) {\n throw new FrameworkError(\n `Cannot update object. Key '${key}' already exists and is defined.`,\n [],\n {\n context: {\n existing,\n update: val,\n },\n },\n );\n }\n old[key as keyof T] = val;\n }\n}\n\nexport function customMerge<T extends NonNullable<unknown>>(\n results: T[],\n processors: {\n [K in keyof T]: (value: T[K], oldValue: T[K]) => T[K];\n },\n) {\n if (results.length === 0) {\n throw new TypeError(\"Cannot merge content of an empty array!\");\n }\n\n const finalResult = {} as T;\n for (const next of results) {\n for (const [key, value] of R.entries(next)) {\n const oldValue = finalResult[key as keyof T];\n // @ts-expect-error weak typing due to generated types\n finalResult[key] = (processors[key] ?? R.takeFirstBy(1))(value, oldValue);\n }\n }\n return finalResult;\n}\n\nexport function mapObj<T extends object>(obj: T) {\n return function <K extends keyof T, R = T[K]>(\n fn: (key: K, value: T[K]) => R,\n ): Record<keyof T, R> {\n const updated = {} as Record<keyof T, R>;\n for (const pair of Object.entries(obj)) {\n const [key, value] = pair as [K, T[K]];\n updated[key] = fn(key, value);\n }\n return updated;\n };\n}\n\nexport function safeDefineProperty<T, K extends keyof T>(target: T, key: K, get: () => T[K]) {\n try {\n Object.defineProperty(target, key, {\n enumerable: false,\n configurable: false,\n get() {\n return get();\n },\n });\n } catch (e) {\n if (!(e instanceof TypeError)) {\n throw e;\n }\n }\n}\n"]}
@@ -14,11 +14,12 @@ declare function hasProps<T>(keys: (keyof T)[]): (target: T | undefined) => bool
14
14
  declare function setProp(target: unknown, paths: readonly (keyof any)[], value: unknown): void;
15
15
  declare function getPropStrict(target: NonNullable<unknown>, path: string): any;
16
16
  declare function getProp(target: unknown, paths: readonly (keyof any)[], defaultValue?: any): any;
17
- declare function deleteProps<T, K extends keyof T>(target: T, keys: readonly K[]): void;
17
+ declare function popProp<T, K extends keyof T>(target: T, key: K, fallback?: T[K] | null): T[K] | null;
18
18
  declare function updateObject<T extends object, L extends object>(old: T, update: L): asserts old is T & L;
19
19
  declare function customMerge<T extends NonNullable<unknown>>(results: T[], processors: {
20
20
  [K in keyof T]: (value: T[K], oldValue: T[K]) => T[K];
21
21
  }): T;
22
22
  declare function mapObj<T extends object>(obj: T): <K extends keyof T, R = T[K]>(fn: (key: K, value: T[K]) => R) => Record<keyof T, R>;
23
+ declare function safeDefineProperty<T, K extends keyof T>(target: T, key: K, get: () => T[K]): void;
23
24
 
24
- export { type Override, assign, assignFactory, customMerge, deleteProps, getProp, getPropStrict, hasProp, hasProps, mapObj, omitEmptyValues, omitUndefined, setProp, updateObject };
25
+ export { type Override, assign, assignFactory, customMerge, getProp, getPropStrict, hasProp, hasProps, mapObj, omitEmptyValues, omitUndefined, popProp, safeDefineProperty, setProp, updateObject };
@@ -14,11 +14,12 @@ declare function hasProps<T>(keys: (keyof T)[]): (target: T | undefined) => bool
14
14
  declare function setProp(target: unknown, paths: readonly (keyof any)[], value: unknown): void;
15
15
  declare function getPropStrict(target: NonNullable<unknown>, path: string): any;
16
16
  declare function getProp(target: unknown, paths: readonly (keyof any)[], defaultValue?: any): any;
17
- declare function deleteProps<T, K extends keyof T>(target: T, keys: readonly K[]): void;
17
+ declare function popProp<T, K extends keyof T>(target: T, key: K, fallback?: T[K] | null): T[K] | null;
18
18
  declare function updateObject<T extends object, L extends object>(old: T, update: L): asserts old is T & L;
19
19
  declare function customMerge<T extends NonNullable<unknown>>(results: T[], processors: {
20
20
  [K in keyof T]: (value: T[K], oldValue: T[K]) => T[K];
21
21
  }): T;
22
22
  declare function mapObj<T extends object>(obj: T): <K extends keyof T, R = T[K]>(fn: (key: K, value: T[K]) => R) => Record<keyof T, R>;
23
+ declare function safeDefineProperty<T, K extends keyof T>(target: T, key: K, get: () => T[K]): void;
23
24
 
24
- export { type Override, assign, assignFactory, customMerge, deleteProps, getProp, getPropStrict, hasProp, hasProps, mapObj, omitEmptyValues, omitUndefined, setProp, updateObject };
25
+ export { type Override, assign, assignFactory, customMerge, getProp, getPropStrict, hasProp, hasProps, mapObj, omitEmptyValues, omitUndefined, popProp, safeDefineProperty, setProp, updateObject };
@@ -56,12 +56,20 @@ function getProp(target, paths, defaultValue = void 0) {
56
56
  return value;
57
57
  }
58
58
  __name(getProp, "getProp");
59
- function deleteProps(target, keys) {
60
- keys.forEach((key) => {
59
+ function popProp(target, key, fallback = null) {
60
+ if (!hasProp(target, key)) {
61
+ return fallback;
62
+ }
63
+ const value = getProp(target, [
64
+ key
65
+ ]);
66
+ try {
61
67
  delete target[key];
62
- });
68
+ } catch {
69
+ }
70
+ return value;
63
71
  }
64
- __name(deleteProps, "deleteProps");
72
+ __name(popProp, "popProp");
65
73
  function updateObject(old, update) {
66
74
  for (const [key, val] of Object.entries(update)) {
67
75
  const existing = old[key];
@@ -102,7 +110,23 @@ function mapObj(obj) {
102
110
  };
103
111
  }
104
112
  __name(mapObj, "mapObj");
113
+ function safeDefineProperty(target, key, get) {
114
+ try {
115
+ Object.defineProperty(target, key, {
116
+ enumerable: false,
117
+ configurable: false,
118
+ get() {
119
+ return get();
120
+ }
121
+ });
122
+ } catch (e) {
123
+ if (!(e instanceof TypeError)) {
124
+ throw e;
125
+ }
126
+ }
127
+ }
128
+ __name(safeDefineProperty, "safeDefineProperty");
105
129
 
106
- export { assign, assignFactory, customMerge, deleteProps, getProp, getPropStrict, hasProp, hasProps, mapObj, omitEmptyValues, omitUndefined, setProp, updateObject };
130
+ export { assign, assignFactory, customMerge, getProp, getPropStrict, hasProp, hasProps, mapObj, omitEmptyValues, omitUndefined, popProp, safeDefineProperty, setProp, updateObject };
107
131
  //# sourceMappingURL=object.js.map
108
132
  //# sourceMappingURL=object.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/internals/helpers/object.ts"],"names":["assignFactory","target","source","Object","assign","a","b","omitEmptyValues","R","pickBy","isTruthy","omitUndefined","isDefined","hasProp","key","Boolean","prototype","hasOwnProperty","call","hasProps","keys","every","setProp","paths","value","entry","entries","idx","isPlainObject","isArray","TypeError","isLast","length","newValue","getPropStrict","path","getProp","defaultValue","undefined","deleteProps","forEach","updateObject","old","update","val","existing","FrameworkError","context","customMerge","results","processors","finalResult","next","oldValue","takeFirstBy","mapObj","obj","fn","updated","pair"],"mappings":"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","file":"object.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport * as R from \"remeda\";\nimport { FrameworkError } from \"@/errors.js\";\n\nexport type Override<T, T2 extends Partial<T>> = {\n [K in keyof T2]: K extends keyof T ? T2[K] : never;\n};\n\nexport function assignFactory<T extends NonNullable<unknown>, T2 extends Partial<T>>(target: T) {\n return (source: NonNullable<Override<T, T2>>) => {\n Object.assign(target, source);\n };\n}\n\nexport const assign = <T extends NonNullable<unknown>, T2 extends Partial<T>>(\n a: T,\n b: NonNullable<Override<T, T2>>,\n) => assignFactory(a)(b);\nexport const omitEmptyValues = R.pickBy(R.isTruthy);\nexport const omitUndefined = R.pickBy(R.isDefined);\n\nexport function hasProp<T>(target: T | undefined, key: keyof T): key is keyof T {\n return Boolean(target) && Object.prototype.hasOwnProperty.call(target, key);\n}\n\nexport function hasProps<T>(keys: (keyof T)[]) {\n return (target: T | undefined) => keys.every((key) => hasProp(target, key));\n}\n\nexport function setProp(target: unknown, paths: readonly (keyof any)[], value: unknown) {\n for (const entry of paths.entries()) {\n const [idx, key] = entry as [number, keyof object];\n if (!R.isPlainObject(target) && !R.isArray(target)) {\n throw new TypeError(\"Only plain objects and arrays are supported!\");\n }\n\n const isLast = idx === paths.length - 1;\n const newValue = isLast ? value : (target[key] ?? {});\n Object.assign(target, { [key]: newValue });\n target = target[key];\n }\n}\n\nexport function getPropStrict(target: NonNullable<unknown>, path: string): any {\n if (!target || !(path in target)) {\n throw new TypeError(`Target does not contain key \"${path}\"`);\n }\n return target[path as keyof typeof target];\n}\n\nexport function getProp(\n target: unknown,\n paths: readonly (keyof any)[],\n defaultValue: any = undefined,\n) {\n let value: any = target;\n if (!value) {\n return undefined;\n }\n\n for (const key of paths) {\n if (!hasProp(value, key)) {\n return defaultValue;\n }\n value = value[key];\n }\n return value;\n}\n\nexport function deleteProps<T, K extends keyof T>(target: T, keys: readonly K[]) {\n keys.forEach((key) => {\n // eslint-disable-next-line @typescript-eslint/no-dynamic-delete\n delete target[key];\n });\n}\n\nexport function updateObject<T extends object, L extends object>(\n old: T,\n update: L,\n): asserts old is T & L {\n for (const [key, val] of Object.entries(update)) {\n const existing = old[key as keyof T];\n if (existing !== undefined && existing !== null) {\n throw new FrameworkError(\n `Cannot update object. Key '${key}' already exists and is defined.`,\n [],\n {\n context: {\n existing,\n update: val,\n },\n },\n );\n }\n old[key as keyof T] = val;\n }\n}\n\nexport function customMerge<T extends NonNullable<unknown>>(\n results: T[],\n processors: {\n [K in keyof T]: (value: T[K], oldValue: T[K]) => T[K];\n },\n) {\n if (results.length === 0) {\n throw new TypeError(\"Cannot merge content of an empty array!\");\n }\n\n const finalResult = {} as T;\n for (const next of results) {\n for (const [key, value] of R.entries(next)) {\n const oldValue = finalResult[key as keyof T];\n // @ts-expect-error weak typing due to generated types\n finalResult[key] = (processors[key] ?? R.takeFirstBy(1))(value, oldValue);\n }\n }\n return finalResult;\n}\n\nexport function mapObj<T extends object>(obj: T) {\n return function <K extends keyof T, R = T[K]>(\n fn: (key: K, value: T[K]) => R,\n ): Record<keyof T, R> {\n const updated = {} as Record<keyof T, R>;\n for (const pair of Object.entries(obj)) {\n const [key, value] = pair as [K, T[K]];\n updated[key] = fn(key, value);\n }\n return updated;\n };\n}\n"]}
1
+ {"version":3,"sources":["../../../src/internals/helpers/object.ts"],"names":["assignFactory","target","source","Object","assign","a","b","omitEmptyValues","R","pickBy","isTruthy","omitUndefined","isDefined","hasProp","key","Boolean","prototype","hasOwnProperty","call","hasProps","keys","every","setProp","paths","value","entry","entries","idx","isPlainObject","isArray","TypeError","isLast","length","newValue","getPropStrict","path","getProp","defaultValue","undefined","popProp","fallback","updateObject","old","update","val","existing","FrameworkError","context","customMerge","results","processors","finalResult","next","oldValue","takeFirstBy","mapObj","obj","fn","updated","pair","safeDefineProperty","get","defineProperty","enumerable","configurable","e"],"mappings":";;;;;AAYO,SAASA,cAAqEC,MAAAA,EAAS;AAC5F,EAAA,OAAO,CAACC,MAAAA,KAAAA;AACNC,IAAAA,MAAAA,CAAOC,MAAAA,CAAOH,QAAQC,MAAAA,CAAAA;AACxB,GAAA;AACF;AAJgBF,MAAAA,CAAAA,aAAAA,EAAAA,eAAAA,CAAAA;AAMT,MAAMI,MAAAA,2BACXC,CAAAA,EACAC,CAAAA,KACGN,cAAcK,CAAAA,CAAAA,CAAGC,CAAAA,CAAAA,EAHA,QAAA;AAIf,MAAMC,eAAAA,GAAkBC,CAAAA,CAAEC,MAAAA,CAAOD,CAAAA,CAAEE,QAAQ;AAC3C,MAAMC,aAAAA,GAAgBH,CAAAA,CAAEC,MAAAA,CAAOD,CAAAA,CAAEI,SAAS;AAE1C,SAASC,OAAAA,CAAWZ,QAAuBa,GAAAA,EAAY;AAC5D,EAAA,OAAOC,OAAAA,CAAQd,MAAAA,CAAAA,IAAWE,MAAAA,CAAOa,UAAUC,cAAAA,CAAeC,IAAAA,CAAKjB,QAAQa,GAAAA,CAAAA;AACzE;AAFgBD,MAAAA,CAAAA,OAAAA,EAAAA,SAAAA,CAAAA;AAIT,SAASM,SAAYC,IAAAA,EAAiB;AAC3C,EAAA,OAAO,CAACnB,WAA0BmB,IAAAA,CAAKC,KAAAA,CAAM,CAACP,GAAAA,KAAQD,OAAAA,CAAQZ,MAAAA,EAAQa,GAAAA,CAAAA,CAAAA;AACxE;AAFgBK,MAAAA,CAAAA,QAAAA,EAAAA,UAAAA,CAAAA;AAIT,SAASG,OAAAA,CAAQrB,MAAAA,EAAiBsB,KAAAA,EAA+BC,KAAAA,EAAc;AACpF,EAAA,KAAA,MAAWC,KAAAA,IAASF,KAAAA,CAAMG,OAAAA,EAAO,EAAI;AACnC,IAAA,MAAM,CAACC,GAAAA,EAAKb,GAAAA,CAAAA,GAAOW,KAAAA;AACnB,IAAA,IAAI,CAACjB,EAAEoB,aAAAA,CAAc3B,MAAAA,KAAW,CAACO,CAAAA,CAAEqB,OAAAA,CAAQ5B,MAAAA,CAAAA,EAAS;AAClD,MAAA,MAAM,IAAI6B,UAAU,8CAAA,CAAA;AACtB;AAEA,IAAA,MAAMC,MAAAA,GAASJ,GAAAA,KAAQJ,KAAAA,CAAMS,MAAAA,GAAS,CAAA;AACtC,IAAA,MAAMC,WAAWF,MAAAA,GAASP,KAAAA,GAASvB,MAAAA,CAAOa,GAAAA,KAAQ,EAAC;AACnDX,IAAAA,MAAAA,CAAOC,OAAOH,MAAAA,EAAQ;AAAE,MAAA,CAACa,GAAAA,GAAMmB;KAAS,CAAA;AACxChC,IAAAA,MAAAA,GAASA,OAAOa,GAAAA,CAAAA;AAClB;AACF;AAZgBQ,MAAAA,CAAAA,OAAAA,EAAAA,SAAAA,CAAAA;AAcT,SAASY,aAAAA,CAAcjC,QAA8BkC,IAAAA,EAAY;AACtE,EAAA,IAAI,CAAClC,MAAAA,IAAU,EAAEkC,IAAAA,IAAQlC,MAAAA,CAAAA,EAAS;AAChC,IAAA,MAAM,IAAI6B,SAAAA,CAAU,CAAA,6BAAA,EAAgCK,IAAAA,CAAAA,CAAAA,CAAO,CAAA;AAC7D;AACA,EAAA,OAAOlC,OAAOkC,IAAAA,CAAAA;AAChB;AALgBD,MAAAA,CAAAA,aAAAA,EAAAA,eAAAA,CAAAA;AAOT,SAASE,OAAAA,CACdnC,MAAAA,EACAsB,KAAAA,EACAc,YAAAA,GAAoBC,MAAAA,EAAS;AAE7B,EAAA,IAAId,KAAAA,GAAavB,MAAAA;AACjB,EAAA,IAAI,CAACuB,KAAAA,EAAO;AACV,IAAA,OAAOc,MAAAA;AACT;AAEA,EAAA,KAAA,MAAWxB,OAAOS,KAAAA,EAAO;AACvB,IAAA,IAAI,CAACV,OAAAA,CAAQW,KAAAA,EAAOV,GAAAA,CAAAA,EAAM;AACxB,MAAA,OAAOuB,YAAAA;AACT;AACAb,IAAAA,KAAAA,GAAQA,MAAMV,GAAAA,CAAAA;AAChB;AACA,EAAA,OAAOU,KAAAA;AACT;AAjBgBY,MAAAA,CAAAA,OAAAA,EAAAA,SAAAA,CAAAA;AAmBT,SAASG,OAAAA,CACdtC,MAAAA,EACAa,GAAAA,EACA0B,QAAAA,GAAwB,IAAA,EAAI;AAE5B,EAAA,IAAI,CAAC3B,OAAAA,CAAQZ,MAAAA,EAAQa,GAAAA,CAAAA,EAAM;AACzB,IAAA,OAAO0B,QAAAA;AACT;AACA,EAAA,MAAMhB,KAAAA,GAAQY,QAAQnC,MAAAA,EAAQ;AAACa,IAAAA;AAAI,GAAA,CAAA;AACnC,EAAA,IAAI;AAEF,IAAA,OAAOb,OAAOa,GAAAA,CAAAA;GAChB,CAAA,MAAQ;AAER;AACA,EAAA,OAAOU,KAAAA;AACT;AAhBgBe,MAAAA,CAAAA,OAAAA,EAAAA,SAAAA,CAAAA;AAkBT,SAASE,YAAAA,CACdC,KACAC,MAAAA,EAAS;AAET,EAAA,KAAA,MAAW,CAAC7B,GAAAA,EAAK8B,GAAAA,KAAQzC,MAAAA,CAAOuB,OAAAA,CAAQiB,MAAAA,CAAAA,EAAS;AAC/C,IAAA,MAAME,QAAAA,GAAWH,IAAI5B,GAAAA,CAAAA;AACrB,IAAA,IAAI+B,QAAAA,KAAaP,MAAAA,IAAaO,QAAAA,KAAa,IAAA,EAAM;AAC/C,MAAA,MAAM,IAAIC,cAAAA,CACR,CAAA,2BAAA,EAA8BhC,GAAAA,CAAAA,gCAAAA,CAAAA,EAC9B,EAAA,EACA;QACEiC,OAAAA,EAAS;AACPF,UAAAA,QAAAA;UACAF,MAAAA,EAAQC;AACV;OACF,CAAA;AAEJ;AACAF,IAAAA,GAAAA,CAAI5B,GAAAA,CAAAA,GAAkB8B,GAAAA;AACxB;AACF;AApBgBH,MAAAA,CAAAA,YAAAA,EAAAA,cAAAA,CAAAA;AAsBT,SAASO,WAAAA,CACdC,SACAC,UAAAA,EAEC;AAED,EAAA,IAAID,OAAAA,CAAQjB,WAAW,CAAA,EAAG;AACxB,IAAA,MAAM,IAAIF,UAAU,yCAAA,CAAA;AACtB;AAEA,EAAA,MAAMqB,cAAc,EAAC;AACrB,EAAA,KAAA,MAAWC,QAAQH,OAAAA,EAAS;AAC1B,IAAA,KAAA,MAAW,CAACnC,GAAAA,EAAKU,KAAAA,KAAUhB,CAAAA,CAAEkB,OAAAA,CAAQ0B,IAAAA,CAAAA,EAAO;AAC1C,MAAA,MAAMC,QAAAA,GAAWF,YAAYrC,GAAAA,CAAAA;AAE7BqC,MAAAA,WAAAA,CAAYrC,GAAAA,CAAAA,GAAAA,CAAQoC,UAAAA,CAAWpC,GAAAA,CAAAA,IAAQN,EAAE8C,WAAAA,CAAY,CAAA,CAAA,EAAI9B,KAAAA,EAAO6B,QAAAA,CAAAA;AAClE;AACF;AACA,EAAA,OAAOF,WAAAA;AACT;AAnBgBH,MAAAA,CAAAA,WAAAA,EAAAA,aAAAA,CAAAA;AAqBT,SAASO,OAAyBC,GAAAA,EAAM;AAC7C,EAAA,OAAO,SACLC,EAAAA,EAA8B;AAE9B,IAAA,MAAMC,UAAU,EAAC;AACjB,IAAA,KAAA,MAAWC,IAAAA,IAAQxD,MAAAA,CAAOuB,OAAAA,CAAQ8B,GAAAA,CAAAA,EAAM;AACtC,MAAA,MAAM,CAAC1C,GAAAA,EAAKU,KAAAA,CAAAA,GAASmC,IAAAA;AACrBD,MAAAA,OAAAA,CAAQ5C,GAAAA,CAAAA,GAAO2C,EAAAA,CAAG3C,GAAAA,EAAKU,KAAAA,CAAAA;AACzB;AACA,IAAA,OAAOkC,OAAAA;AACT,GAAA;AACF;AAXgBH,MAAAA,CAAAA,MAAAA,EAAAA,QAAAA,CAAAA;AAaT,SAASK,kBAAAA,CAAyC3D,MAAAA,EAAWa,GAAAA,EAAQ+C,GAAAA,EAAe;AACzF,EAAA,IAAI;AACF1D,IAAAA,MAAAA,CAAO2D,cAAAA,CAAe7D,QAAQa,GAAAA,EAAK;MACjCiD,UAAAA,EAAY,KAAA;MACZC,YAAAA,EAAc,KAAA;MACdH,GAAAA,GAAAA;AACE,QAAA,OAAOA,GAAAA,EAAAA;AACT;KACF,CAAA;AACF,GAAA,CAAA,OAASI,CAAAA,EAAG;AACV,IAAA,IAAI,EAAEA,aAAanC,SAAAA,CAAAA,EAAY;AAC7B,MAAA,MAAMmC,CAAAA;AACR;AACF;AACF;AAdgBL,MAAAA,CAAAA,kBAAAA,EAAAA,oBAAAA,CAAAA","file":"object.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport * as R from \"remeda\";\nimport { FrameworkError } from \"@/errors.js\";\n\nexport type Override<T, T2 extends Partial<T>> = {\n [K in keyof T2]: K extends keyof T ? T2[K] : never;\n};\n\nexport function assignFactory<T extends NonNullable<unknown>, T2 extends Partial<T>>(target: T) {\n return (source: NonNullable<Override<T, T2>>) => {\n Object.assign(target, source);\n };\n}\n\nexport const assign = <T extends NonNullable<unknown>, T2 extends Partial<T>>(\n a: T,\n b: NonNullable<Override<T, T2>>,\n) => assignFactory(a)(b);\nexport const omitEmptyValues = R.pickBy(R.isTruthy);\nexport const omitUndefined = R.pickBy(R.isDefined);\n\nexport function hasProp<T>(target: T | undefined, key: keyof T): key is keyof T {\n return Boolean(target) && Object.prototype.hasOwnProperty.call(target, key);\n}\n\nexport function hasProps<T>(keys: (keyof T)[]) {\n return (target: T | undefined) => keys.every((key) => hasProp(target, key));\n}\n\nexport function setProp(target: unknown, paths: readonly (keyof any)[], value: unknown) {\n for (const entry of paths.entries()) {\n const [idx, key] = entry as [number, keyof object];\n if (!R.isPlainObject(target) && !R.isArray(target)) {\n throw new TypeError(\"Only plain objects and arrays are supported!\");\n }\n\n const isLast = idx === paths.length - 1;\n const newValue = isLast ? value : (target[key] ?? {});\n Object.assign(target, { [key]: newValue });\n target = target[key];\n }\n}\n\nexport function getPropStrict(target: NonNullable<unknown>, path: string): any {\n if (!target || !(path in target)) {\n throw new TypeError(`Target does not contain key \"${path}\"`);\n }\n return target[path as keyof typeof target];\n}\n\nexport function getProp(\n target: unknown,\n paths: readonly (keyof any)[],\n defaultValue: any = undefined,\n) {\n let value: any = target;\n if (!value) {\n return undefined;\n }\n\n for (const key of paths) {\n if (!hasProp(value, key)) {\n return defaultValue;\n }\n value = value[key];\n }\n return value;\n}\n\nexport function popProp<T, K extends keyof T>(\n target: T,\n key: K,\n fallback: T[K] | null = null,\n): T[K] | null {\n if (!hasProp(target, key)) {\n return fallback;\n }\n const value = getProp(target, [key]);\n try {\n // eslint-disable-next-line @typescript-eslint/no-dynamic-delete\n delete target[key];\n } catch {\n /* empty */\n }\n return value;\n}\n\nexport function updateObject<T extends object, L extends object>(\n old: T,\n update: L,\n): asserts old is T & L {\n for (const [key, val] of Object.entries(update)) {\n const existing = old[key as keyof T];\n if (existing !== undefined && existing !== null) {\n throw new FrameworkError(\n `Cannot update object. Key '${key}' already exists and is defined.`,\n [],\n {\n context: {\n existing,\n update: val,\n },\n },\n );\n }\n old[key as keyof T] = val;\n }\n}\n\nexport function customMerge<T extends NonNullable<unknown>>(\n results: T[],\n processors: {\n [K in keyof T]: (value: T[K], oldValue: T[K]) => T[K];\n },\n) {\n if (results.length === 0) {\n throw new TypeError(\"Cannot merge content of an empty array!\");\n }\n\n const finalResult = {} as T;\n for (const next of results) {\n for (const [key, value] of R.entries(next)) {\n const oldValue = finalResult[key as keyof T];\n // @ts-expect-error weak typing due to generated types\n finalResult[key] = (processors[key] ?? R.takeFirstBy(1))(value, oldValue);\n }\n }\n return finalResult;\n}\n\nexport function mapObj<T extends object>(obj: T) {\n return function <K extends keyof T, R = T[K]>(\n fn: (key: K, value: T[K]) => R,\n ): Record<keyof T, R> {\n const updated = {} as Record<keyof T, R>;\n for (const pair of Object.entries(obj)) {\n const [key, value] = pair as [K, T[K]];\n updated[key] = fn(key, value);\n }\n return updated;\n };\n}\n\nexport function safeDefineProperty<T, K extends keyof T>(target: T, key: K, get: () => T[K]) {\n try {\n Object.defineProperty(target, key, {\n enumerable: false,\n configurable: false,\n get() {\n return get();\n },\n });\n } catch (e) {\n if (!(e instanceof TypeError)) {\n throw e;\n }\n }\n}\n"]}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var pino = require('pino');
3
+ var pinoLogger = require('pino');
4
4
  var errors_cjs = require('../errors.cjs');
5
5
  var serializable_cjs = require('../internals/serializable.cjs');
6
6
  var decoratorCache_cjs = require('../cache/decoratorCache.cjs');
@@ -32,12 +32,13 @@ function _interopNamespace(e) {
32
32
  return Object.freeze(n);
33
33
  }
34
34
 
35
+ var pinoLogger__namespace = /*#__PURE__*/_interopNamespace(pinoLogger);
35
36
  var url__namespace = /*#__PURE__*/_interopNamespace(url);
36
37
  var path__default = /*#__PURE__*/_interopDefault(path);
37
38
 
38
39
  var __defProp = Object.defineProperty;
39
40
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
40
- var getImportMetaUrl = /* @__PURE__ */ __name(() => typeof document === "undefined" ? new URL(`file:${__filename}`).href : document.currentScript && document.currentScript.src || new URL("main.js", document.baseURI).href, "getImportMetaUrl");
41
+ var getImportMetaUrl = /* @__PURE__ */ __name(() => typeof document === "undefined" ? new URL(`file:${__filename}`).href : document.currentScript && document.currentScript.tagName.toUpperCase() === "SCRIPT" ? document.currentScript.src : new URL("main.js", document.baseURI).href, "getImportMetaUrl");
41
42
  var importMetaUrl = /* @__PURE__ */ getImportMetaUrl();
42
43
  function _ts_decorate(decorators, target, key, desc) {
43
44
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -81,6 +82,9 @@ class Logger extends serializable_cjs.Serializable {
81
82
  static {
82
83
  this.register();
83
84
  }
85
+ get msgPrefix() {
86
+ return this.raw.msgPrefix;
87
+ }
84
88
  get level() {
85
89
  return this.raw.level;
86
90
  }
@@ -153,8 +157,8 @@ class Logger extends serializable_cjs.Serializable {
153
157
  static createRaw(options, stream) {
154
158
  const defaults = Logger.defaults;
155
159
  const isPretty = defaults.pretty;
156
- const targetStream = stream ?? (isPretty ? pino.pino.destination(node_process.stdout) : void 0);
157
- return pino.pino({
160
+ const targetStream = stream ?? (isPretty ? pinoLogger__namespace.destination(node_process.stdout) : void 0);
161
+ return pinoLogger__namespace.pino({
158
162
  ...isPretty && {
159
163
  transport: {
160
164
  target: path__default.default.join(__dirname$1, "pretty.js"),
@@ -1 +1 @@
1
- {"version":3,"sources":["../../node_modules/tsup/assets/cjs_shims.js","../../src/logger/logger.ts"],"names":["getImportMetaUrl","document","URL","__filename","href","currentScript","src","baseURI","importMetaUrl","__dirname","path","dirname","url","fileURLToPath","LoggerError","FrameworkError","LoggerLevel","DEBUG","ERROR","FATAL","INFO","TRACE","WARN","SILENT","Logger","Serializable","raw","info","warn","fatal","error","debug","trace","silent","register","level","value","input","init","of","parent","root","instance","child","bindings","name","bind","defaults","createRaw","undefined","pretty","parseEnv","asBoolean","z","nativeEnum","default","filter","isTruthy","join","createSnapshot","shallowCopy","loadSnapshot","extra","Object","assign","options","stream","isPretty","targetStream","pinoLogger","destination","stdout","transport","target","messageKey","nestedKey","errorKey","colorize","sync","singleLine","timestamp","formatters","pid","_","hostname","__","others","log","record","label","toUpperCase"],"mappings":"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","file":"logger.cjs","sourcesContent":["// Shim globals in cjs bundle\n// There's a weird bug that esbuild will always inject importMetaUrl\n// if we export it as `const importMetaUrl = ... __filename ...`\n// But using a function will not cause this issue\n\nconst getImportMetaUrl = () =>\n typeof document === 'undefined'\n ? new URL(`file:${__filename}`).href\n : (document.currentScript && document.currentScript.src) ||\n new URL('main.js', document.baseURI).href\n\nexport const importMetaUrl = /* @__PURE__ */ getImportMetaUrl()\n","/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { pino as pinoLogger, ChildLoggerOptions, LoggerOptions, DestinationStream } from \"pino\";\nimport { FrameworkError } from \"@/errors.js\";\nimport { Serializable } from \"@/internals/serializable.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\nimport { EnumFromUnion, ValueOf } from \"@/internals/types.js\";\nimport { parseEnv } from \"@/internals/env.js\";\nimport { z } from \"zod\";\nimport { isTruthy } from \"remeda\";\nimport { PrettyOptions } from \"pino-pretty\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\nimport { stdout } from \"node:process\";\nimport * as url from \"node:url\";\nimport path from \"node:path\";\n\nconst __dirname = path.dirname(url.fileURLToPath(import.meta.url));\n\nexport interface LoggerBindings extends Record<string, any> {}\n\nexport class LoggerError extends FrameworkError {}\n\nexport const LoggerLevel: EnumFromUnion<pinoLogger.LevelWithSilent> = {\n DEBUG: \"debug\",\n ERROR: \"error\",\n FATAL: \"fatal\",\n INFO: \"info\",\n TRACE: \"trace\",\n WARN: \"warn\",\n SILENT: \"silent\",\n} as const;\nexport type LoggerLevelType = ValueOf<typeof LoggerLevel>;\n\nexport interface LoggerInput {\n name?: string;\n bindings?: LoggerBindings;\n level?: LoggerLevelType;\n raw?: ChildLoggerOptions;\n}\n\nexport class Logger extends Serializable implements pinoLogger.BaseLogger {\n protected raw!: pinoLogger.Logger;\n\n info!: pinoLogger.LogFn;\n warn!: pinoLogger.LogFn;\n fatal!: pinoLogger.LogFn;\n error!: pinoLogger.LogFn;\n debug!: pinoLogger.LogFn;\n trace!: pinoLogger.LogFn;\n silent!: pinoLogger.LogFn;\n\n static {\n this.register();\n }\n\n get level(): LoggerLevelType {\n return this.raw.level as LoggerLevelType;\n }\n\n set level(value: LoggerLevelType) {\n this.raw.level = value;\n }\n\n constructor(\n public readonly input: LoggerInput,\n raw?: pinoLogger.Logger,\n ) {\n super();\n this.raw = raw!;\n this.init();\n }\n\n static of(input: LoggerInput) {\n return new Logger(input);\n }\n\n private init() {\n const parent = this.raw || Logger.root.raw;\n const instance = parent.child(\n {\n ...this.input.bindings,\n name: this.input.name ?? this.input.bindings?.name,\n },\n {\n ...this.input.raw,\n level: this.input.level ?? this.input.raw?.level,\n },\n );\n\n this.raw = instance;\n this.info = instance.info.bind(instance);\n this.warn = instance.warn.bind(instance);\n this.fatal = instance.fatal.bind(instance);\n this.error = instance.error.bind(instance);\n this.debug = instance.debug.bind(instance);\n this.trace = instance.trace.bind(instance);\n this.silent = instance.silent.bind(instance);\n }\n\n @Cache()\n static get root() {\n return new Logger(Logger.defaults, Logger.createRaw(Logger.defaults));\n }\n\n @Cache()\n static get defaults(): Omit<LoggerInput, \"raw\"> & { pretty: boolean } {\n return {\n name: undefined,\n pretty: parseEnv.asBoolean(\"BEE_FRAMEWORK_LOG_PRETTY\", false),\n bindings: {},\n level: parseEnv(\n \"BEE_FRAMEWORK_LOG_LEVEL\",\n z.nativeEnum(LoggerLevel).default(LoggerLevel.INFO),\n ),\n };\n }\n\n child(input?: LoggerInput) {\n const name = [this.input.name, input?.name].filter(isTruthy).join(\".\");\n\n return new Logger(\n {\n ...this.input,\n level: this.level,\n ...input,\n name,\n bindings: {\n name,\n },\n },\n this.raw,\n );\n }\n\n createSnapshot() {\n return {\n input: shallowCopy(this.input),\n level: this.raw.level,\n };\n }\n\n loadSnapshot({ level, ...extra }: ReturnType<typeof this.createSnapshot>) {\n Object.assign(this, extra);\n this.init();\n this.raw.level = level;\n }\n\n public static createRaw(options?: LoggerOptions, stream?: DestinationStream | undefined) {\n const defaults = Logger.defaults;\n const isPretty = defaults.pretty;\n\n const targetStream = stream ?? (isPretty ? pinoLogger.destination(stdout) : undefined);\n\n return pinoLogger(\n {\n ...(isPretty && {\n transport: {\n target: path.join(__dirname, \"pretty.js\"),\n options: {\n messageKey: \"message\",\n nestedKey: undefined,\n errorKey: \"error\",\n colorize: true,\n sync: true,\n singleLine: parseEnv.asBoolean(\"BEE_FRAMEWORK_LOG_SINGLE_LINE\", false),\n } as PrettyOptions,\n },\n }),\n messageKey: \"message\",\n nestedKey: defaults.pretty ? undefined : \"payload\",\n errorKey: \"error\",\n timestamp: true,\n name: defaults.name,\n level: defaults.level,\n ...options,\n formatters: {\n bindings: ({ pid: _, hostname: __, ...others }) => {\n return others;\n },\n log: (record) => {\n return record;\n },\n level: (label) => {\n return { level: label.toUpperCase() };\n },\n ...options?.formatters,\n },\n },\n targetStream,\n );\n }\n}\n"]}
1
+ {"version":3,"sources":["../../node_modules/tsup/assets/cjs_shims.js","../../src/logger/logger.ts"],"names":["getImportMetaUrl","document","URL","__filename","href","currentScript","tagName","toUpperCase","src","baseURI","importMetaUrl","__dirname","path","dirname","url","fileURLToPath","LoggerError","FrameworkError","LoggerLevel","DEBUG","ERROR","FATAL","INFO","TRACE","WARN","SILENT","Logger","Serializable","raw","info","warn","fatal","error","debug","trace","silent","register","msgPrefix","level","value","input","init","of","parent","root","instance","child","bindings","name","bind","defaults","createRaw","undefined","pretty","parseEnv","asBoolean","z","nativeEnum","default","filter","isTruthy","join","createSnapshot","shallowCopy","loadSnapshot","extra","Object","assign","options","stream","isPretty","targetStream","pinoLogger","destination","stdout","pino","transport","target","messageKey","nestedKey","errorKey","colorize","sync","singleLine","timestamp","formatters","pid","_","hostname","__","others","log","record","label"],"mappings":"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","file":"logger.cjs","sourcesContent":["// Shim globals in cjs bundle\n// There's a weird bug that esbuild will always inject importMetaUrl\n// if we export it as `const importMetaUrl = ... __filename ...`\n// But using a function will not cause this issue\n\nconst getImportMetaUrl = () => \n typeof document === \"undefined\" \n ? new URL(`file:${__filename}`).href \n : (document.currentScript && document.currentScript.tagName.toUpperCase() === 'SCRIPT') \n ? document.currentScript.src \n : new URL(\"main.js\", document.baseURI).href;\n\nexport const importMetaUrl = /* @__PURE__ */ getImportMetaUrl()\n","/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport * as pinoLogger from \"pino\";\nimport {\n ChildLoggerOptions,\n LoggerOptions,\n DestinationStream,\n LevelWithSilent,\n BaseLogger,\n} from \"pino\";\nimport { FrameworkError } from \"@/errors.js\";\nimport { Serializable } from \"@/internals/serializable.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\nimport { EnumFromUnion, ValueOf } from \"@/internals/types.js\";\nimport { parseEnv } from \"@/internals/env.js\";\nimport { z } from \"zod\";\nimport { isTruthy } from \"remeda\";\nimport { PrettyOptions } from \"pino-pretty\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\nimport { stdout } from \"node:process\";\nimport * as url from \"node:url\";\nimport path from \"node:path\";\n\nconst __dirname = path.dirname(url.fileURLToPath(import.meta.url));\n\nexport interface LoggerBindings extends Record<string, any> {}\n\nexport class LoggerError extends FrameworkError {}\n\nexport const LoggerLevel: EnumFromUnion<LevelWithSilent> = {\n DEBUG: \"debug\",\n ERROR: \"error\",\n FATAL: \"fatal\",\n INFO: \"info\",\n TRACE: \"trace\",\n WARN: \"warn\",\n SILENT: \"silent\",\n} as const;\nexport type LoggerLevelType = ValueOf<typeof LoggerLevel>;\n\nexport interface LoggerInput {\n name?: string;\n bindings?: LoggerBindings;\n level?: LoggerLevelType;\n raw?: ChildLoggerOptions;\n}\n\nexport class Logger extends Serializable implements BaseLogger {\n protected raw!: pinoLogger.Logger;\n\n info!: pinoLogger.LogFn;\n warn!: pinoLogger.LogFn;\n fatal!: pinoLogger.LogFn;\n error!: pinoLogger.LogFn;\n debug!: pinoLogger.LogFn;\n trace!: pinoLogger.LogFn;\n silent!: pinoLogger.LogFn;\n\n static {\n this.register();\n }\n\n get msgPrefix(): string | undefined {\n return this.raw.msgPrefix;\n }\n\n get level(): LoggerLevelType {\n return this.raw.level as LoggerLevelType;\n }\n\n set level(value: LoggerLevelType) {\n this.raw.level = value;\n }\n\n constructor(\n public readonly input: LoggerInput,\n raw?: pinoLogger.Logger,\n ) {\n super();\n this.raw = raw!;\n this.init();\n }\n\n static of(input: LoggerInput) {\n return new Logger(input);\n }\n\n private init() {\n const parent = this.raw || Logger.root.raw;\n const instance = parent.child(\n {\n ...this.input.bindings,\n name: this.input.name ?? this.input.bindings?.name,\n },\n {\n ...this.input.raw,\n level: this.input.level ?? this.input.raw?.level,\n },\n );\n\n this.raw = instance;\n this.info = instance.info.bind(instance);\n this.warn = instance.warn.bind(instance);\n this.fatal = instance.fatal.bind(instance);\n this.error = instance.error.bind(instance);\n this.debug = instance.debug.bind(instance);\n this.trace = instance.trace.bind(instance);\n this.silent = instance.silent.bind(instance);\n }\n\n @Cache()\n static get root() {\n return new Logger(Logger.defaults, Logger.createRaw(Logger.defaults));\n }\n\n @Cache()\n static get defaults(): Omit<LoggerInput, \"raw\"> & { pretty: boolean } {\n return {\n name: undefined,\n pretty: parseEnv.asBoolean(\"BEE_FRAMEWORK_LOG_PRETTY\", false),\n bindings: {},\n level: parseEnv(\n \"BEE_FRAMEWORK_LOG_LEVEL\",\n z.nativeEnum(LoggerLevel).default(LoggerLevel.INFO),\n ),\n };\n }\n\n child(input?: LoggerInput) {\n const name = [this.input.name, input?.name].filter(isTruthy).join(\".\");\n\n return new Logger(\n {\n ...this.input,\n level: this.level,\n ...input,\n name,\n bindings: {\n name,\n },\n },\n this.raw,\n );\n }\n\n createSnapshot() {\n return {\n input: shallowCopy(this.input),\n level: this.raw.level,\n };\n }\n\n loadSnapshot({ level, ...extra }: ReturnType<typeof this.createSnapshot>) {\n Object.assign(this, extra);\n this.init();\n this.raw.level = level;\n }\n\n public static createRaw(options?: LoggerOptions, stream?: DestinationStream | undefined) {\n const defaults = Logger.defaults;\n const isPretty = defaults.pretty;\n\n const targetStream = stream ?? (isPretty ? pinoLogger.destination(stdout) : undefined);\n\n return pinoLogger.pino(\n {\n ...(isPretty && {\n transport: {\n target: path.join(__dirname, \"pretty.js\"),\n options: {\n messageKey: \"message\",\n nestedKey: undefined,\n errorKey: \"error\",\n colorize: true,\n sync: true,\n singleLine: parseEnv.asBoolean(\"BEE_FRAMEWORK_LOG_SINGLE_LINE\", false),\n } as PrettyOptions,\n },\n }),\n messageKey: \"message\",\n nestedKey: defaults.pretty ? undefined : \"payload\",\n errorKey: \"error\",\n timestamp: true,\n name: defaults.name,\n level: defaults.level,\n ...options,\n formatters: {\n bindings: ({ pid: _, hostname: __, ...others }) => {\n return others;\n },\n log: (record) => {\n return record;\n },\n level: (label) => {\n return { level: label.toUpperCase() };\n },\n ...options?.formatters,\n },\n },\n targetStream,\n );\n }\n}\n"]}