beeai-framework 0.1.20 → 0.1.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/a2a/agents/agent.cjs +4 -4
- package/dist/adapters/a2a/agents/agent.cjs.map +1 -1
- package/dist/adapters/a2a/agents/agent.d.cts +6 -10
- package/dist/adapters/a2a/agents/agent.d.ts +6 -10
- package/dist/adapters/a2a/agents/agent.js +4 -4
- package/dist/adapters/a2a/agents/agent.js.map +1 -1
- package/dist/adapters/a2a/agents/events.d.cts +1 -1
- package/dist/adapters/a2a/agents/events.d.ts +1 -1
- package/dist/adapters/a2a/agents/types.d.cts +2 -2
- package/dist/adapters/a2a/agents/types.d.ts +2 -2
- package/dist/adapters/a2a/agents/utils.cjs +2 -2
- package/dist/adapters/a2a/agents/utils.cjs.map +1 -1
- package/dist/adapters/a2a/agents/utils.js +2 -2
- package/dist/adapters/a2a/agents/utils.js.map +1 -1
- package/dist/adapters/a2a/serve/agent_executor.cjs +1 -3
- package/dist/adapters/a2a/serve/agent_executor.cjs.map +1 -1
- package/dist/adapters/a2a/serve/agent_executor.d.cts +4 -3
- package/dist/adapters/a2a/serve/agent_executor.d.ts +4 -3
- package/dist/adapters/a2a/serve/agent_executor.js +1 -3
- package/dist/adapters/a2a/serve/agent_executor.js.map +1 -1
- package/dist/adapters/a2a/serve/server.cjs +15 -0
- package/dist/adapters/a2a/serve/server.cjs.map +1 -1
- package/dist/adapters/a2a/serve/server.d.cts +4 -2
- package/dist/adapters/a2a/serve/server.d.ts +4 -2
- package/dist/adapters/a2a/serve/server.js +15 -0
- package/dist/adapters/a2a/serve/server.js.map +1 -1
- package/dist/adapters/acp/agents/agent.d.cts +6 -10
- package/dist/adapters/acp/agents/agent.d.ts +6 -10
- package/dist/adapters/acp/agents/events.d.cts +1 -1
- package/dist/adapters/acp/agents/events.d.ts +1 -1
- package/dist/adapters/{beeai_platform → agentstack}/agents/agent.cjs +4 -4
- package/dist/adapters/agentstack/agents/agent.cjs.map +1 -0
- package/dist/adapters/{beeai_platform → agentstack}/agents/agent.d.cts +18 -16
- package/dist/adapters/{beeai_platform → agentstack}/agents/agent.d.ts +18 -16
- package/dist/adapters/{beeai_platform → agentstack}/agents/agent.js +4 -4
- package/dist/adapters/agentstack/agents/agent.js.map +1 -0
- package/dist/adapters/agentstack/agents/events.d.cts +23 -0
- package/dist/adapters/agentstack/agents/events.d.ts +23 -0
- package/dist/adapters/{beeai_platform → agentstack}/agents/types.d.cts +4 -4
- package/dist/adapters/{beeai_platform → agentstack}/agents/types.d.ts +4 -4
- package/dist/adapters/amazon-bedrock/backend/chat.cjs +3 -2
- package/dist/adapters/amazon-bedrock/backend/chat.cjs.map +1 -1
- package/dist/adapters/amazon-bedrock/backend/chat.d.cts +5 -6
- package/dist/adapters/amazon-bedrock/backend/chat.d.ts +5 -6
- package/dist/adapters/amazon-bedrock/backend/chat.js +3 -2
- package/dist/adapters/amazon-bedrock/backend/chat.js.map +1 -1
- package/dist/adapters/amazon-bedrock/backend/embedding.cjs +2 -2
- package/dist/adapters/amazon-bedrock/backend/embedding.cjs.map +1 -1
- package/dist/adapters/amazon-bedrock/backend/embedding.d.cts +4 -4
- package/dist/adapters/amazon-bedrock/backend/embedding.d.ts +4 -4
- package/dist/adapters/amazon-bedrock/backend/embedding.js +2 -2
- package/dist/adapters/amazon-bedrock/backend/embedding.js.map +1 -1
- package/dist/adapters/anthropic/backend/chat.cjs +3 -2
- package/dist/adapters/anthropic/backend/chat.cjs.map +1 -1
- package/dist/adapters/anthropic/backend/chat.d.cts +5 -6
- package/dist/adapters/anthropic/backend/chat.d.ts +5 -6
- package/dist/adapters/anthropic/backend/chat.js +3 -2
- package/dist/adapters/anthropic/backend/chat.js.map +1 -1
- package/dist/adapters/anthropic/backend/embedding.d.cts +2 -2
- package/dist/adapters/anthropic/backend/embedding.d.ts +2 -2
- package/dist/adapters/azure-openai/backend/chat.cjs +3 -2
- package/dist/adapters/azure-openai/backend/chat.cjs.map +1 -1
- package/dist/adapters/azure-openai/backend/chat.d.cts +5 -6
- package/dist/adapters/azure-openai/backend/chat.d.ts +5 -6
- package/dist/adapters/azure-openai/backend/chat.js +3 -2
- package/dist/adapters/azure-openai/backend/chat.js.map +1 -1
- package/dist/adapters/azure-openai/backend/embedding.cjs +2 -2
- package/dist/adapters/azure-openai/backend/embedding.cjs.map +1 -1
- package/dist/adapters/azure-openai/backend/embedding.d.cts +3 -3
- package/dist/adapters/azure-openai/backend/embedding.d.ts +3 -3
- package/dist/adapters/azure-openai/backend/embedding.js +2 -2
- package/dist/adapters/azure-openai/backend/embedding.js.map +1 -1
- package/dist/adapters/dummy/backend/chat.d.cts +2 -2
- package/dist/adapters/dummy/backend/chat.d.ts +2 -2
- package/dist/adapters/dummy/backend/embedding.d.cts +2 -2
- package/dist/adapters/dummy/backend/embedding.d.ts +2 -2
- package/dist/adapters/google-vertex/backend/chat.cjs +3 -2
- package/dist/adapters/google-vertex/backend/chat.cjs.map +1 -1
- package/dist/adapters/google-vertex/backend/chat.d.cts +5 -6
- package/dist/adapters/google-vertex/backend/chat.d.ts +5 -6
- package/dist/adapters/google-vertex/backend/chat.js +3 -2
- package/dist/adapters/google-vertex/backend/chat.js.map +1 -1
- package/dist/adapters/google-vertex/backend/embedding.d.cts +2 -2
- package/dist/adapters/google-vertex/backend/embedding.d.ts +2 -2
- package/dist/adapters/groq/backend/chat.cjs +3 -2
- package/dist/adapters/groq/backend/chat.cjs.map +1 -1
- package/dist/adapters/groq/backend/chat.d.cts +5 -6
- package/dist/adapters/groq/backend/chat.d.ts +5 -6
- package/dist/adapters/groq/backend/chat.js +3 -2
- package/dist/adapters/groq/backend/chat.js.map +1 -1
- package/dist/adapters/groq/backend/embedding.d.cts +2 -2
- package/dist/adapters/groq/backend/embedding.d.ts +2 -2
- package/dist/adapters/langchain/backend/chat.cjs +6 -5
- package/dist/adapters/langchain/backend/chat.cjs.map +1 -1
- package/dist/adapters/langchain/backend/chat.d.cts +2 -2
- package/dist/adapters/langchain/backend/chat.d.ts +2 -2
- package/dist/adapters/langchain/backend/chat.js +6 -5
- package/dist/adapters/langchain/backend/chat.js.map +1 -1
- package/dist/adapters/langchain/backend/embedding.d.cts +3 -3
- package/dist/adapters/langchain/backend/embedding.d.ts +3 -3
- package/dist/adapters/langchain/tools.d.cts +1 -1
- package/dist/adapters/langchain/tools.d.ts +1 -1
- package/dist/adapters/ollama/backend/chat.cjs +1 -4
- package/dist/adapters/ollama/backend/chat.cjs.map +1 -1
- package/dist/adapters/ollama/backend/chat.d.cts +4 -4
- package/dist/adapters/ollama/backend/chat.d.ts +4 -4
- package/dist/adapters/ollama/backend/chat.js +1 -4
- package/dist/adapters/ollama/backend/chat.js.map +1 -1
- package/dist/adapters/ollama/backend/client.cjs +2 -2
- package/dist/adapters/ollama/backend/client.cjs.map +1 -1
- package/dist/adapters/ollama/backend/client.d.cts +1 -1
- package/dist/adapters/ollama/backend/client.d.ts +1 -1
- package/dist/adapters/ollama/backend/client.js +1 -1
- package/dist/adapters/ollama/backend/client.js.map +1 -1
- package/dist/adapters/ollama/backend/embedding.cjs.map +1 -1
- package/dist/adapters/ollama/backend/embedding.d.cts +3 -3
- package/dist/adapters/ollama/backend/embedding.d.ts +3 -3
- package/dist/adapters/ollama/backend/embedding.js.map +1 -1
- package/dist/adapters/openai/backend/chat.cjs +3 -2
- package/dist/adapters/openai/backend/chat.cjs.map +1 -1
- package/dist/adapters/openai/backend/chat.d.cts +5 -6
- package/dist/adapters/openai/backend/chat.d.ts +5 -6
- package/dist/adapters/openai/backend/chat.js +3 -2
- package/dist/adapters/openai/backend/chat.js.map +1 -1
- package/dist/adapters/openai/backend/client.cjs +2 -11
- package/dist/adapters/openai/backend/client.cjs.map +1 -1
- package/dist/adapters/openai/backend/client.js +3 -12
- package/dist/adapters/openai/backend/client.js.map +1 -1
- package/dist/adapters/openai/backend/embedding.cjs +2 -2
- package/dist/adapters/openai/backend/embedding.cjs.map +1 -1
- package/dist/adapters/openai/backend/embedding.d.cts +4 -4
- package/dist/adapters/openai/backend/embedding.d.ts +4 -4
- package/dist/adapters/openai/backend/embedding.js +2 -2
- package/dist/adapters/openai/backend/embedding.js.map +1 -1
- package/dist/adapters/vercel/backend/chat.cjs +26 -21
- package/dist/adapters/vercel/backend/chat.cjs.map +1 -1
- package/dist/adapters/vercel/backend/chat.d.cts +6 -4
- package/dist/adapters/vercel/backend/chat.d.ts +6 -4
- package/dist/adapters/vercel/backend/chat.js +27 -22
- package/dist/adapters/vercel/backend/chat.js.map +1 -1
- package/dist/adapters/vercel/backend/embedding.cjs.map +1 -1
- package/dist/adapters/vercel/backend/embedding.d.cts +3 -3
- package/dist/adapters/vercel/backend/embedding.d.ts +3 -3
- package/dist/adapters/vercel/backend/embedding.js.map +1 -1
- package/dist/adapters/vercel/backend/utils.cjs +26 -0
- package/dist/adapters/vercel/backend/utils.cjs.map +1 -1
- package/dist/adapters/vercel/backend/utils.d.cts +20 -2
- package/dist/adapters/vercel/backend/utils.d.ts +20 -2
- package/dist/adapters/vercel/backend/utils.js +25 -1
- package/dist/adapters/vercel/backend/utils.js.map +1 -1
- package/dist/adapters/watsonx/backend/chat.cjs +10 -4
- package/dist/adapters/watsonx/backend/chat.cjs.map +1 -1
- package/dist/adapters/watsonx/backend/chat.d.cts +2 -2
- package/dist/adapters/watsonx/backend/chat.d.ts +2 -2
- package/dist/adapters/watsonx/backend/chat.js +10 -4
- package/dist/adapters/watsonx/backend/chat.js.map +1 -1
- package/dist/adapters/watsonx/backend/embedding.d.cts +2 -2
- package/dist/adapters/watsonx/backend/embedding.d.ts +2 -2
- package/dist/adapters/xai/backend/chat.cjs +3 -2
- package/dist/adapters/xai/backend/chat.cjs.map +1 -1
- package/dist/adapters/xai/backend/chat.d.cts +5 -6
- package/dist/adapters/xai/backend/chat.d.ts +5 -6
- package/dist/adapters/xai/backend/chat.js +3 -2
- package/dist/adapters/xai/backend/chat.js.map +1 -1
- package/dist/{agent-I0Saf4A1.d.cts → agent-BMfyig7X.d.cts} +5 -4
- package/dist/{agent-CtrCeN7o.d.ts → agent-Dxw8AGWb.d.ts} +5 -4
- package/dist/agents/base.cjs +5 -2
- package/dist/agents/base.cjs.map +1 -1
- package/dist/agents/base.d.cts +2 -2
- package/dist/agents/base.d.ts +2 -2
- package/dist/agents/base.js +5 -2
- package/dist/agents/base.js.map +1 -1
- package/dist/agents/experimental/replan/agent.d.cts +3 -3
- package/dist/agents/experimental/replan/agent.d.ts +3 -3
- package/dist/agents/experimental/replan/prompts.d.cts +1 -1
- package/dist/agents/experimental/replan/prompts.d.ts +1 -1
- package/dist/agents/experimental/streamlit/agent.d.cts +8 -12
- package/dist/agents/experimental/streamlit/agent.d.ts +8 -12
- package/dist/agents/react/agent.d.cts +5 -4
- package/dist/agents/react/agent.d.ts +5 -4
- package/dist/agents/react/prompts.d.cts +1 -1
- package/dist/agents/react/prompts.d.ts +1 -1
- package/dist/agents/react/runners/base.cjs.map +1 -1
- package/dist/agents/react/runners/base.d.cts +5 -4
- package/dist/agents/react/runners/base.d.ts +5 -4
- package/dist/agents/react/runners/base.js.map +1 -1
- package/dist/agents/react/runners/deep-think/prompts.d.cts +1 -1
- package/dist/agents/react/runners/deep-think/prompts.d.ts +1 -1
- package/dist/agents/react/runners/deep-think/runner.d.cts +6 -5
- package/dist/agents/react/runners/deep-think/runner.d.ts +6 -5
- package/dist/agents/react/runners/default/runner.cjs.map +1 -1
- package/dist/agents/react/runners/default/runner.d.cts +6 -5
- package/dist/agents/react/runners/default/runner.d.ts +6 -5
- package/dist/agents/react/runners/default/runner.js.map +1 -1
- package/dist/agents/react/runners/granite/prompts.d.cts +1 -1
- package/dist/agents/react/runners/granite/prompts.d.ts +1 -1
- package/dist/agents/react/runners/granite/runner.cjs +4 -2
- package/dist/agents/react/runners/granite/runner.cjs.map +1 -1
- package/dist/agents/react/runners/granite/runner.d.cts +6 -5
- package/dist/agents/react/runners/granite/runner.d.ts +6 -5
- package/dist/agents/react/runners/granite/runner.js +4 -2
- package/dist/agents/react/runners/granite/runner.js.map +1 -1
- package/dist/agents/react/types.d.cts +3 -2
- package/dist/agents/react/types.d.ts +3 -2
- package/dist/agents/requirement/agent.cjs +162 -0
- package/dist/agents/requirement/agent.cjs.map +1 -0
- package/dist/agents/requirement/agent.d.cts +29 -0
- package/dist/agents/requirement/agent.d.ts +29 -0
- package/dist/agents/requirement/agent.js +160 -0
- package/dist/agents/requirement/agent.js.map +1 -0
- package/dist/agents/requirement/prompts.cjs +95 -0
- package/dist/agents/requirement/prompts.cjs.map +1 -0
- package/dist/agents/requirement/prompts.d.cts +107 -0
- package/dist/agents/requirement/prompts.d.ts +107 -0
- package/dist/agents/requirement/prompts.js +90 -0
- package/dist/agents/requirement/prompts.js.map +1 -0
- package/dist/agents/requirement/requirements/conditional.cjs +190 -0
- package/dist/agents/requirement/requirements/conditional.cjs.map +1 -0
- package/dist/agents/requirement/requirements/conditional.d.cts +71 -0
- package/dist/agents/requirement/requirements/conditional.d.ts +71 -0
- package/dist/agents/requirement/requirements/conditional.js +188 -0
- package/dist/agents/requirement/requirements/conditional.js.map +1 -0
- package/dist/agents/requirement/requirements/requirement.cjs +107 -0
- package/dist/agents/requirement/requirements/requirement.cjs.map +1 -0
- package/dist/agents/requirement/requirements/requirement.d.cts +59 -0
- package/dist/agents/requirement/requirements/requirement.d.ts +59 -0
- package/dist/agents/requirement/requirements/requirement.js +104 -0
- package/dist/agents/requirement/requirements/requirement.js.map +1 -0
- package/dist/agents/requirement/requirements/utils.cjs +74 -0
- package/dist/agents/requirement/requirements/utils.cjs.map +1 -0
- package/dist/agents/requirement/requirements/utils.d.cts +40 -0
- package/dist/agents/requirement/requirements/utils.d.ts +40 -0
- package/dist/agents/requirement/requirements/utils.js +69 -0
- package/dist/agents/requirement/requirements/utils.js.map +1 -0
- package/dist/agents/requirement/runner.cjs +252 -0
- package/dist/agents/requirement/runner.cjs.map +1 -0
- package/dist/agents/requirement/runner.d.cts +117 -0
- package/dist/agents/requirement/runner.d.ts +117 -0
- package/dist/agents/requirement/runner.js +250 -0
- package/dist/agents/requirement/runner.js.map +1 -0
- package/dist/agents/requirement/types.cjs +40 -0
- package/dist/agents/requirement/types.cjs.map +1 -0
- package/dist/agents/requirement/types.d.cts +24 -0
- package/dist/agents/requirement/types.d.ts +24 -0
- package/dist/agents/requirement/types.js +35 -0
- package/dist/agents/requirement/types.js.map +1 -0
- package/dist/agents/requirement/utils/llm.cjs +202 -0
- package/dist/agents/requirement/utils/llm.cjs.map +1 -0
- package/dist/agents/requirement/utils/llm.d.cts +50 -0
- package/dist/agents/requirement/utils/llm.d.ts +50 -0
- package/dist/agents/requirement/utils/llm.js +199 -0
- package/dist/agents/requirement/utils/llm.js.map +1 -0
- package/dist/agents/requirement/utils/tool.cjs +94 -0
- package/dist/agents/requirement/utils/tool.cjs.map +1 -0
- package/dist/agents/requirement/utils/tool.d.cts +24 -0
- package/dist/agents/requirement/utils/tool.d.ts +24 -0
- package/dist/agents/requirement/utils/tool.js +91 -0
- package/dist/agents/requirement/utils/tool.js.map +1 -0
- package/dist/agents/requirement/utils/toolCallChecker.cjs +61 -0
- package/dist/agents/requirement/utils/toolCallChecker.cjs.map +1 -0
- package/dist/agents/requirement/utils/toolCallChecker.d.cts +28 -0
- package/dist/agents/requirement/utils/toolCallChecker.d.ts +28 -0
- package/dist/agents/requirement/utils/toolCallChecker.js +59 -0
- package/dist/agents/requirement/utils/toolCallChecker.js.map +1 -0
- package/dist/agents/toolCalling/agent.cjs +9 -5
- package/dist/agents/toolCalling/agent.cjs.map +1 -1
- package/dist/agents/toolCalling/agent.d.cts +8 -12
- package/dist/agents/toolCalling/agent.d.ts +8 -12
- package/dist/agents/toolCalling/agent.js +9 -5
- package/dist/agents/toolCalling/agent.js.map +1 -1
- package/dist/agents/toolCalling/types.d.cts +1 -1
- package/dist/agents/toolCalling/types.d.ts +1 -1
- package/dist/agents/types.d.cts +2 -2
- package/dist/agents/types.d.ts +2 -2
- package/dist/backend/backend.d.cts +2 -2
- package/dist/backend/backend.d.ts +2 -2
- package/dist/backend/chat.cjs +1 -1
- package/dist/backend/chat.cjs.map +1 -1
- package/dist/backend/chat.d.cts +2 -2
- package/dist/backend/chat.d.ts +2 -2
- package/dist/backend/chat.js +1 -1
- package/dist/backend/chat.js.map +1 -1
- package/dist/backend/core.d.cts +2 -2
- package/dist/backend/core.d.ts +2 -2
- package/dist/backend/embedding.d.cts +2 -2
- package/dist/backend/embedding.d.ts +2 -2
- package/dist/backend/message.cjs +59 -3
- package/dist/backend/message.cjs.map +1 -1
- package/dist/backend/message.d.cts +3 -0
- package/dist/backend/message.d.ts +3 -0
- package/dist/backend/message.js +59 -3
- package/dist/backend/message.js.map +1 -1
- package/dist/backend/utils.d.cts +2 -2
- package/dist/backend/utils.d.ts +2 -2
- package/dist/{base-BsY2baWy.d.ts → base-BurRTBA7.d.ts} +4 -2
- package/dist/{base-BP7v-NSL.d.cts → base-v-PYIq5G.d.cts} +4 -2
- package/dist/cache/fileCache.cjs.map +1 -1
- package/dist/cache/fileCache.js.map +1 -1
- package/dist/{chat-W9j8T6UU.d.ts → chat-BbCYMAdE.d.ts} +4 -2
- package/dist/{chat-CR4yfOR9.d.cts → chat-DB_cf15S.d.cts} +4 -2
- package/dist/context.cjs +22 -5
- package/dist/context.cjs.map +1 -1
- package/dist/context.d.cts +19 -6
- package/dist/context.d.ts +19 -6
- package/dist/context.js +23 -7
- package/dist/context.js.map +1 -1
- package/dist/emitter/emitter.cjs +19 -13
- package/dist/emitter/emitter.cjs.map +1 -1
- package/dist/emitter/emitter.d.cts +1 -1
- package/dist/emitter/emitter.d.ts +1 -1
- package/dist/emitter/emitter.js +19 -13
- package/dist/emitter/emitter.js.map +1 -1
- package/dist/emitter/types.d.cts +1 -1
- package/dist/emitter/types.d.ts +1 -1
- package/dist/{emitter-DWEsd-ud.d.cts → emitter-CGKd_-kK.d.cts} +6 -5
- package/dist/{emitter-C9nwGLt6.d.ts → emitter-CN7I4uSV.d.ts} +6 -5
- package/dist/index.d.cts +5 -5
- package/dist/index.d.ts +5 -5
- package/dist/internals/fetcher.d.cts +1 -1
- package/dist/internals/fetcher.d.ts +1 -1
- package/dist/internals/helpers/array.cjs +35 -0
- package/dist/internals/helpers/array.cjs.map +1 -1
- package/dist/internals/helpers/array.d.cts +6 -1
- package/dist/internals/helpers/array.d.ts +6 -1
- package/dist/internals/helpers/array.js +35 -1
- package/dist/internals/helpers/array.js.map +1 -1
- package/dist/internals/helpers/object.cjs +30 -5
- package/dist/internals/helpers/object.cjs.map +1 -1
- package/dist/internals/helpers/object.d.cts +3 -2
- package/dist/internals/helpers/object.d.ts +3 -2
- package/dist/internals/helpers/object.js +29 -5
- package/dist/internals/helpers/object.js.map +1 -1
- package/dist/internals/helpers/prototype.cjs +5 -0
- package/dist/internals/helpers/prototype.cjs.map +1 -1
- package/dist/internals/helpers/prototype.d.cts +2 -1
- package/dist/internals/helpers/prototype.d.ts +2 -1
- package/dist/internals/helpers/prototype.js +5 -1
- package/dist/internals/helpers/prototype.js.map +1 -1
- package/dist/internals/types.cjs.map +1 -1
- package/dist/internals/types.d.cts +1 -1
- package/dist/internals/types.d.ts +1 -1
- package/dist/internals/types.js.map +1 -1
- package/dist/logger/logger.cjs +8 -4
- package/dist/logger/logger.cjs.map +1 -1
- package/dist/logger/logger.d.cts +21 -15
- package/dist/logger/logger.d.ts +21 -15
- package/dist/logger/logger.js +6 -3
- package/dist/logger/logger.js.map +1 -1
- package/dist/logger/pretty.cjs +2 -2
- package/dist/logger/pretty.cjs.map +1 -1
- package/dist/logger/pretty.js +2 -2
- package/dist/logger/pretty.js.map +1 -1
- package/dist/memory/slidingMemory.d.cts +1 -1
- package/dist/memory/slidingMemory.d.ts +1 -1
- package/dist/memory/summarizeMemory.d.cts +2 -2
- package/dist/memory/summarizeMemory.d.ts +2 -2
- package/dist/middleware/trajectory.cjs +322 -0
- package/dist/middleware/trajectory.cjs.map +1 -0
- package/dist/middleware/trajectory.d.cts +115 -0
- package/dist/middleware/trajectory.d.ts +115 -0
- package/dist/middleware/trajectory.js +320 -0
- package/dist/middleware/trajectory.js.map +1 -0
- package/dist/parsers/linePrefix.cjs.map +1 -1
- package/dist/parsers/linePrefix.d.cts +4 -8
- package/dist/parsers/linePrefix.d.ts +4 -8
- package/dist/parsers/linePrefix.js.map +1 -1
- package/dist/serializer/serializer.cjs +5 -4
- package/dist/serializer/serializer.cjs.map +1 -1
- package/dist/serializer/serializer.d.cts +1 -1
- package/dist/serializer/serializer.d.ts +1 -1
- package/dist/serializer/serializer.js +5 -4
- package/dist/serializer/serializer.js.map +1 -1
- package/dist/serializer/utils.cjs +3 -0
- package/dist/serializer/utils.cjs.map +1 -1
- package/dist/serializer/utils.d.cts +1 -1
- package/dist/serializer/utils.d.ts +1 -1
- package/dist/serializer/utils.js +3 -0
- package/dist/serializer/utils.js.map +1 -1
- package/dist/{serializer-CQxucveV.d.ts → serializer-53t8gGQa.d.ts} +3 -2
- package/dist/{serializer-BKn50Vnx.d.cts → serializer-c51B2z6d.d.cts} +3 -2
- package/dist/template.cjs +20 -0
- package/dist/template.cjs.map +1 -1
- package/dist/template.d.cts +1 -0
- package/dist/template.d.ts +1 -0
- package/dist/template.js +20 -0
- package/dist/template.js.map +1 -1
- package/dist/tools/arxiv.cjs.map +1 -1
- package/dist/tools/arxiv.d.cts +1 -1
- package/dist/tools/arxiv.d.ts +1 -1
- package/dist/tools/arxiv.js.map +1 -1
- package/dist/tools/base.cjs.map +1 -1
- package/dist/tools/base.d.cts +3 -2
- package/dist/tools/base.d.ts +3 -2
- package/dist/tools/base.js.map +1 -1
- package/dist/tools/calculator.d.cts +1 -1
- package/dist/tools/calculator.d.ts +1 -1
- package/dist/tools/custom.d.cts +2 -2
- package/dist/tools/custom.d.ts +2 -2
- package/dist/tools/database/elasticsearch.cjs.map +1 -1
- package/dist/tools/database/elasticsearch.d.cts +1 -1
- package/dist/tools/database/elasticsearch.d.ts +1 -1
- package/dist/tools/database/elasticsearch.js.map +1 -1
- package/dist/tools/database/milvus.cjs +3 -3
- package/dist/tools/database/milvus.cjs.map +1 -1
- package/dist/tools/database/milvus.d.cts +3 -3
- package/dist/tools/database/milvus.d.ts +3 -3
- package/dist/tools/database/milvus.js +3 -3
- package/dist/tools/database/milvus.js.map +1 -1
- package/dist/tools/database/qdrant.cjs +2 -2
- package/dist/tools/database/qdrant.cjs.map +1 -1
- package/dist/tools/database/qdrant.d.cts +1 -1
- package/dist/tools/database/qdrant.d.ts +1 -1
- package/dist/tools/database/qdrant.js +2 -2
- package/dist/tools/database/qdrant.js.map +1 -1
- package/dist/tools/database/sql.cjs.map +1 -1
- package/dist/tools/database/sql.d.cts +1 -1
- package/dist/tools/database/sql.d.ts +1 -1
- package/dist/tools/database/sql.js.map +1 -1
- package/dist/tools/llm.d.cts +2 -2
- package/dist/tools/llm.d.ts +2 -2
- package/dist/tools/mcp.d.cts +1 -1
- package/dist/tools/mcp.d.ts +1 -1
- package/dist/tools/openapi.d.cts +1 -1
- package/dist/tools/openapi.d.ts +1 -1
- package/dist/tools/python/output.d.cts +1 -1
- package/dist/tools/python/output.d.ts +1 -1
- package/dist/tools/python/python.d.cts +2 -2
- package/dist/tools/python/python.d.ts +2 -2
- package/dist/tools/search/base.cjs.map +1 -1
- package/dist/tools/search/base.d.cts +1 -1
- package/dist/tools/search/base.d.ts +1 -1
- package/dist/tools/search/base.js.map +1 -1
- package/dist/tools/search/duckDuckGoSearch.cjs.map +1 -1
- package/dist/tools/search/duckDuckGoSearch.d.cts +1 -1
- package/dist/tools/search/duckDuckGoSearch.d.ts +1 -1
- package/dist/tools/search/duckDuckGoSearch.js.map +1 -1
- package/dist/tools/search/googleSearch.cjs.map +1 -1
- package/dist/tools/search/googleSearch.d.cts +1 -1
- package/dist/tools/search/googleSearch.d.ts +1 -1
- package/dist/tools/search/googleSearch.js.map +1 -1
- package/dist/tools/search/searXNGSearch.d.cts +1 -1
- package/dist/tools/search/searXNGSearch.d.ts +1 -1
- package/dist/tools/search/wikipedia.cjs +25 -0
- package/dist/tools/search/wikipedia.cjs.map +1 -1
- package/dist/tools/search/wikipedia.d.cts +2 -3
- package/dist/tools/search/wikipedia.d.ts +2 -3
- package/dist/tools/search/wikipedia.js +23 -0
- package/dist/tools/search/wikipedia.js.map +1 -1
- package/dist/tools/similarity.d.cts +1 -1
- package/dist/tools/similarity.d.ts +1 -1
- package/dist/tools/think.cjs +52 -0
- package/dist/tools/think.cjs.map +1 -0
- package/dist/tools/think.d.cts +47 -0
- package/dist/tools/think.d.ts +47 -0
- package/dist/tools/think.js +50 -0
- package/dist/tools/think.js.map +1 -0
- package/dist/tools/weather/openMeteo.cjs.map +1 -1
- package/dist/tools/weather/openMeteo.d.cts +1 -1
- package/dist/tools/weather/openMeteo.d.ts +1 -1
- package/dist/tools/weather/openMeteo.js.map +1 -1
- package/dist/tools/web/webCrawler.cjs.map +1 -1
- package/dist/tools/web/webCrawler.d.cts +1 -1
- package/dist/tools/web/webCrawler.d.ts +1 -1
- package/dist/tools/web/webCrawler.js.map +1 -1
- package/dist/types-BXkkbABd.d.ts +213 -0
- package/dist/types-Cx6f43du.d.cts +213 -0
- package/dist/version.cjs +1 -1
- package/dist/version.js +1 -1
- package/dist/workflows/agent.d.cts +3 -3
- package/dist/workflows/agent.d.ts +3 -3
- package/dist/workflows/workflow.d.cts +1 -1
- package/dist/workflows/workflow.d.ts +1 -1
- package/package.json +70 -69
- package/dist/adapters/beeai_platform/agents/agent.cjs.map +0 -1
- package/dist/adapters/beeai_platform/agents/agent.js.map +0 -1
- package/dist/adapters/beeai_platform/agents/events.d.cts +0 -23
- package/dist/adapters/beeai_platform/agents/events.d.ts +0 -23
- /package/dist/adapters/{beeai_platform → agentstack}/agents/events.cjs +0 -0
- /package/dist/adapters/{beeai_platform → agentstack}/agents/events.cjs.map +0 -0
- /package/dist/adapters/{beeai_platform → agentstack}/agents/events.js +0 -0
- /package/dist/adapters/{beeai_platform → agentstack}/agents/events.js.map +0 -0
- /package/dist/adapters/{beeai_platform → agentstack}/agents/types.cjs +0 -0
- /package/dist/adapters/{beeai_platform → agentstack}/agents/types.cjs.map +0 -0
- /package/dist/adapters/{beeai_platform → agentstack}/agents/types.js +0 -0
- /package/dist/adapters/{beeai_platform → agentstack}/agents/types.js.map +0 -0
|
@@ -17,6 +17,7 @@ interface EmitterOptions {
|
|
|
17
17
|
once?: boolean;
|
|
18
18
|
persistent?: boolean;
|
|
19
19
|
matchNested?: boolean;
|
|
20
|
+
priority?: number;
|
|
20
21
|
}
|
|
21
22
|
interface EventTrace {
|
|
22
23
|
id: string;
|
|
@@ -61,7 +62,7 @@ interface Listener<T = any> {
|
|
|
61
62
|
readonly options?: EmitterOptions;
|
|
62
63
|
}
|
|
63
64
|
declare class Emitter<T = Record<keyof any, Callback<unknown>>> extends Serializable {
|
|
64
|
-
protected listeners:
|
|
65
|
+
protected listeners: Listener[];
|
|
65
66
|
protected readonly groupId?: string;
|
|
66
67
|
readonly namespace: string[];
|
|
67
68
|
readonly creator?: object;
|
|
@@ -87,13 +88,13 @@ declare class Emitter<T = Record<keyof any, Callback<unknown>>> extends Serializ
|
|
|
87
88
|
context: object;
|
|
88
89
|
trace: EventTrace | undefined;
|
|
89
90
|
listeners: {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
91
|
+
options?: EmitterOptions | undefined;
|
|
92
|
+
raw: Matcher;
|
|
93
|
+
callback: Callback<any>;
|
|
93
94
|
}[];
|
|
94
95
|
cleanups: CleanupFn[];
|
|
95
96
|
};
|
|
96
97
|
loadSnapshot({ listeners, ...snapshot }: ReturnType<typeof this.createSnapshot>): void;
|
|
97
98
|
}
|
|
98
99
|
|
|
99
|
-
export { type Callback as C, Emitter as E, type InferCallbackValue as I, type MatcherFn as M, type StringKey as S, type
|
|
100
|
+
export { type Callback as C, Emitter as E, type InferCallbackValue as I, type MatcherFn as M, type StringKey as S, type EventMeta as a, type Matcher as b, type CleanupFn as c, type EmitterOptions as d, type EventTrace as e, type EmitterInput as f, type EmitterChildInput as g };
|
package/dist/index.d.cts
CHANGED
|
@@ -2,11 +2,11 @@ export { Logger, LoggerBindings, LoggerError, LoggerInput, LoggerLevel, LoggerLe
|
|
|
2
2
|
export { PromptTemplate, PromptTemplateError, PromptTemplateInput, PromptTemplateRenderFn, PromptTemplateRenderInput, ValidationPromptTemplateError } from './template.cjs';
|
|
3
3
|
export { AbortError, FrameworkError, FrameworkErrorOptions, NotImplementedError, ValueError } from './errors.cjs';
|
|
4
4
|
export { Version } from './version.cjs';
|
|
5
|
-
export { S as SerializeFactory, a as Serializer } from './serializer-
|
|
6
|
-
export { A as AgentError, a as BaseAgent, B as BaseAgentRunOptions } from './base-
|
|
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-
|
|
5
|
+
export { S as SerializeFactory, a as Serializer } from './serializer-c51B2z6d.cjs';
|
|
6
|
+
export { A as AgentError, a as BaseAgent, B as BaseAgentRunOptions } from './base-v-PYIq5G.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-DB_cf15S.cjs';
|
|
8
8
|
export { EmbeddingModel, EmbeddingModelEmitter, EmbeddingModelEvents, EmbeddingModelInput, EmbeddingModelOutput } from './backend/embedding.cjs';
|
|
9
|
-
export { AnyTool, BaseToolOptions, BaseToolRunOptions, DynamicTool, InferToolOutput, JSONToolOutput, RetryOptions, StringToolOutput, Tool, ToolEmitter, ToolError, ToolEvents, ToolInput, ToolInputRaw, ToolInputValidationError, ToolOutput, ToolSnapshot } from './tools/base.cjs';
|
|
9
|
+
export { AnyTool, AnyToolClass, BaseToolOptions, BaseToolRunOptions, DynamicTool, InferToolOutput, JSONToolOutput, RetryOptions, StringToolOutput, Tool, ToolEmitter, ToolError, ToolEvents, ToolInput, ToolInputRaw, ToolInputValidationError, ToolOutput, ToolSnapshot } from './tools/base.cjs';
|
|
10
10
|
import 'pino';
|
|
11
11
|
import './internals/serializable.cjs';
|
|
12
12
|
import './internals/types.cjs';
|
|
@@ -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-
|
|
17
|
+
import './emitter-CGKd_-kK.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
|
@@ -2,11 +2,11 @@ export { Logger, LoggerBindings, LoggerError, LoggerInput, LoggerLevel, LoggerLe
|
|
|
2
2
|
export { PromptTemplate, PromptTemplateError, PromptTemplateInput, PromptTemplateRenderFn, PromptTemplateRenderInput, ValidationPromptTemplateError } from './template.js';
|
|
3
3
|
export { AbortError, FrameworkError, FrameworkErrorOptions, NotImplementedError, ValueError } from './errors.js';
|
|
4
4
|
export { Version } from './version.js';
|
|
5
|
-
export { S as SerializeFactory, a as Serializer } from './serializer-
|
|
6
|
-
export { A as AgentError, a as BaseAgent, B as BaseAgentRunOptions } from './base-
|
|
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-
|
|
5
|
+
export { S as SerializeFactory, a as Serializer } from './serializer-53t8gGQa.js';
|
|
6
|
+
export { A as AgentError, a as BaseAgent, B as BaseAgentRunOptions } from './base-BurRTBA7.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-BbCYMAdE.js';
|
|
8
8
|
export { EmbeddingModel, EmbeddingModelEmitter, EmbeddingModelEvents, EmbeddingModelInput, EmbeddingModelOutput } from './backend/embedding.js';
|
|
9
|
-
export { AnyTool, BaseToolOptions, BaseToolRunOptions, DynamicTool, InferToolOutput, JSONToolOutput, RetryOptions, StringToolOutput, Tool, ToolEmitter, ToolError, ToolEvents, ToolInput, ToolInputRaw, ToolInputValidationError, ToolOutput, ToolSnapshot } from './tools/base.js';
|
|
9
|
+
export { AnyTool, AnyToolClass, BaseToolOptions, BaseToolRunOptions, DynamicTool, InferToolOutput, JSONToolOutput, RetryOptions, StringToolOutput, Tool, ToolEmitter, ToolError, ToolEvents, ToolInput, ToolInputRaw, ToolInputValidationError, ToolOutput, ToolSnapshot } from './tools/base.js';
|
|
10
10
|
import 'pino';
|
|
11
11
|
import './internals/serializable.js';
|
|
12
12
|
import './internals/types.js';
|
|
@@ -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-
|
|
17
|
+
import './emitter-CN7I4uSV.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-
|
|
5
|
+
import { C as Callback, E as Emitter } from '../emitter-CGKd_-kK.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-
|
|
5
|
+
import { C as Callback, E as Emitter } from '../emitter-CN7I4uSV.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
|
|
82
|
-
|
|
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(
|
|
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","
|
|
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
|
|
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,
|
|
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
|
|
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,
|
|
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
|
|
60
|
-
|
|
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(
|
|
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,
|
|
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","
|
|
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.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"]}
|
|
@@ -34,6 +34,10 @@ function* traversePrototypeChain(value, excluded) {
|
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
__name(traversePrototypeChain, "traversePrototypeChain");
|
|
37
|
+
function isConstructor(value) {
|
|
38
|
+
return !!value && !!value.prototype && !!value.prototype.constructor;
|
|
39
|
+
}
|
|
40
|
+
__name(isConstructor, "isConstructor");
|
|
37
41
|
function isDirectInstanceOf(object, constructor) {
|
|
38
42
|
return R__namespace.isTruthy(object) && Object.getPrototypeOf(object) === constructor.prototype;
|
|
39
43
|
}
|
|
@@ -50,6 +54,7 @@ function findDescriptor(target, property) {
|
|
|
50
54
|
__name(findDescriptor, "findDescriptor");
|
|
51
55
|
|
|
52
56
|
exports.findDescriptor = findDescriptor;
|
|
57
|
+
exports.isConstructor = isConstructor;
|
|
53
58
|
exports.isDirectInstanceOf = isDirectInstanceOf;
|
|
54
59
|
exports.traversePrototypeChain = traversePrototypeChain;
|
|
55
60
|
//# sourceMappingURL=prototype.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/internals/helpers/prototype.ts"],"names":["traversePrototypeChain","value","excluded","node","undefined","Object","getPrototypeOf","has","isDirectInstanceOf","object","constructor","R","isTruthy","
|
|
1
|
+
{"version":3,"sources":["../../../src/internals/helpers/prototype.ts"],"names":["traversePrototypeChain","value","excluded","node","undefined","Object","getPrototypeOf","has","isConstructor","prototype","isDirectInstanceOf","object","constructor","R","isTruthy","findDescriptor","target","property","descriptor","getOwnPropertyDescriptor"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAQO,UAAUA,sBAAAA,CAAuBC,OAAgBC,QAAAA,EAAmB;AACzE,EAAA,IAAIC,IAAAA,GAAOF,KAAAA;AACX,EAAA,OAAOE,IAAAA,KAAS,IAAA,IAAQA,IAAAA,KAASC,MAAAA,EAAW;AAC1CD,IAAAA,IAAAA,GAAOE,MAAAA,CAAOC,eAAeH,IAAAA,CAAAA;AAC7B,IAAA,IAAI,CAACD,QAAAA,EAAUK,GAAAA,GAAMJ,IAAAA,CAAAA,EAAO;AAC1B,MAAA,MAAMA,IAAAA;AACR;AACF;AACF;AARiBH,MAAAA,CAAAA,sBAAAA,EAAAA,wBAAAA,CAAAA;AAUV,SAASQ,cAAiBP,KAAAA,EAAU;AACzC,EAAA,OAAO,CAAC,CAACA,KAAAA,IAAS,CAAC,CAACA,MAAMQ,SAAAA,IAAa,CAAC,CAACR,KAAAA,CAAMQ,SAAAA,CAAU,WAAA;AAC3D;AAFgBD,MAAAA,CAAAA,aAAAA,EAAAA,eAAAA,CAAAA;AAIT,SAASE,kBAAAA,CACdC,QACAC,WAAAA,EAAgC;AAEhC,EAAA,OAAOC,YAAAA,CAAEC,SAASH,MAAAA,CAAAA,IAAWN,OAAOC,cAAAA,CAAeK,MAAAA,MAAYC,WAAAA,CAAYH,SAAAA;AAC7E;AALgBC,MAAAA,CAAAA,kBAAAA,EAAAA,oBAAAA,CAAAA;AAOT,SAASK,cAAAA,CACdC,QACAC,QAAAA,EAAiB;AAEjB,EAAA,KAAA,MAAWd,IAAAA,IAAQH,sBAAAA,CAAuBgB,MAAAA,CAAAA,EAAS;AACjD,IAAA,MAAME,UAAAA,GAAab,MAAAA,CAAOc,wBAAAA,CAAyBhB,IAAAA,EAAMc,QAAAA,CAAAA;AACzD,IAAA,IAAIC,UAAAA,EAAY;AACd,MAAA,OAAOA,UAAAA;AACT;AACF;AACA,EAAA,OAAO,IAAA;AACT;AAXgBH,MAAAA,CAAAA,cAAAA,EAAAA,gBAAAA,CAAAA","file":"prototype.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { ClassConstructor } from \"@/internals/types.js\";\nimport * as R from \"remeda\";\n\nexport function* traversePrototypeChain(value: unknown, excluded?: Set<any>) {\n let node = value;\n while (node !== null && node !== undefined) {\n node = Object.getPrototypeOf(node);\n if (!excluded?.has?.(node)) {\n yield node;\n }\n }\n}\n\nexport function isConstructor<A>(value: any): value is ClassConstructor<A> {\n return !!value && !!value.prototype && !!value.prototype.constructor;\n}\n\nexport function isDirectInstanceOf<A>(\n object: unknown,\n constructor: ClassConstructor<A>,\n): object is A {\n return R.isTruthy(object) && Object.getPrototypeOf(object) === constructor.prototype;\n}\n\nexport function findDescriptor<T extends NonNullable<unknown>>(\n target: T,\n property: keyof T,\n): PropertyDescriptor | null {\n for (const node of traversePrototypeChain(target)) {\n const descriptor = Object.getOwnPropertyDescriptor(node, property);\n if (descriptor) {\n return descriptor;\n }\n }\n return null;\n}\n"]}
|
|
@@ -7,7 +7,8 @@ import './guards.cjs';
|
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
declare function traversePrototypeChain(value: unknown, excluded?: Set<any>): Generator<unknown, void, unknown>;
|
|
10
|
+
declare function isConstructor<A>(value: any): value is ClassConstructor<A>;
|
|
10
11
|
declare function isDirectInstanceOf<A>(object: unknown, constructor: ClassConstructor<A>): object is A;
|
|
11
12
|
declare function findDescriptor<T extends NonNullable<unknown>>(target: T, property: keyof T): PropertyDescriptor | null;
|
|
12
13
|
|
|
13
|
-
export { findDescriptor, isDirectInstanceOf, traversePrototypeChain };
|
|
14
|
+
export { findDescriptor, isConstructor, isDirectInstanceOf, traversePrototypeChain };
|
|
@@ -7,7 +7,8 @@ import './guards.js';
|
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
declare function traversePrototypeChain(value: unknown, excluded?: Set<any>): Generator<unknown, void, unknown>;
|
|
10
|
+
declare function isConstructor<A>(value: any): value is ClassConstructor<A>;
|
|
10
11
|
declare function isDirectInstanceOf<A>(object: unknown, constructor: ClassConstructor<A>): object is A;
|
|
11
12
|
declare function findDescriptor<T extends NonNullable<unknown>>(target: T, property: keyof T): PropertyDescriptor | null;
|
|
12
13
|
|
|
13
|
-
export { findDescriptor, isDirectInstanceOf, traversePrototypeChain };
|
|
14
|
+
export { findDescriptor, isConstructor, isDirectInstanceOf, traversePrototypeChain };
|
|
@@ -12,6 +12,10 @@ function* traversePrototypeChain(value, excluded) {
|
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
14
|
__name(traversePrototypeChain, "traversePrototypeChain");
|
|
15
|
+
function isConstructor(value) {
|
|
16
|
+
return !!value && !!value.prototype && !!value.prototype.constructor;
|
|
17
|
+
}
|
|
18
|
+
__name(isConstructor, "isConstructor");
|
|
15
19
|
function isDirectInstanceOf(object, constructor) {
|
|
16
20
|
return R.isTruthy(object) && Object.getPrototypeOf(object) === constructor.prototype;
|
|
17
21
|
}
|
|
@@ -27,6 +31,6 @@ function findDescriptor(target, property) {
|
|
|
27
31
|
}
|
|
28
32
|
__name(findDescriptor, "findDescriptor");
|
|
29
33
|
|
|
30
|
-
export { findDescriptor, isDirectInstanceOf, traversePrototypeChain };
|
|
34
|
+
export { findDescriptor, isConstructor, isDirectInstanceOf, traversePrototypeChain };
|
|
31
35
|
//# sourceMappingURL=prototype.js.map
|
|
32
36
|
//# sourceMappingURL=prototype.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/internals/helpers/prototype.ts"],"names":["traversePrototypeChain","value","excluded","node","undefined","Object","getPrototypeOf","has","isDirectInstanceOf","object","constructor","R","isTruthy","
|
|
1
|
+
{"version":3,"sources":["../../../src/internals/helpers/prototype.ts"],"names":["traversePrototypeChain","value","excluded","node","undefined","Object","getPrototypeOf","has","isConstructor","prototype","isDirectInstanceOf","object","constructor","R","isTruthy","findDescriptor","target","property","descriptor","getOwnPropertyDescriptor"],"mappings":";;;;AAQO,UAAUA,sBAAAA,CAAuBC,OAAgBC,QAAAA,EAAmB;AACzE,EAAA,IAAIC,IAAAA,GAAOF,KAAAA;AACX,EAAA,OAAOE,IAAAA,KAAS,IAAA,IAAQA,IAAAA,KAASC,MAAAA,EAAW;AAC1CD,IAAAA,IAAAA,GAAOE,MAAAA,CAAOC,eAAeH,IAAAA,CAAAA;AAC7B,IAAA,IAAI,CAACD,QAAAA,EAAUK,GAAAA,GAAMJ,IAAAA,CAAAA,EAAO;AAC1B,MAAA,MAAMA,IAAAA;AACR;AACF;AACF;AARiBH,MAAAA,CAAAA,sBAAAA,EAAAA,wBAAAA,CAAAA;AAUV,SAASQ,cAAiBP,KAAAA,EAAU;AACzC,EAAA,OAAO,CAAC,CAACA,KAAAA,IAAS,CAAC,CAACA,MAAMQ,SAAAA,IAAa,CAAC,CAACR,KAAAA,CAAMQ,SAAAA,CAAU,WAAA;AAC3D;AAFgBD,MAAAA,CAAAA,aAAAA,EAAAA,eAAAA,CAAAA;AAIT,SAASE,kBAAAA,CACdC,QACAC,WAAAA,EAAgC;AAEhC,EAAA,OAAOC,CAAAA,CAAEC,SAASH,MAAAA,CAAAA,IAAWN,OAAOC,cAAAA,CAAeK,MAAAA,MAAYC,WAAAA,CAAYH,SAAAA;AAC7E;AALgBC,MAAAA,CAAAA,kBAAAA,EAAAA,oBAAAA,CAAAA;AAOT,SAASK,cAAAA,CACdC,QACAC,QAAAA,EAAiB;AAEjB,EAAA,KAAA,MAAWd,IAAAA,IAAQH,sBAAAA,CAAuBgB,MAAAA,CAAAA,EAAS;AACjD,IAAA,MAAME,UAAAA,GAAab,MAAAA,CAAOc,wBAAAA,CAAyBhB,IAAAA,EAAMc,QAAAA,CAAAA;AACzD,IAAA,IAAIC,UAAAA,EAAY;AACd,MAAA,OAAOA,UAAAA;AACT;AACF;AACA,EAAA,OAAO,IAAA;AACT;AAXgBH,MAAAA,CAAAA,cAAAA,EAAAA,gBAAAA,CAAAA","file":"prototype.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { ClassConstructor } from \"@/internals/types.js\";\nimport * as R from \"remeda\";\n\nexport function* traversePrototypeChain(value: unknown, excluded?: Set<any>) {\n let node = value;\n while (node !== null && node !== undefined) {\n node = Object.getPrototypeOf(node);\n if (!excluded?.has?.(node)) {\n yield node;\n }\n }\n}\n\nexport function isConstructor<A>(value: any): value is ClassConstructor<A> {\n return !!value && !!value.prototype && !!value.prototype.constructor;\n}\n\nexport function isDirectInstanceOf<A>(\n object: unknown,\n constructor: ClassConstructor<A>,\n): object is A {\n return R.isTruthy(object) && Object.getPrototypeOf(object) === constructor.prototype;\n}\n\nexport function findDescriptor<T extends NonNullable<unknown>>(\n target: T,\n property: keyof T,\n): PropertyDescriptor | null {\n for (const node of traversePrototypeChain(target)) {\n const descriptor = Object.getOwnPropertyDescriptor(node, property);\n if (descriptor) {\n return descriptor;\n }\n }\n return null;\n}\n"]}
|