beeai-framework 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +226 -0
- package/dist/adapters/amazon-bedrock/backend/chat.cjs +21 -0
- package/dist/adapters/amazon-bedrock/backend/chat.cjs.map +1 -0
- package/dist/adapters/amazon-bedrock/backend/chat.d.cts +49 -0
- package/dist/adapters/amazon-bedrock/backend/chat.d.ts +49 -0
- package/dist/adapters/amazon-bedrock/backend/chat.js +19 -0
- package/dist/adapters/amazon-bedrock/backend/chat.js.map +1 -0
- package/dist/adapters/amazon-bedrock/backend/client.cjs +21 -0
- package/dist/adapters/amazon-bedrock/backend/client.cjs.map +1 -0
- package/dist/adapters/amazon-bedrock/backend/client.d.cts +28 -0
- package/dist/adapters/amazon-bedrock/backend/client.d.ts +28 -0
- package/dist/adapters/amazon-bedrock/backend/client.js +19 -0
- package/dist/adapters/amazon-bedrock/backend/client.js.map +1 -0
- package/dist/adapters/amazon-bedrock/backend/embedding.cjs +21 -0
- package/dist/adapters/amazon-bedrock/backend/embedding.cjs.map +1 -0
- package/dist/adapters/amazon-bedrock/backend/embedding.d.cts +40 -0
- package/dist/adapters/amazon-bedrock/backend/embedding.d.ts +40 -0
- package/dist/adapters/amazon-bedrock/backend/embedding.js +19 -0
- package/dist/adapters/amazon-bedrock/backend/embedding.js.map +1 -0
- package/dist/adapters/anthropic/backend/chat.cjs +24 -0
- package/dist/adapters/anthropic/backend/chat.cjs.map +1 -0
- package/dist/adapters/anthropic/backend/chat.d.cts +49 -0
- package/dist/adapters/anthropic/backend/chat.d.ts +49 -0
- package/dist/adapters/anthropic/backend/chat.js +22 -0
- package/dist/adapters/anthropic/backend/chat.js.map +1 -0
- package/dist/adapters/anthropic/backend/client.cjs +32 -0
- package/dist/adapters/anthropic/backend/client.cjs.map +1 -0
- package/dist/adapters/anthropic/backend/client.d.cts +28 -0
- package/dist/adapters/anthropic/backend/client.d.ts +28 -0
- package/dist/adapters/anthropic/backend/client.js +30 -0
- package/dist/adapters/anthropic/backend/client.js.map +1 -0
- package/dist/adapters/anthropic/backend/embedding.cjs +21 -0
- package/dist/adapters/anthropic/backend/embedding.cjs.map +1 -0
- package/dist/adapters/anthropic/backend/embedding.d.cts +40 -0
- package/dist/adapters/anthropic/backend/embedding.d.ts +40 -0
- package/dist/adapters/anthropic/backend/embedding.js +19 -0
- package/dist/adapters/anthropic/backend/embedding.js.map +1 -0
- package/dist/adapters/azure-openai/backend/chat.cjs +21 -0
- package/dist/adapters/azure-openai/backend/chat.cjs.map +1 -0
- package/dist/adapters/azure-openai/backend/chat.d.cts +49 -0
- package/dist/adapters/azure-openai/backend/chat.d.ts +49 -0
- package/dist/adapters/azure-openai/backend/chat.js +19 -0
- package/dist/adapters/azure-openai/backend/chat.js.map +1 -0
- package/dist/adapters/azure-openai/backend/client.cjs +26 -0
- package/dist/adapters/azure-openai/backend/client.cjs.map +1 -0
- package/dist/adapters/azure-openai/backend/client.d.cts +28 -0
- package/dist/adapters/azure-openai/backend/client.d.ts +28 -0
- package/dist/adapters/azure-openai/backend/client.js +24 -0
- package/dist/adapters/azure-openai/backend/client.js.map +1 -0
- package/dist/adapters/azure-openai/backend/embedding.cjs +21 -0
- package/dist/adapters/azure-openai/backend/embedding.cjs.map +1 -0
- package/dist/adapters/azure-openai/backend/embedding.d.cts +40 -0
- package/dist/adapters/azure-openai/backend/embedding.d.ts +40 -0
- package/dist/adapters/azure-openai/backend/embedding.js +19 -0
- package/dist/adapters/azure-openai/backend/embedding.js.map +1 -0
- package/dist/adapters/dummy/backend/chat.cjs +51 -0
- package/dist/adapters/dummy/backend/chat.cjs.map +1 -0
- package/dist/adapters/dummy/backend/chat.d.cts +39 -0
- package/dist/adapters/dummy/backend/chat.d.ts +39 -0
- package/dist/adapters/dummy/backend/chat.js +49 -0
- package/dist/adapters/dummy/backend/chat.js.map +1 -0
- package/dist/adapters/dummy/backend/embedding.cjs +44 -0
- package/dist/adapters/dummy/backend/embedding.cjs.map +1 -0
- package/dist/adapters/dummy/backend/embedding.d.cts +41 -0
- package/dist/adapters/dummy/backend/embedding.d.ts +41 -0
- package/dist/adapters/dummy/backend/embedding.js +42 -0
- package/dist/adapters/dummy/backend/embedding.js.map +1 -0
- package/dist/adapters/google-vertex/backend/chat.cjs +21 -0
- package/dist/adapters/google-vertex/backend/chat.cjs.map +1 -0
- package/dist/adapters/google-vertex/backend/chat.d.cts +49 -0
- package/dist/adapters/google-vertex/backend/chat.d.ts +49 -0
- package/dist/adapters/google-vertex/backend/chat.js +19 -0
- package/dist/adapters/google-vertex/backend/chat.js.map +1 -0
- package/dist/adapters/google-vertex/backend/client.cjs +25 -0
- package/dist/adapters/google-vertex/backend/client.cjs.map +1 -0
- package/dist/adapters/google-vertex/backend/client.d.cts +28 -0
- package/dist/adapters/google-vertex/backend/client.d.ts +28 -0
- package/dist/adapters/google-vertex/backend/client.js +23 -0
- package/dist/adapters/google-vertex/backend/client.js.map +1 -0
- package/dist/adapters/google-vertex/backend/embedding.cjs +21 -0
- package/dist/adapters/google-vertex/backend/embedding.cjs.map +1 -0
- package/dist/adapters/google-vertex/backend/embedding.d.cts +40 -0
- package/dist/adapters/google-vertex/backend/embedding.d.ts +40 -0
- package/dist/adapters/google-vertex/backend/embedding.js +19 -0
- package/dist/adapters/google-vertex/backend/embedding.js.map +1 -0
- package/dist/adapters/groq/backend/chat.cjs +24 -0
- package/dist/adapters/groq/backend/chat.cjs.map +1 -0
- package/dist/adapters/groq/backend/chat.d.cts +49 -0
- package/dist/adapters/groq/backend/chat.d.ts +49 -0
- package/dist/adapters/groq/backend/chat.js +22 -0
- package/dist/adapters/groq/backend/chat.js.map +1 -0
- package/dist/adapters/groq/backend/client.cjs +24 -0
- package/dist/adapters/groq/backend/client.cjs.map +1 -0
- package/dist/adapters/groq/backend/client.d.cts +28 -0
- package/dist/adapters/groq/backend/client.d.ts +28 -0
- package/dist/adapters/groq/backend/client.js +22 -0
- package/dist/adapters/groq/backend/client.js.map +1 -0
- package/dist/adapters/groq/backend/embedding.cjs +25 -0
- package/dist/adapters/groq/backend/embedding.cjs.map +1 -0
- package/dist/adapters/groq/backend/embedding.d.cts +40 -0
- package/dist/adapters/groq/backend/embedding.d.ts +40 -0
- package/dist/adapters/groq/backend/embedding.js +23 -0
- package/dist/adapters/groq/backend/embedding.js.map +1 -0
- package/dist/adapters/langchain/backend/chat.cjs +117 -0
- package/dist/adapters/langchain/backend/chat.cjs.map +1 -0
- package/dist/adapters/langchain/backend/chat.d.cts +48 -0
- package/dist/adapters/langchain/backend/chat.d.ts +48 -0
- package/dist/adapters/langchain/backend/chat.js +115 -0
- package/dist/adapters/langchain/backend/chat.js.map +1 -0
- package/dist/adapters/langchain/backend/embedding.cjs +56 -0
- package/dist/adapters/langchain/backend/embedding.cjs.map +1 -0
- package/dist/adapters/langchain/backend/embedding.d.cts +43 -0
- package/dist/adapters/langchain/backend/embedding.d.ts +43 -0
- package/dist/adapters/langchain/backend/embedding.js +54 -0
- package/dist/adapters/langchain/backend/embedding.js.map +1 -0
- package/dist/adapters/langchain/tools.cjs +114 -0
- package/dist/adapters/langchain/tools.cjs.map +1 -0
- package/dist/adapters/langchain/tools.d.cts +44 -0
- package/dist/adapters/langchain/tools.d.ts +44 -0
- package/dist/adapters/langchain/tools.js +92 -0
- package/dist/adapters/langchain/tools.js.map +1 -0
- package/dist/adapters/ollama/backend/chat.cjs +28 -0
- package/dist/adapters/ollama/backend/chat.cjs.map +1 -0
- package/dist/adapters/ollama/backend/chat.d.cts +50 -0
- package/dist/adapters/ollama/backend/chat.d.ts +50 -0
- package/dist/adapters/ollama/backend/chat.js +26 -0
- package/dist/adapters/ollama/backend/chat.js.map +1 -0
- package/dist/adapters/ollama/backend/client.cjs +23 -0
- package/dist/adapters/ollama/backend/client.cjs.map +1 -0
- package/dist/adapters/ollama/backend/client.d.cts +28 -0
- package/dist/adapters/ollama/backend/client.d.ts +28 -0
- package/dist/adapters/ollama/backend/client.js +21 -0
- package/dist/adapters/ollama/backend/client.js.map +1 -0
- package/dist/adapters/ollama/backend/embedding.cjs +21 -0
- package/dist/adapters/ollama/backend/embedding.cjs.map +1 -0
- package/dist/adapters/ollama/backend/embedding.d.cts +40 -0
- package/dist/adapters/ollama/backend/embedding.d.ts +40 -0
- package/dist/adapters/ollama/backend/embedding.js +19 -0
- package/dist/adapters/ollama/backend/embedding.js.map +1 -0
- package/dist/adapters/openai/backend/chat.cjs +21 -0
- package/dist/adapters/openai/backend/chat.cjs.map +1 -0
- package/dist/adapters/openai/backend/chat.d.cts +49 -0
- package/dist/adapters/openai/backend/chat.d.ts +49 -0
- package/dist/adapters/openai/backend/chat.js +19 -0
- package/dist/adapters/openai/backend/chat.js.map +1 -0
- package/dist/adapters/openai/backend/client.cjs +33 -0
- package/dist/adapters/openai/backend/client.cjs.map +1 -0
- package/dist/adapters/openai/backend/client.d.cts +28 -0
- package/dist/adapters/openai/backend/client.d.ts +28 -0
- package/dist/adapters/openai/backend/client.js +31 -0
- package/dist/adapters/openai/backend/client.js.map +1 -0
- package/dist/adapters/openai/backend/embedding.cjs +21 -0
- package/dist/adapters/openai/backend/embedding.cjs.map +1 -0
- package/dist/adapters/openai/backend/embedding.d.cts +40 -0
- package/dist/adapters/openai/backend/embedding.d.ts +40 -0
- package/dist/adapters/openai/backend/embedding.js +19 -0
- package/dist/adapters/openai/backend/embedding.js.map +1 -0
- package/dist/adapters/vercel/backend/chat.cjs +184 -0
- package/dist/adapters/vercel/backend/chat.cjs.map +1 -0
- package/dist/adapters/vercel/backend/chat.d.cts +45 -0
- package/dist/adapters/vercel/backend/chat.d.ts +45 -0
- package/dist/adapters/vercel/backend/chat.js +182 -0
- package/dist/adapters/vercel/backend/chat.js.map +1 -0
- package/dist/adapters/vercel/backend/embedding.cjs +63 -0
- package/dist/adapters/vercel/backend/embedding.cjs.map +1 -0
- package/dist/adapters/vercel/backend/embedding.d.cts +45 -0
- package/dist/adapters/vercel/backend/embedding.d.ts +45 -0
- package/dist/adapters/vercel/backend/embedding.js +61 -0
- package/dist/adapters/vercel/backend/embedding.js.map +1 -0
- package/dist/adapters/watsonx/backend/chat.cjs +199 -0
- package/dist/adapters/watsonx/backend/chat.cjs.map +1 -0
- package/dist/adapters/watsonx/backend/chat.d.cts +56 -0
- package/dist/adapters/watsonx/backend/chat.d.ts +56 -0
- package/dist/adapters/watsonx/backend/chat.js +193 -0
- package/dist/adapters/watsonx/backend/chat.js.map +1 -0
- package/dist/adapters/watsonx/backend/client.cjs +48 -0
- package/dist/adapters/watsonx/backend/client.cjs.map +1 -0
- package/dist/adapters/watsonx/backend/client.d.cts +38 -0
- package/dist/adapters/watsonx/backend/client.d.ts +38 -0
- package/dist/adapters/watsonx/backend/client.js +46 -0
- package/dist/adapters/watsonx/backend/client.js.map +1 -0
- package/dist/adapters/watsonx/backend/embedding.cjs +70 -0
- package/dist/adapters/watsonx/backend/embedding.cjs.map +1 -0
- package/dist/adapters/watsonx/backend/embedding.d.cts +50 -0
- package/dist/adapters/watsonx/backend/embedding.d.ts +50 -0
- package/dist/adapters/watsonx/backend/embedding.js +68 -0
- package/dist/adapters/watsonx/backend/embedding.js.map +1 -0
- package/dist/agent-BbaHVlob.d.cts +84 -0
- package/dist/agent-Bks2fOUl.d.ts +84 -0
- package/dist/agents/base.cjs +73 -0
- package/dist/agents/base.cjs.map +1 -0
- package/dist/agents/base.d.cts +18 -0
- package/dist/agents/base.d.ts +18 -0
- package/dist/agents/base.js +70 -0
- package/dist/agents/base.js.map +1 -0
- package/dist/agents/bee/agent.cjs +193 -0
- package/dist/agents/bee/agent.cjs.map +1 -0
- package/dist/agents/bee/agent.d.cts +32 -0
- package/dist/agents/bee/agent.d.ts +32 -0
- package/dist/agents/bee/agent.js +171 -0
- package/dist/agents/bee/agent.js.map +1 -0
- package/dist/agents/bee/prompts.cjs +176 -0
- package/dist/agents/bee/prompts.cjs.map +1 -0
- package/dist/agents/bee/prompts.d.cts +148 -0
- package/dist/agents/bee/prompts.d.ts +148 -0
- package/dist/agents/bee/prompts.js +166 -0
- package/dist/agents/bee/prompts.js.map +1 -0
- package/dist/agents/bee/runners/base.cjs +103 -0
- package/dist/agents/bee/runners/base.cjs.map +1 -0
- package/dist/agents/bee/runners/base.d.cts +32 -0
- package/dist/agents/bee/runners/base.d.ts +32 -0
- package/dist/agents/bee/runners/base.js +101 -0
- package/dist/agents/bee/runners/base.js.map +1 -0
- package/dist/agents/bee/runners/deep-think/prompts.cjs +92 -0
- package/dist/agents/bee/runners/deep-think/prompts.cjs.map +1 -0
- package/dist/agents/bee/runners/deep-think/prompts.d.cts +145 -0
- package/dist/agents/bee/runners/deep-think/prompts.d.ts +145 -0
- package/dist/agents/bee/runners/deep-think/prompts.js +84 -0
- package/dist/agents/bee/runners/deep-think/prompts.js.map +1 -0
- package/dist/agents/bee/runners/deep-think/runner.cjs +124 -0
- package/dist/agents/bee/runners/deep-think/runner.cjs.map +1 -0
- package/dist/agents/bee/runners/deep-think/runner.d.cts +166 -0
- package/dist/agents/bee/runners/deep-think/runner.d.ts +166 -0
- package/dist/agents/bee/runners/deep-think/runner.js +122 -0
- package/dist/agents/bee/runners/deep-think/runner.js.map +1 -0
- package/dist/agents/bee/runners/default/runner.cjs +416 -0
- package/dist/agents/bee/runners/default/runner.cjs.map +1 -0
- package/dist/agents/bee/runners/default/runner.d.cts +186 -0
- package/dist/agents/bee/runners/default/runner.d.ts +186 -0
- package/dist/agents/bee/runners/default/runner.js +414 -0
- package/dist/agents/bee/runners/default/runner.js.map +1 -0
- package/dist/agents/bee/runners/default/runner.spec.cjs +113 -0
- package/dist/agents/bee/runners/default/runner.spec.cjs.map +1 -0
- package/dist/agents/bee/runners/default/runner.spec.d.cts +2 -0
- package/dist/agents/bee/runners/default/runner.spec.d.ts +2 -0
- package/dist/agents/bee/runners/default/runner.spec.js +111 -0
- package/dist/agents/bee/runners/default/runner.spec.js.map +1 -0
- package/dist/agents/bee/runners/granite/prompts.cjs +94 -0
- package/dist/agents/bee/runners/granite/prompts.cjs.map +1 -0
- package/dist/agents/bee/runners/granite/prompts.d.cts +145 -0
- package/dist/agents/bee/runners/granite/prompts.d.ts +145 -0
- package/dist/agents/bee/runners/granite/prompts.js +86 -0
- package/dist/agents/bee/runners/granite/prompts.js.map +1 -0
- package/dist/agents/bee/runners/granite/runner.cjs +102 -0
- package/dist/agents/bee/runners/granite/runner.cjs.map +1 -0
- package/dist/agents/bee/runners/granite/runner.d.cts +167 -0
- package/dist/agents/bee/runners/granite/runner.d.ts +167 -0
- package/dist/agents/bee/runners/granite/runner.js +100 -0
- package/dist/agents/bee/runners/granite/runner.js.map +1 -0
- package/dist/agents/bee/types.cjs +4 -0
- package/dist/agents/bee/types.cjs.map +1 -0
- package/dist/agents/bee/types.d.cts +164 -0
- package/dist/agents/bee/types.d.ts +164 -0
- package/dist/agents/bee/types.js +3 -0
- package/dist/agents/bee/types.js.map +1 -0
- package/dist/agents/experimental/replan/agent.cjs +119 -0
- package/dist/agents/experimental/replan/agent.cjs.map +1 -0
- package/dist/agents/experimental/replan/agent.d.cts +96 -0
- package/dist/agents/experimental/replan/agent.d.ts +96 -0
- package/dist/agents/experimental/replan/agent.js +117 -0
- package/dist/agents/experimental/replan/agent.js.map +1 -0
- package/dist/agents/experimental/replan/prompts.cjs +89 -0
- package/dist/agents/experimental/replan/prompts.cjs.map +1 -0
- package/dist/agents/experimental/replan/prompts.d.cts +153 -0
- package/dist/agents/experimental/replan/prompts.d.ts +153 -0
- package/dist/agents/experimental/replan/prompts.js +85 -0
- package/dist/agents/experimental/replan/prompts.js.map +1 -0
- package/dist/agents/experimental/streamlit/agent.cjs +161 -0
- package/dist/agents/experimental/streamlit/agent.cjs.map +1 -0
- package/dist/agents/experimental/streamlit/agent.d.cts +95 -0
- package/dist/agents/experimental/streamlit/agent.d.ts +95 -0
- package/dist/agents/experimental/streamlit/agent.js +159 -0
- package/dist/agents/experimental/streamlit/agent.js.map +1 -0
- package/dist/agents/experimental/streamlit/prompts.cjs +312 -0
- package/dist/agents/experimental/streamlit/prompts.cjs.map +1 -0
- package/dist/agents/experimental/streamlit/prompts.d.cts +30 -0
- package/dist/agents/experimental/streamlit/prompts.d.ts +30 -0
- package/dist/agents/experimental/streamlit/prompts.js +310 -0
- package/dist/agents/experimental/streamlit/prompts.js.map +1 -0
- package/dist/agents/types.cjs +4 -0
- package/dist/agents/types.cjs.map +1 -0
- package/dist/agents/types.d.cts +18 -0
- package/dist/agents/types.d.ts +18 -0
- package/dist/agents/types.js +3 -0
- package/dist/agents/types.js.map +1 -0
- package/dist/backend/backend.cjs +45 -0
- package/dist/backend/backend.cjs.map +1 -0
- package/dist/backend/backend.d.cts +56 -0
- package/dist/backend/backend.d.ts +56 -0
- package/dist/backend/backend.js +43 -0
- package/dist/backend/backend.js.map +1 -0
- package/dist/backend/chat.cjs +270 -0
- package/dist/backend/chat.cjs.map +1 -0
- package/dist/backend/chat.d.cts +141 -0
- package/dist/backend/chat.d.ts +141 -0
- package/dist/backend/chat.js +267 -0
- package/dist/backend/chat.js.map +1 -0
- package/dist/backend/client.cjs +40 -0
- package/dist/backend/client.cjs.map +1 -0
- package/dist/backend/client.d.cts +33 -0
- package/dist/backend/client.d.ts +33 -0
- package/dist/backend/client.js +38 -0
- package/dist/backend/client.js.map +1 -0
- package/dist/backend/constants.cjs +62 -0
- package/dist/backend/constants.cjs.map +1 -0
- package/dist/backend/constants.d.cts +62 -0
- package/dist/backend/constants.d.ts +62 -0
- package/dist/backend/constants.js +60 -0
- package/dist/backend/constants.js.map +1 -0
- package/dist/backend/core.cjs +42 -0
- package/dist/backend/core.cjs.map +1 -0
- package/dist/backend/core.d.cts +23 -0
- package/dist/backend/core.d.ts +23 -0
- package/dist/backend/core.js +7 -0
- package/dist/backend/core.js.map +1 -0
- package/dist/backend/embedding.cjs +70 -0
- package/dist/backend/embedding.cjs.map +1 -0
- package/dist/backend/embedding.d.cts +50 -0
- package/dist/backend/embedding.d.ts +50 -0
- package/dist/backend/embedding.js +68 -0
- package/dist/backend/embedding.js.map +1 -0
- package/dist/backend/errors.cjs +27 -0
- package/dist/backend/errors.cjs.map +1 -0
- package/dist/backend/errors.d.cts +28 -0
- package/dist/backend/errors.d.ts +28 -0
- package/dist/backend/errors.js +23 -0
- package/dist/backend/errors.js.map +1 -0
- package/dist/backend/message.cjs +201 -0
- package/dist/backend/message.cjs.map +1 -0
- package/dist/backend/message.d.cts +85 -0
- package/dist/backend/message.d.ts +85 -0
- package/dist/backend/message.js +193 -0
- package/dist/backend/message.js.map +1 -0
- package/dist/backend/utils.cjs +39 -0
- package/dist/backend/utils.cjs.map +1 -0
- package/dist/backend/utils.d.cts +29 -0
- package/dist/backend/utils.d.ts +29 -0
- package/dist/backend/utils.js +36 -0
- package/dist/backend/utils.js.map +1 -0
- package/dist/base-Csr9guq2.d.cts +66 -0
- package/dist/base-DHhpWHQm.d.ts +66 -0
- package/dist/cache/base.cjs +16 -0
- package/dist/cache/base.cjs.map +1 -0
- package/dist/cache/base.d.cts +31 -0
- package/dist/cache/base.d.ts +31 -0
- package/dist/cache/base.js +14 -0
- package/dist/cache/base.js.map +1 -0
- package/dist/cache/decoratorCache.cjs +289 -0
- package/dist/cache/decoratorCache.cjs.map +1 -0
- package/dist/cache/decoratorCache.d.cts +66 -0
- package/dist/cache/decoratorCache.d.ts +66 -0
- package/dist/cache/decoratorCache.js +259 -0
- package/dist/cache/decoratorCache.js.map +1 -0
- package/dist/cache/fileCache.cjs +121 -0
- package/dist/cache/fileCache.cjs.map +1 -0
- package/dist/cache/fileCache.d.cts +48 -0
- package/dist/cache/fileCache.d.ts +48 -0
- package/dist/cache/fileCache.js +115 -0
- package/dist/cache/fileCache.js.map +1 -0
- package/dist/cache/nullCache.cjs +40 -0
- package/dist/cache/nullCache.cjs.map +1 -0
- package/dist/cache/nullCache.d.cts +36 -0
- package/dist/cache/nullCache.d.ts +36 -0
- package/dist/cache/nullCache.js +38 -0
- package/dist/cache/nullCache.js.map +1 -0
- package/dist/cache/slidingCache.cjs +81 -0
- package/dist/cache/slidingCache.cjs.map +1 -0
- package/dist/cache/slidingCache.d.cts +53 -0
- package/dist/cache/slidingCache.d.ts +53 -0
- package/dist/cache/slidingCache.js +79 -0
- package/dist/cache/slidingCache.js.map +1 -0
- package/dist/cache/unconstrainedCache.cjs +46 -0
- package/dist/cache/unconstrainedCache.cjs.map +1 -0
- package/dist/cache/unconstrainedCache.d.cts +37 -0
- package/dist/cache/unconstrainedCache.d.ts +37 -0
- package/dist/cache/unconstrainedCache.js +44 -0
- package/dist/cache/unconstrainedCache.js.map +1 -0
- package/dist/context.cjs +162 -0
- package/dist/context.cjs.map +1 -0
- package/dist/context.d.cts +79 -0
- package/dist/context.d.ts +79 -0
- package/dist/context.js +159 -0
- package/dist/context.js.map +1 -0
- package/dist/emitter/emitter.cjs +222 -0
- package/dist/emitter/emitter.cjs.map +1 -0
- package/dist/emitter/emitter.d.cts +4 -0
- package/dist/emitter/emitter.d.ts +4 -0
- package/dist/emitter/emitter.js +220 -0
- package/dist/emitter/emitter.js.map +1 -0
- package/dist/emitter/errors.cjs +15 -0
- package/dist/emitter/errors.cjs.map +1 -0
- package/dist/emitter/errors.d.cts +24 -0
- package/dist/emitter/errors.d.ts +24 -0
- package/dist/emitter/errors.js +13 -0
- package/dist/emitter/errors.js.map +1 -0
- package/dist/emitter/types.cjs +4 -0
- package/dist/emitter/types.cjs.map +1 -0
- package/dist/emitter/types.d.cts +4 -0
- package/dist/emitter/types.d.ts +4 -0
- package/dist/emitter/types.js +3 -0
- package/dist/emitter/types.js.map +1 -0
- package/dist/emitter/utils.cjs +38 -0
- package/dist/emitter/utils.cjs.map +1 -0
- package/dist/emitter/utils.d.cts +21 -0
- package/dist/emitter/utils.d.ts +21 -0
- package/dist/emitter/utils.js +33 -0
- package/dist/emitter/utils.js.map +1 -0
- package/dist/emitter-BWtGHYn0.d.cts +121 -0
- package/dist/emitter-l0W9gC1A.d.ts +121 -0
- package/dist/errors.cjs +144 -0
- package/dist/errors.cjs.map +1 -0
- package/dist/errors.d.cts +50 -0
- package/dist/errors.d.ts +50 -0
- package/dist/errors.js +116 -0
- package/dist/errors.js.map +1 -0
- package/dist/index.cjs +49 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +23 -0
- package/dist/index.d.ts +23 -0
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -0
- package/dist/instrumentation/config.cjs +12 -0
- package/dist/instrumentation/config.cjs.map +1 -0
- package/dist/instrumentation/config.d.cts +19 -0
- package/dist/instrumentation/config.d.ts +19 -0
- package/dist/instrumentation/config.js +9 -0
- package/dist/instrumentation/config.js.map +1 -0
- package/dist/instrumentation/create-telemetry-middleware.cjs +239 -0
- package/dist/instrumentation/create-telemetry-middleware.cjs.map +1 -0
- package/dist/instrumentation/create-telemetry-middleware.d.cts +26 -0
- package/dist/instrumentation/create-telemetry-middleware.d.ts +26 -0
- package/dist/instrumentation/create-telemetry-middleware.js +237 -0
- package/dist/instrumentation/create-telemetry-middleware.js.map +1 -0
- package/dist/instrumentation/helpers/create-span.cjs +36 -0
- package/dist/instrumentation/helpers/create-span.cjs.map +1 -0
- package/dist/instrumentation/helpers/create-span.d.cts +34 -0
- package/dist/instrumentation/helpers/create-span.d.ts +34 -0
- package/dist/instrumentation/helpers/create-span.js +34 -0
- package/dist/instrumentation/helpers/create-span.js.map +1 -0
- package/dist/instrumentation/helpers/get-error-safe.cjs +20 -0
- package/dist/instrumentation/helpers/get-error-safe.cjs.map +1 -0
- package/dist/instrumentation/helpers/get-error-safe.d.cts +18 -0
- package/dist/instrumentation/helpers/get-error-safe.d.ts +18 -0
- package/dist/instrumentation/helpers/get-error-safe.js +18 -0
- package/dist/instrumentation/helpers/get-error-safe.js.map +1 -0
- package/dist/instrumentation/helpers/get-serialized-object-safe.cjs +27 -0
- package/dist/instrumentation/helpers/get-serialized-object-safe.cjs.map +1 -0
- package/dist/instrumentation/helpers/get-serialized-object-safe.d.cts +18 -0
- package/dist/instrumentation/helpers/get-serialized-object-safe.d.ts +18 -0
- package/dist/instrumentation/helpers/get-serialized-object-safe.js +25 -0
- package/dist/instrumentation/helpers/get-serialized-object-safe.js.map +1 -0
- package/dist/instrumentation/helpers/id-name-manager.cjs +34 -0
- package/dist/instrumentation/helpers/id-name-manager.cjs.map +1 -0
- package/dist/instrumentation/helpers/id-name-manager.d.cts +31 -0
- package/dist/instrumentation/helpers/id-name-manager.d.ts +31 -0
- package/dist/instrumentation/helpers/id-name-manager.js +32 -0
- package/dist/instrumentation/helpers/id-name-manager.js.map +1 -0
- package/dist/instrumentation/helpers/trace-serializer.cjs +30 -0
- package/dist/instrumentation/helpers/trace-serializer.cjs.map +1 -0
- package/dist/instrumentation/helpers/trace-serializer.d.cts +20 -0
- package/dist/instrumentation/helpers/trace-serializer.d.ts +20 -0
- package/dist/instrumentation/helpers/trace-serializer.js +28 -0
- package/dist/instrumentation/helpers/trace-serializer.js.map +1 -0
- package/dist/instrumentation/helpers/utils.cjs +14 -0
- package/dist/instrumentation/helpers/utils.cjs.map +1 -0
- package/dist/instrumentation/helpers/utils.d.cts +40 -0
- package/dist/instrumentation/helpers/utils.d.ts +40 -0
- package/dist/instrumentation/helpers/utils.js +12 -0
- package/dist/instrumentation/helpers/utils.js.map +1 -0
- package/dist/instrumentation/logger.cjs +12 -0
- package/dist/instrumentation/logger.cjs.map +1 -0
- package/dist/instrumentation/logger.d.cts +26 -0
- package/dist/instrumentation/logger.d.ts +26 -0
- package/dist/instrumentation/logger.js +10 -0
- package/dist/instrumentation/logger.js.map +1 -0
- package/dist/instrumentation/tracer.cjs +84 -0
- package/dist/instrumentation/tracer.cjs.map +1 -0
- package/dist/instrumentation/tracer.d.cts +36 -0
- package/dist/instrumentation/tracer.d.ts +36 -0
- package/dist/instrumentation/tracer.js +76 -0
- package/dist/instrumentation/tracer.js.map +1 -0
- package/dist/instrumentation/types.cjs +4 -0
- package/dist/instrumentation/types.cjs.map +1 -0
- package/dist/instrumentation/types.d.cts +39 -0
- package/dist/instrumentation/types.d.ts +39 -0
- package/dist/instrumentation/types.js +3 -0
- package/dist/instrumentation/types.js.map +1 -0
- package/dist/internals/env.cjs +43 -0
- package/dist/internals/env.cjs.map +1 -0
- package/dist/internals/env.d.cts +27 -0
- package/dist/internals/env.d.ts +27 -0
- package/dist/internals/env.js +39 -0
- package/dist/internals/env.js.map +1 -0
- package/dist/internals/fetcher.cjs +189 -0
- package/dist/internals/fetcher.cjs.map +1 -0
- package/dist/internals/fetcher.d.cts +101 -0
- package/dist/internals/fetcher.d.ts +101 -0
- package/dist/internals/fetcher.js +185 -0
- package/dist/internals/fetcher.js.map +1 -0
- package/dist/internals/helpers/array.cjs +30 -0
- package/dist/internals/helpers/array.cjs.map +1 -0
- package/dist/internals/helpers/array.d.cts +21 -0
- package/dist/internals/helpers/array.d.ts +21 -0
- package/dist/internals/helpers/array.js +26 -0
- package/dist/internals/helpers/array.js.map +1 -0
- package/dist/internals/helpers/cancellation.cjs +29 -0
- package/dist/internals/helpers/cancellation.cjs.map +1 -0
- package/dist/internals/helpers/cancellation.d.cts +19 -0
- package/dist/internals/helpers/cancellation.d.ts +19 -0
- package/dist/internals/helpers/cancellation.js +26 -0
- package/dist/internals/helpers/cancellation.js.map +1 -0
- package/dist/internals/helpers/counter.cjs +53 -0
- package/dist/internals/helpers/counter.cjs.map +1 -0
- package/dist/internals/helpers/counter.d.cts +40 -0
- package/dist/internals/helpers/counter.d.ts +40 -0
- package/dist/internals/helpers/counter.js +51 -0
- package/dist/internals/helpers/counter.js.map +1 -0
- package/dist/internals/helpers/general.cjs +31 -0
- package/dist/internals/helpers/general.cjs.map +1 -0
- package/dist/internals/helpers/general.d.cts +25 -0
- package/dist/internals/helpers/general.d.ts +25 -0
- package/dist/internals/helpers/general.js +28 -0
- package/dist/internals/helpers/general.js.map +1 -0
- package/dist/internals/helpers/guards.cjs +34 -0
- package/dist/internals/helpers/guards.cjs.map +1 -0
- package/dist/internals/helpers/guards.d.cts +19 -0
- package/dist/internals/helpers/guards.d.ts +19 -0
- package/dist/internals/helpers/guards.js +12 -0
- package/dist/internals/helpers/guards.js.map +1 -0
- package/dist/internals/helpers/hash.cjs +21 -0
- package/dist/internals/helpers/hash.cjs.map +1 -0
- package/dist/internals/helpers/hash.d.cts +19 -0
- package/dist/internals/helpers/hash.d.ts +19 -0
- package/dist/internals/helpers/hash.js +18 -0
- package/dist/internals/helpers/hash.js.map +1 -0
- package/dist/internals/helpers/map.cjs +16 -0
- package/dist/internals/helpers/map.cjs.map +1 -0
- package/dist/internals/helpers/map.d.cts +18 -0
- package/dist/internals/helpers/map.d.ts +18 -0
- package/dist/internals/helpers/map.js +14 -0
- package/dist/internals/helpers/map.js.map +1 -0
- package/dist/internals/helpers/math.cjs +31 -0
- package/dist/internals/helpers/math.cjs.map +1 -0
- package/dist/internals/helpers/math.d.cts +19 -0
- package/dist/internals/helpers/math.d.ts +19 -0
- package/dist/internals/helpers/math.js +28 -0
- package/dist/internals/helpers/math.js.map +1 -0
- package/dist/internals/helpers/number.cjs +48 -0
- package/dist/internals/helpers/number.cjs.map +1 -0
- package/dist/internals/helpers/number.d.cts +23 -0
- package/dist/internals/helpers/number.d.ts +23 -0
- package/dist/internals/helpers/number.js +24 -0
- package/dist/internals/helpers/number.js.map +1 -0
- package/dist/internals/helpers/object.cjs +142 -0
- package/dist/internals/helpers/object.cjs.map +1 -0
- package/dist/internals/helpers/object.d.cts +35 -0
- package/dist/internals/helpers/object.d.ts +35 -0
- package/dist/internals/helpers/object.js +108 -0
- package/dist/internals/helpers/object.js.map +1 -0
- package/dist/internals/helpers/paginate.cjs +28 -0
- package/dist/internals/helpers/paginate.cjs.map +1 -0
- package/dist/internals/helpers/paginate.d.cts +28 -0
- package/dist/internals/helpers/paginate.d.ts +28 -0
- package/dist/internals/helpers/paginate.js +26 -0
- package/dist/internals/helpers/paginate.js.map +1 -0
- package/dist/internals/helpers/promise.cjs +143 -0
- package/dist/internals/helpers/promise.cjs.map +1 -0
- package/dist/internals/helpers/promise.d.cts +45 -0
- package/dist/internals/helpers/promise.d.ts +45 -0
- package/dist/internals/helpers/promise.js +132 -0
- package/dist/internals/helpers/promise.js.map +1 -0
- package/dist/internals/helpers/prototype.cjs +56 -0
- package/dist/internals/helpers/prototype.cjs.map +1 -0
- package/dist/internals/helpers/prototype.d.cts +24 -0
- package/dist/internals/helpers/prototype.d.ts +24 -0
- package/dist/internals/helpers/prototype.js +32 -0
- package/dist/internals/helpers/prototype.js.map +1 -0
- package/dist/internals/helpers/retry.cjs +44 -0
- package/dist/internals/helpers/retry.cjs.map +1 -0
- package/dist/internals/helpers/retry.d.cts +29 -0
- package/dist/internals/helpers/retry.d.ts +29 -0
- package/dist/internals/helpers/retry.js +42 -0
- package/dist/internals/helpers/retry.js.map +1 -0
- package/dist/internals/helpers/retryable.cjs +169 -0
- package/dist/internals/helpers/retryable.cjs.map +1 -0
- package/dist/internals/helpers/retryable.d.cts +71 -0
- package/dist/internals/helpers/retryable.d.ts +71 -0
- package/dist/internals/helpers/retryable.js +146 -0
- package/dist/internals/helpers/retryable.js.map +1 -0
- package/dist/internals/helpers/schema.cjs +78 -0
- package/dist/internals/helpers/schema.cjs.map +1 -0
- package/dist/internals/helpers/schema.d.cts +36 -0
- package/dist/internals/helpers/schema.d.ts +36 -0
- package/dist/internals/helpers/schema.js +69 -0
- package/dist/internals/helpers/schema.js.map +1 -0
- package/dist/internals/helpers/stream.cjs +21 -0
- package/dist/internals/helpers/stream.cjs.map +1 -0
- package/dist/internals/helpers/stream.d.cts +19 -0
- package/dist/internals/helpers/stream.d.ts +19 -0
- package/dist/internals/helpers/stream.js +18 -0
- package/dist/internals/helpers/stream.js.map +1 -0
- package/dist/internals/helpers/string.cjs +230 -0
- package/dist/internals/helpers/string.cjs.map +1 -0
- package/dist/internals/helpers/string.d.cts +57 -0
- package/dist/internals/helpers/string.d.ts +57 -0
- package/dist/internals/helpers/string.js +201 -0
- package/dist/internals/helpers/string.js.map +1 -0
- package/dist/internals/helpers/weakRef.cjs +65 -0
- package/dist/internals/helpers/weakRef.cjs.map +1 -0
- package/dist/internals/helpers/weakRef.d.cts +29 -0
- package/dist/internals/helpers/weakRef.d.ts +29 -0
- package/dist/internals/helpers/weakRef.js +61 -0
- package/dist/internals/helpers/weakRef.js.map +1 -0
- package/dist/internals/serializable.cjs +63 -0
- package/dist/internals/serializable.cjs.map +1 -0
- package/dist/internals/serializable.d.cts +36 -0
- package/dist/internals/serializable.d.ts +36 -0
- package/dist/internals/serializable.js +61 -0
- package/dist/internals/serializable.js.map +1 -0
- package/dist/internals/types.cjs +15 -0
- package/dist/internals/types.cjs.map +1 -0
- package/dist/internals/types.d.cts +92 -0
- package/dist/internals/types.d.ts +92 -0
- package/dist/internals/types.js +13 -0
- package/dist/internals/types.js.map +1 -0
- package/dist/logger/logger.cjs +210 -0
- package/dist/logger/logger.cjs.map +1 -0
- package/dist/logger/logger.d.cts +48 -0
- package/dist/logger/logger.d.ts +48 -0
- package/dist/logger/logger.js +181 -0
- package/dist/logger/logger.js.map +1 -0
- package/dist/logger/pretty.cjs +79 -0
- package/dist/logger/pretty.cjs.map +1 -0
- package/dist/logger/pretty.d.cts +5 -0
- package/dist/logger/pretty.d.ts +5 -0
- package/dist/logger/pretty.js +72 -0
- package/dist/logger/pretty.js.map +1 -0
- package/dist/memory/base.cjs +98 -0
- package/dist/memory/base.cjs.map +1 -0
- package/dist/memory/base.d.cts +44 -0
- package/dist/memory/base.d.ts +44 -0
- package/dist/memory/base.js +93 -0
- package/dist/memory/base.js.map +1 -0
- package/dist/memory/slidingMemory.cjs +79 -0
- package/dist/memory/slidingMemory.cjs.map +1 -0
- package/dist/memory/slidingMemory.d.cts +30 -0
- package/dist/memory/slidingMemory.d.ts +30 -0
- package/dist/memory/slidingMemory.js +77 -0
- package/dist/memory/slidingMemory.js.map +1 -0
- package/dist/memory/summarizeMemory.cjs +82 -0
- package/dist/memory/summarizeMemory.cjs.map +1 -0
- package/dist/memory/summarizeMemory.d.cts +65 -0
- package/dist/memory/summarizeMemory.d.ts +65 -0
- package/dist/memory/summarizeMemory.js +79 -0
- package/dist/memory/summarizeMemory.js.map +1 -0
- package/dist/memory/tokenMemory.cjs +154 -0
- package/dist/memory/tokenMemory.cjs.map +1 -0
- package/dist/memory/tokenMemory.d.cts +55 -0
- package/dist/memory/tokenMemory.d.ts +55 -0
- package/dist/memory/tokenMemory.js +133 -0
- package/dist/memory/tokenMemory.js.map +1 -0
- package/dist/memory/unconstrainedMemory.cjs +43 -0
- package/dist/memory/unconstrainedMemory.cjs.map +1 -0
- package/dist/memory/unconstrainedMemory.d.cts +20 -0
- package/dist/memory/unconstrainedMemory.d.ts +20 -0
- package/dist/memory/unconstrainedMemory.js +41 -0
- package/dist/memory/unconstrainedMemory.js.map +1 -0
- package/dist/parsers/errors.cjs +32 -0
- package/dist/parsers/errors.cjs.map +1 -0
- package/dist/parsers/errors.d.cts +46 -0
- package/dist/parsers/errors.d.ts +46 -0
- package/dist/parsers/errors.js +30 -0
- package/dist/parsers/errors.js.map +1 -0
- package/dist/parsers/field.cjs +192 -0
- package/dist/parsers/field.cjs.map +1 -0
- package/dist/parsers/field.d.cts +68 -0
- package/dist/parsers/field.d.ts +68 -0
- package/dist/parsers/field.js +188 -0
- package/dist/parsers/field.js.map +1 -0
- package/dist/parsers/linePrefix.cjs +312 -0
- package/dist/parsers/linePrefix.cjs.map +1 -0
- package/dist/parsers/linePrefix.d.cts +127 -0
- package/dist/parsers/linePrefix.d.ts +127 -0
- package/dist/parsers/linePrefix.js +305 -0
- package/dist/parsers/linePrefix.js.map +1 -0
- package/dist/serializer/error.cjs +21 -0
- package/dist/serializer/error.cjs.map +1 -0
- package/dist/serializer/error.d.cts +25 -0
- package/dist/serializer/error.d.ts +25 -0
- package/dist/serializer/error.js +19 -0
- package/dist/serializer/error.js.map +1 -0
- package/dist/serializer/serializer.cjs +543 -0
- package/dist/serializer/serializer.cjs.map +1 -0
- package/dist/serializer/serializer.d.cts +4 -0
- package/dist/serializer/serializer.d.ts +4 -0
- package/dist/serializer/serializer.js +521 -0
- package/dist/serializer/serializer.js.map +1 -0
- package/dist/serializer/utils.cjs +261 -0
- package/dist/serializer/utils.cjs.map +1 -0
- package/dist/serializer/utils.d.cts +4 -0
- package/dist/serializer/utils.d.ts +4 -0
- package/dist/serializer/utils.js +226 -0
- package/dist/serializer/utils.js.map +1 -0
- package/dist/serializer-CJx5ZpUx.d.cts +125 -0
- package/dist/serializer-VYDhdryk.d.ts +125 -0
- package/dist/template.cjs +121 -0
- package/dist/template.cjs.map +1 -0
- package/dist/template.d.cts +75 -0
- package/dist/template.d.ts +75 -0
- package/dist/template.js +113 -0
- package/dist/template.js.map +1 -0
- package/dist/tools/arxiv.cjs +212 -0
- package/dist/tools/arxiv.cjs.map +1 -0
- package/dist/tools/arxiv.d.cts +196 -0
- package/dist/tools/arxiv.d.ts +196 -0
- package/dist/tools/arxiv.js +205 -0
- package/dist/tools/arxiv.js.map +1 -0
- package/dist/tools/base.cjs +434 -0
- package/dist/tools/base.cjs.map +1 -0
- package/dist/tools/base.d.cts +156 -0
- package/dist/tools/base.d.ts +156 -0
- package/dist/tools/base.js +407 -0
- package/dist/tools/base.js.map +1 -0
- package/dist/tools/calculator.cjs +74 -0
- package/dist/tools/calculator.cjs.map +1 -0
- package/dist/tools/calculator.d.cts +63 -0
- package/dist/tools/calculator.d.ts +63 -0
- package/dist/tools/calculator.js +72 -0
- package/dist/tools/calculator.js.map +1 -0
- package/dist/tools/custom.cjs +122 -0
- package/dist/tools/custom.cjs.map +1 -0
- package/dist/tools/custom.d.cts +110 -0
- package/dist/tools/custom.d.ts +110 -0
- package/dist/tools/custom.js +118 -0
- package/dist/tools/custom.js.map +1 -0
- package/dist/tools/database/elasticsearch.cjs +157 -0
- package/dist/tools/database/elasticsearch.cjs.map +1 -0
- package/dist/tools/database/elasticsearch.d.cts +78 -0
- package/dist/tools/database/elasticsearch.d.ts +78 -0
- package/dist/tools/database/elasticsearch.js +154 -0
- package/dist/tools/database/elasticsearch.js.map +1 -0
- package/dist/tools/database/metadata.cjs +114 -0
- package/dist/tools/database/metadata.cjs.map +1 -0
- package/dist/tools/database/metadata.d.cts +27 -0
- package/dist/tools/database/metadata.d.ts +27 -0
- package/dist/tools/database/metadata.js +112 -0
- package/dist/tools/database/metadata.js.map +1 -0
- package/dist/tools/database/milvus.cjs +191 -0
- package/dist/tools/database/milvus.cjs.map +1 -0
- package/dist/tools/database/milvus.d.cts +89 -0
- package/dist/tools/database/milvus.d.ts +89 -0
- package/dist/tools/database/milvus.js +188 -0
- package/dist/tools/database/milvus.js.map +1 -0
- package/dist/tools/database/sql.cjs +174 -0
- package/dist/tools/database/sql.cjs.map +1 -0
- package/dist/tools/database/sql.d.cts +71 -0
- package/dist/tools/database/sql.d.ts +71 -0
- package/dist/tools/database/sql.js +170 -0
- package/dist/tools/database/sql.js.map +1 -0
- package/dist/tools/llm.cjs +74 -0
- package/dist/tools/llm.cjs.map +1 -0
- package/dist/tools/llm.d.cts +68 -0
- package/dist/tools/llm.d.ts +68 -0
- package/dist/tools/llm.js +72 -0
- package/dist/tools/llm.js.map +1 -0
- package/dist/tools/mcp.cjs +73 -0
- package/dist/tools/mcp.cjs.map +1 -0
- package/dist/tools/mcp.d.cts +52 -0
- package/dist/tools/mcp.d.ts +52 -0
- package/dist/tools/mcp.js +70 -0
- package/dist/tools/mcp.js.map +1 -0
- package/dist/tools/openapi.cjs +178 -0
- package/dist/tools/openapi.cjs.map +1 -0
- package/dist/tools/openapi.d.cts +59 -0
- package/dist/tools/openapi.d.ts +59 -0
- package/dist/tools/openapi.js +175 -0
- package/dist/tools/openapi.js.map +1 -0
- package/dist/tools/python/output.cjs +65 -0
- package/dist/tools/python/output.cjs.map +1 -0
- package/dist/tools/python/output.d.cts +52 -0
- package/dist/tools/python/output.d.ts +52 -0
- package/dist/tools/python/output.js +63 -0
- package/dist/tools/python/output.js.map +1 -0
- package/dist/tools/python/python.cjs +163 -0
- package/dist/tools/python/python.cjs.map +1 -0
- package/dist/tools/python/python.d.cts +91 -0
- package/dist/tools/python/python.d.ts +91 -0
- package/dist/tools/python/python.js +160 -0
- package/dist/tools/python/python.js.map +1 -0
- package/dist/tools/python/storage.cjs +170 -0
- package/dist/tools/python/storage.cjs.map +1 -0
- package/dist/tools/python/storage.d.cts +83 -0
- package/dist/tools/python/storage.d.ts +83 -0
- package/dist/tools/python/storage.js +142 -0
- package/dist/tools/python/storage.js.map +1 -0
- package/dist/tools/search/base.cjs +77 -0
- package/dist/tools/search/base.cjs.map +1 -0
- package/dist/tools/search/base.d.cts +49 -0
- package/dist/tools/search/base.d.ts +49 -0
- package/dist/tools/search/base.js +55 -0
- package/dist/tools/search/base.js.map +1 -0
- package/dist/tools/search/duckDuckGoSearch.cjs +146 -0
- package/dist/tools/search/duckDuckGoSearch.cjs.map +1 -0
- package/dist/tools/search/duckDuckGoSearch.d.cts +75 -0
- package/dist/tools/search/duckDuckGoSearch.d.ts +75 -0
- package/dist/tools/search/duckDuckGoSearch.js +136 -0
- package/dist/tools/search/duckDuckGoSearch.js.map +1 -0
- package/dist/tools/search/googleSearch.cjs +155 -0
- package/dist/tools/search/googleSearch.cjs.map +1 -0
- package/dist/tools/search/googleSearch.d.cts +62 -0
- package/dist/tools/search/googleSearch.d.ts +62 -0
- package/dist/tools/search/googleSearch.js +152 -0
- package/dist/tools/search/googleSearch.js.map +1 -0
- package/dist/tools/search/searXNGSearch.cjs +86 -0
- package/dist/tools/search/searXNGSearch.cjs.map +1 -0
- package/dist/tools/search/searXNGSearch.d.cts +61 -0
- package/dist/tools/search/searXNGSearch.d.ts +61 -0
- package/dist/tools/search/searXNGSearch.js +83 -0
- package/dist/tools/search/searXNGSearch.js.map +1 -0
- package/dist/tools/search/wikipedia.cjs +338 -0
- package/dist/tools/search/wikipedia.cjs.map +1 -0
- package/dist/tools/search/wikipedia.d.cts +108 -0
- package/dist/tools/search/wikipedia.d.ts +108 -0
- package/dist/tools/search/wikipedia.js +310 -0
- package/dist/tools/search/wikipedia.js.map +1 -0
- package/dist/tools/similarity.cjs +61 -0
- package/dist/tools/similarity.cjs.map +1 -0
- package/dist/tools/similarity.d.cts +90 -0
- package/dist/tools/similarity.d.ts +90 -0
- package/dist/tools/similarity.js +58 -0
- package/dist/tools/similarity.js.map +1 -0
- package/dist/tools/weather/openMeteo.cjs +221 -0
- package/dist/tools/weather/openMeteo.cjs.map +1 -0
- package/dist/tools/weather/openMeteo.d.cts +123 -0
- package/dist/tools/weather/openMeteo.d.ts +123 -0
- package/dist/tools/weather/openMeteo.js +218 -0
- package/dist/tools/weather/openMeteo.js.map +1 -0
- package/dist/tools/web/webCrawler.cjs +111 -0
- package/dist/tools/web/webCrawler.cjs.map +1 -0
- package/dist/tools/web/webCrawler.d.cts +66 -0
- package/dist/tools/web/webCrawler.d.ts +66 -0
- package/dist/tools/web/webCrawler.js +108 -0
- package/dist/tools/web/webCrawler.js.map +1 -0
- package/dist/version.cjs +9 -0
- package/dist/version.cjs.map +1 -0
- package/dist/version.d.cts +18 -0
- package/dist/version.d.ts +18 -0
- package/dist/version.js +9 -0
- package/dist/version.js.map +1 -0
- package/dist/workflows/agent.cjs +95 -0
- package/dist/workflows/agent.cjs.map +1 -0
- package/dist/workflows/agent.d.cts +166 -0
- package/dist/workflows/agent.d.ts +166 -0
- package/dist/workflows/agent.js +93 -0
- package/dist/workflows/agent.js.map +1 -0
- package/dist/workflows/workflow.cjs +222 -0
- package/dist/workflows/workflow.cjs.map +1 -0
- package/dist/workflows/workflow.d.cts +118 -0
- package/dist/workflows/workflow.d.ts +118 -0
- package/dist/workflows/workflow.js +219 -0
- package/dist/workflows/workflow.js.map +1 -0
- package/package.json +339 -0
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var zod = require('zod');
|
|
4
|
+
var serializable_cjs = require('../internals/serializable.cjs');
|
|
5
|
+
var emitter_cjs = require('../emitter/emitter.cjs');
|
|
6
|
+
var context_cjs = require('../context.cjs');
|
|
7
|
+
var remeda = require('remeda');
|
|
8
|
+
var utils_cjs = require('../serializer/utils.cjs');
|
|
9
|
+
var errors_cjs = require('../errors.cjs');
|
|
10
|
+
|
|
11
|
+
var __defProp = Object.defineProperty;
|
|
12
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
13
|
+
class WorkflowError extends errors_cjs.FrameworkError {
|
|
14
|
+
static {
|
|
15
|
+
__name(this, "WorkflowError");
|
|
16
|
+
}
|
|
17
|
+
constructor(message, extra) {
|
|
18
|
+
super(message, extra?.errors, {
|
|
19
|
+
context: extra?.run ?? {},
|
|
20
|
+
isRetryable: false,
|
|
21
|
+
isFatal: true
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
class Workflow extends serializable_cjs.Serializable {
|
|
26
|
+
static {
|
|
27
|
+
__name(this, "Workflow");
|
|
28
|
+
}
|
|
29
|
+
input;
|
|
30
|
+
static START = "__start__";
|
|
31
|
+
static SELF = "__self__";
|
|
32
|
+
static PREV = "__prev__";
|
|
33
|
+
static NEXT = "__next__";
|
|
34
|
+
static END = "__end__";
|
|
35
|
+
emitter;
|
|
36
|
+
steps;
|
|
37
|
+
startStep;
|
|
38
|
+
constructor(input) {
|
|
39
|
+
super(), this.input = input, this.steps = /* @__PURE__ */ new Map(), this.startStep = void 0;
|
|
40
|
+
this.emitter = emitter_cjs.Emitter.root.child({
|
|
41
|
+
namespace: [
|
|
42
|
+
"workflow",
|
|
43
|
+
remeda.toCamelCase(input?.name ?? "")
|
|
44
|
+
].filter(Boolean),
|
|
45
|
+
creator: this
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
getSteps() {
|
|
49
|
+
return Array.from(this.steps.keys());
|
|
50
|
+
}
|
|
51
|
+
get name() {
|
|
52
|
+
return this.input.name ?? "";
|
|
53
|
+
}
|
|
54
|
+
get schemas() {
|
|
55
|
+
return remeda.pick(this.input, [
|
|
56
|
+
"schema",
|
|
57
|
+
"outputSchema"
|
|
58
|
+
]);
|
|
59
|
+
}
|
|
60
|
+
addStep(name, step) {
|
|
61
|
+
return this._addStep(name, step);
|
|
62
|
+
}
|
|
63
|
+
addStrictStep(name, schema, step) {
|
|
64
|
+
return this._addStep(name, schema, step);
|
|
65
|
+
}
|
|
66
|
+
_addStep(name, schemaOrStep, stepOrEmpty) {
|
|
67
|
+
if (!name.trim()) {
|
|
68
|
+
throw new errors_cjs.ValueError(`Step name cannot be empty!`);
|
|
69
|
+
}
|
|
70
|
+
if (this.steps.has(name)) {
|
|
71
|
+
throw new errors_cjs.ValueError(`Step '${name}' already exists!`);
|
|
72
|
+
}
|
|
73
|
+
if (name === Workflow.END) {
|
|
74
|
+
throw new errors_cjs.ValueError(`The name '${name}' cannot be used!`);
|
|
75
|
+
}
|
|
76
|
+
const schema = schemaOrStep && stepOrEmpty ? schemaOrStep : this.input.schema;
|
|
77
|
+
const stepOrFlow = stepOrEmpty || schemaOrStep;
|
|
78
|
+
this.steps.set(name, {
|
|
79
|
+
schema,
|
|
80
|
+
handler: stepOrFlow instanceof Workflow ? stepOrFlow.asStep({}) : stepOrFlow
|
|
81
|
+
});
|
|
82
|
+
return this;
|
|
83
|
+
}
|
|
84
|
+
setStart(name) {
|
|
85
|
+
this.startStep = name;
|
|
86
|
+
return this;
|
|
87
|
+
}
|
|
88
|
+
run(state, options = {}) {
|
|
89
|
+
return context_cjs.RunContext.enter(this, {
|
|
90
|
+
signal: options?.signal,
|
|
91
|
+
params: [
|
|
92
|
+
state,
|
|
93
|
+
options
|
|
94
|
+
]
|
|
95
|
+
}, async (runContext) => {
|
|
96
|
+
const run = {
|
|
97
|
+
steps: [],
|
|
98
|
+
state: this.input.schema.parse(state),
|
|
99
|
+
result: void 0
|
|
100
|
+
};
|
|
101
|
+
const handlers = {
|
|
102
|
+
steps: run.steps,
|
|
103
|
+
signal: runContext.signal,
|
|
104
|
+
abort: /* @__PURE__ */ __name((reason) => runContext.abort(reason), "abort")
|
|
105
|
+
};
|
|
106
|
+
let next = this.findStep(options?.start || this.startStep || this.getSteps()[0]).current ?? Workflow.END;
|
|
107
|
+
while (next && next !== Workflow.END) {
|
|
108
|
+
const name = next;
|
|
109
|
+
const step = this.steps.get(next);
|
|
110
|
+
if (!step) {
|
|
111
|
+
throw new WorkflowError(`Step '${next}' was not found.`, {
|
|
112
|
+
run
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
await runContext.emitter.emit("start", {
|
|
116
|
+
run,
|
|
117
|
+
step: next
|
|
118
|
+
});
|
|
119
|
+
try {
|
|
120
|
+
const state2 = await step.schema.parseAsync(run.state).catch(async (err) => {
|
|
121
|
+
throw new WorkflowError(`Step '${next}' cannot be executed because the provided input doesn't adhere to the step's schema.`, {
|
|
122
|
+
run: utils_cjs.shallowCopy(run),
|
|
123
|
+
errors: [
|
|
124
|
+
err
|
|
125
|
+
]
|
|
126
|
+
});
|
|
127
|
+
}).then(utils_cjs.deepCopy);
|
|
128
|
+
const nextStepRaw = await step.handler(state2, handlers);
|
|
129
|
+
if (nextStepRaw === Workflow.START) {
|
|
130
|
+
next = run.steps.at(0)?.name;
|
|
131
|
+
} else if (nextStepRaw === Workflow.PREV) {
|
|
132
|
+
next = run.steps.at(-2)?.name;
|
|
133
|
+
} else if (nextStepRaw === Workflow.SELF) {
|
|
134
|
+
next = run.steps.at(-1)?.name;
|
|
135
|
+
} else if (!nextStepRaw || nextStepRaw === Workflow.NEXT) {
|
|
136
|
+
next = this.findStep(next).next || Workflow.END;
|
|
137
|
+
} else {
|
|
138
|
+
next = nextStepRaw;
|
|
139
|
+
}
|
|
140
|
+
const stepResult = {
|
|
141
|
+
name,
|
|
142
|
+
state: state2,
|
|
143
|
+
next
|
|
144
|
+
};
|
|
145
|
+
run.steps.push(stepResult);
|
|
146
|
+
run.state = stepResult.state;
|
|
147
|
+
await runContext.emitter.emit("success", {
|
|
148
|
+
run: utils_cjs.shallowCopy(run),
|
|
149
|
+
state: stepResult.state,
|
|
150
|
+
step: stepResult.name,
|
|
151
|
+
next: stepResult.next
|
|
152
|
+
});
|
|
153
|
+
} catch (error) {
|
|
154
|
+
await runContext.emitter.emit("error", {
|
|
155
|
+
run: utils_cjs.shallowCopy(run),
|
|
156
|
+
step: next,
|
|
157
|
+
error
|
|
158
|
+
});
|
|
159
|
+
throw error;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
run.result = await (this.input.outputSchema ?? this.input.schema).parseAsync(run.state).catch((err) => {
|
|
163
|
+
throw new WorkflowError(`Workflow has ended but it's state does not adhere to the workflow's output schema.`, {
|
|
164
|
+
run: utils_cjs.shallowCopy(run),
|
|
165
|
+
errors: [
|
|
166
|
+
err
|
|
167
|
+
]
|
|
168
|
+
});
|
|
169
|
+
});
|
|
170
|
+
return run;
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
delStep(name) {
|
|
174
|
+
if (this.startStep === name) {
|
|
175
|
+
this.startStep = void 0;
|
|
176
|
+
}
|
|
177
|
+
this.steps.delete(name);
|
|
178
|
+
return this;
|
|
179
|
+
}
|
|
180
|
+
asStep(overrides) {
|
|
181
|
+
return async (state, ctx) => {
|
|
182
|
+
const mappedInput = overrides?.input ? overrides.input(state) : state;
|
|
183
|
+
const result = await this.run(mappedInput, {
|
|
184
|
+
start: overrides?.start,
|
|
185
|
+
signal: ctx.signal
|
|
186
|
+
});
|
|
187
|
+
const mappedOutput = overrides?.output ? overrides.output(result.state) : result.state;
|
|
188
|
+
Object.assign(state, mappedOutput);
|
|
189
|
+
return overrides.next;
|
|
190
|
+
};
|
|
191
|
+
}
|
|
192
|
+
findStep(current) {
|
|
193
|
+
const steps = this.getSteps();
|
|
194
|
+
const index = steps.indexOf(current);
|
|
195
|
+
return {
|
|
196
|
+
prev: steps[index - 1],
|
|
197
|
+
current: steps[index],
|
|
198
|
+
next: steps[index + 1]
|
|
199
|
+
};
|
|
200
|
+
}
|
|
201
|
+
createSnapshot() {
|
|
202
|
+
return {
|
|
203
|
+
input: remeda.omit(this.input, [
|
|
204
|
+
"schema",
|
|
205
|
+
"outputSchema"
|
|
206
|
+
]),
|
|
207
|
+
emitter: this.emitter,
|
|
208
|
+
startStep: this.startStep,
|
|
209
|
+
steps: this.steps
|
|
210
|
+
};
|
|
211
|
+
}
|
|
212
|
+
loadSnapshot(snapshot) {
|
|
213
|
+
Object.assign(this, snapshot);
|
|
214
|
+
this.input.schema ??= zod.z.any();
|
|
215
|
+
this.input.outputSchema ??= zod.z.any();
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
exports.Workflow = Workflow;
|
|
220
|
+
exports.WorkflowError = WorkflowError;
|
|
221
|
+
//# sourceMappingURL=workflow.cjs.map
|
|
222
|
+
//# sourceMappingURL=workflow.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/workflows/workflow.ts"],"names":["WorkflowError","FrameworkError","constructor","message","extra","errors","context","run","isRetryable","isFatal","Workflow","Serializable","START","SELF","PREV","NEXT","END","emitter","steps","startStep","input","Map","undefined","Emitter","root","child","namespace","toCamelCase","name","filter","Boolean","creator","getSteps","Array","from","keys","schemas","pick","addStep","step","_addStep","addStrictStep","schema","schemaOrStep","stepOrEmpty","trim","ValueError","has","stepOrFlow","set","handler","asStep","setStart","state","options","RunContext","enter","signal","params","runContext","parse","result","handlers","abort","reason","next","findStep","start","current","get","emit","parseAsync","catch","err","shallowCopy","then","deepCopy","nextStepRaw","at","stepResult","push","error","outputSchema","delStep","delete","overrides","ctx","mappedInput","mappedOutput","output","Object","assign","index","indexOf","prev","createSnapshot","omit","loadSnapshot","snapshot","z","any"],"mappings":";;;;;;;;;;;;AA0FO,MAAMA,sBAIHC,yBAAAA,CAAAA;EA9FV;;;AA+FEC,EAAAA,WAAAA,CAAYC,SAAiBC,KAA2D,EAAA;AACtF,IAAMD,KAAAA,CAAAA,OAAAA,EAASC,OAAOC,MAAQ,EAAA;MAC5BC,OAASF,EAAAA,KAAAA,EAAOG,OAAO,EAAC;MACxBC,WAAa,EAAA,KAAA;MACbC,OAAS,EAAA;KACX,CAAA;AACF;AACF;AAEO,MAAMC,iBAIHC,6BAAAA,CAAAA;EA5GV;;;;AA6GE,EAAA,OAAuBC,KAAQ,GAAA,WAAA;AAC/B,EAAA,OAAuBC,IAAO,GAAA,UAAA;AAC9B,EAAA,OAAuBC,IAAO,GAAA,UAAA;AAC9B,EAAA,OAAuBC,IAAO,GAAA,UAAA;AAC9B,EAAA,OAAuBC,GAAM,GAAA,SAAA;AAEbC,EAAAA,OAAAA;AAEGC,EAAAA,KAAAA;AACTC,EAAAA,SAAAA;AAEVjB,EAAAA,WAAAA,CAA+BkB,KAAmC,EAAA;AAChE,IAAK,KAAA,EAAA,EAAA,IADwBA,CAAAA,KAAAA,GAAAA,KAAAA,EAAAA,IAAAA,CAHZF,wBAAYG,IAAAA,GAAAA,EAAAA,EAAAA,IAAAA,CACrBF,SAA+BG,GAAAA,KAAAA,CAAAA;AAIvC,IAAKL,IAAAA,CAAAA,OAAAA,GAAUM,mBAAQC,CAAAA,IAAAA,CAAKC,KAAM,CAAA;MAChCC,SAAW,EAAA;AAAC,QAAA,UAAA;QAAYC,kBAAYP,CAAAA,KAAAA,EAAOQ,QAAQ,EAAA;AAAKC,OAAAA,CAAAA,MAAAA,CAAOC,OAAAA,CAAAA;MAC/DC,OAAS,EAAA;KACX,CAAA;AACF;EAEAC,QAAW,GAAA;AACT,IAAA,OAAOC,KAAMC,CAAAA,IAAAA,CAAK,IAAKhB,CAAAA,KAAAA,CAAMiB,MAAI,CAAA;AACnC;AAEA,EAAA,IAAIP,IAAO,GAAA;AACT,IAAO,OAAA,IAAA,CAAKR,MAAMQ,IAAQ,IAAA,EAAA;AAC5B;AAEA,EAAA,IAAIQ,OAAU,GAAA;AACZ,IAAOC,OAAAA,WAAAA,CAAK,KAAKjB,KAAO,EAAA;AAAC,MAAA,QAAA;AAAU,MAAA;AAAe,KAAA,CAAA;AACpD;AAUAkB,EAAAA,OAAAA,CACEV,MACAW,IACsC,EAAA;AACtC,IAAO,OAAA,IAAA,CAAKC,QAASZ,CAAAA,IAAAA,EAAMW,IAAAA,CAAAA;AAC7B;EAYAE,aACEb,CAAAA,IAAAA,EACAc,QACAH,IACsC,EAAA;AACtC,IAAA,OAAO,IAAKC,CAAAA,QAAAA,CAASZ,IAAMc,EAAAA,MAAAA,EAAQH,IAAAA,CAAAA;AACrC;EAEUC,QACRZ,CAAAA,IAAAA,EACAe,cACAC,WACsC,EAAA;AACtC,IAAI,IAAA,CAAChB,IAAKiB,CAAAA,IAAAA,EAAQ,EAAA;AAChB,MAAM,MAAA,IAAIC,sBAAW,CAA4B,0BAAA,CAAA,CAAA;AACnD;AACA,IAAA,IAAI,IAAK5B,CAAAA,KAAAA,CAAM6B,GAAInB,CAAAA,IAAAA,CAAO,EAAA;AACxB,MAAA,MAAM,IAAIkB,qBAAAA,CAAW,CAASlB,MAAAA,EAAAA,IAAAA,CAAuB,iBAAA,CAAA,CAAA;AACvD;AACA,IAAIA,IAAAA,IAAAA,KAASlB,SAASM,GAAK,EAAA;AACzB,MAAA,MAAM,IAAI8B,qBAAAA,CAAW,CAAalB,UAAAA,EAAAA,IAAAA,CAAuB,iBAAA,CAAA,CAAA;AAC3D;AAEA,IAAA,MAAMc,MAAUC,GAAAA,YAAAA,IAAgBC,WAAcD,GAAAA,YAAAA,GAAe,KAAKvB,KAAMsB,CAAAA,MAAAA;AACxE,IAAA,MAAMM,aAAaJ,WAAeD,IAAAA,YAAAA;AAElC,IAAKzB,IAAAA,CAAAA,KAAAA,CAAM+B,IAAIrB,IAAM,EAAA;AACnBc,MAAAA,MAAAA;AACAQ,MAAAA,OAAAA,EAASF,sBAAsBtC,QAAWsC,GAAAA,UAAAA,CAAWG,MAAO,CAAA,EAAC,CAAKH,GAAAA;KACpE,CAAA;AAEA,IAAO,OAAA,IAAA;AACT;AAEAI,EAAAA,QAAAA,CAASxB,IAAa,EAAA;AACpB,IAAA,IAAA,CAAKT,SAAYS,GAAAA,IAAAA;AACjB,IAAO,OAAA,IAAA;AACT;EAEArB,GAAI8C,CAAAA,KAAAA,EAAwBC,OAAqC,GAAA,EAAI,EAAA;AACnE,IAAOC,OAAAA,sBAAAA,CAAWC,MAChB,IACA,EAAA;AAAEC,MAAAA,MAAAA,EAAQH,OAASG,EAAAA,MAAAA;MAAQC,MAAQ,EAAA;AAACL,QAAAA,KAAAA;AAAOC,QAAAA;;AAAkB,KAAA,EAC7D,OAAOK,UAAAA,KAAAA;AACL,MAAA,MAAMpD,GAA2C,GAAA;AAC/CW,QAAAA,KAAAA,EAAO,EAAA;AACPmC,QAAAA,KAAAA,EAAO,IAAKjC,CAAAA,KAAAA,CAAMsB,MAAOkB,CAAAA,KAAAA,CAAMP,KAAAA,CAAAA;QAC/BQ,MAAQvC,EAAAA,KAAAA;AACV,OAAA;AACA,MAAA,MAAMwC,QAA8C,GAAA;AAClD5C,QAAAA,KAAAA,EAAOX,GAAIW,CAAAA,KAAAA;AACXuC,QAAAA,MAAAA,EAAQE,UAAWF,CAAAA,MAAAA;AACnBM,QAAAA,KAAAA,kBAAQC,MAAAA,CAAAA,CAAAA,MAAAA,KAAWL,UAAWI,CAAAA,KAAAA,CAAMC,MAAAA,CAA7B,EAAA,OAAA;AACT,OAAA;AAEA,MAAA,IAAIC,IACF,GAAA,IAAA,CAAKC,QAASZ,CAAAA,OAAAA,EAASa,SAAS,IAAKhD,CAAAA,SAAAA,IAAa,IAAKa,CAAAA,QAAAA,EAAW,CAAA,CAAA,CAAE,CAAA,CAAEoC,WACtE1D,QAASM,CAAAA,GAAAA;AAEX,MAAOiD,OAAAA,IAAAA,IAAQA,IAASvD,KAAAA,QAAAA,CAASM,GAAK,EAAA;AACpC,QAAA,MAAMY,IAAOqC,GAAAA,IAAAA;AACb,QAAA,MAAM1B,IAAO,GAAA,IAAA,CAAKrB,KAAMmD,CAAAA,GAAAA,CAAIJ,IAAAA,CAAAA;AAC5B,QAAA,IAAI,CAAC1B,IAAM,EAAA;AACT,UAAA,MAAM,IAAIvC,aAAAA,CAAc,CAASiE,MAAAA,EAAAA,IAAAA,CAAwB,gBAAA,CAAA,EAAA;AAAE1D,YAAAA;WAAI,CAAA;AACjE;AACA,QAAMoD,MAAAA,UAAAA,CAAW1C,OAAQqD,CAAAA,IAAAA,CAAK,OAAS,EAAA;AAAE/D,UAAAA,GAAAA;UAAKgC,IAAM0B,EAAAA;SAAK,CAAA;AACzD,QAAI,IAAA;AACF,UAAMZ,MAAAA,MAAAA,GAAQ,MAAMd,IAAAA,CAAKG,MACtB6B,CAAAA,UAAAA,CAAWhE,IAAI8C,KAAK,CAAA,CACpBmB,KAAM,CAAA,OAAOC,GAAAA,KAAAA;AACZ,YAAA,MAAM,IAAIzE,aAAAA,CACR,CAASiE,MAAAA,EAAAA,IAAAA,CACT,oFAAA,CAAA,EAAA;AAAE1D,cAAAA,GAAAA,EAAKmE,sBAAYnE,GAAAA,CAAAA;cAAMF,MAAQ,EAAA;AAACoE,gBAAAA;;aAAK,CAAA;WAE3C,CAAA,CACCE,KAAKC,kBAAAA,CAAAA;AAER,UAAA,MAAMC,WAAc,GAAA,MAAMtC,IAAKW,CAAAA,OAAAA,CAAQG,QAAOS,QAAAA,CAAAA;AAC9C,UAAIe,IAAAA,WAAAA,KAAgBnE,SAASE,KAAO,EAAA;AAClCqD,YAAAA,IAAAA,GAAO1D,GAAIW,CAAAA,KAAAA,CAAM4D,EAAG,CAAA,CAAA,CAAIlD,EAAAA,IAAAA;WACfiD,MAAAA,IAAAA,WAAAA,KAAgBnE,SAASI,IAAM,EAAA;AACxCmD,YAAAA,IAAAA,GAAO1D,GAAIW,CAAAA,KAAAA,CAAM4D,EAAG,CAAA,CAAA,CAAC,CAAIlD,EAAAA,IAAAA;WAChBiD,MAAAA,IAAAA,WAAAA,KAAgBnE,SAASG,IAAM,EAAA;AACxCoD,YAAAA,IAAAA,GAAO1D,GAAIW,CAAAA,KAAAA,CAAM4D,EAAG,CAAA,CAAA,CAAC,CAAIlD,EAAAA,IAAAA;AAC3B,WAAA,MAAA,IAAW,CAACiD,WAAAA,IAAeA,WAAgBnE,KAAAA,QAAAA,CAASK,IAAM,EAAA;AACxDkD,YAAAA,IAAAA,GAAO,IAAKC,CAAAA,QAAAA,CAASD,IAAAA,CAAAA,CAAMA,QAAQvD,QAASM,CAAAA,GAAAA;WACvC,MAAA;AACLiD,YAAOY,IAAAA,GAAAA,WAAAA;AACT;AAEA,UAAA,MAAME,UAA6C,GAAA;AACjDnD,YAAAA,IAAAA;YACAyB,KAAAA,EAAAA,MAAAA;AACAY,YAAAA;AACF,WAAA;AACA1D,UAAIW,GAAAA,CAAAA,KAAAA,CAAM8D,KAAKD,UAAAA,CAAAA;AACfxE,UAAAA,GAAAA,CAAI8C,QAAQ0B,UAAW1B,CAAAA,KAAAA;AAEvB,UAAMM,MAAAA,UAAAA,CAAW1C,OAAQqD,CAAAA,IAAAA,CAAK,SAAW,EAAA;AACvC/D,YAAAA,GAAAA,EAAKmE,sBAAYnE,GAAAA,CAAAA;AACjB8C,YAAAA,KAAAA,EAAO0B,UAAW1B,CAAAA,KAAAA;AAClBd,YAAAA,IAAAA,EAAMwC,UAAWnD,CAAAA,IAAAA;AACjBqC,YAAAA,IAAAA,EAAMc,UAAWd,CAAAA;WACnB,CAAA;AACF,SAAA,CAAA,OAASgB,KAAO,EAAA;AACd,UAAMtB,MAAAA,UAAAA,CAAW1C,OAAQqD,CAAAA,IAAAA,CAAK,OAAS,EAAA;AACrC/D,YAAAA,GAAAA,EAAKmE,sBAAYnE,GAAAA,CAAAA;YACjBgC,IAAM0B,EAAAA,IAAAA;AACNgB,YAAAA;WACF,CAAA;AACA,UAAMA,MAAAA,KAAAA;AACR;AACF;AAEA1E,MAAAA,GAAAA,CAAIsD,MAAS,GAAA,MAAA,CAAO,IAAKzC,CAAAA,KAAAA,CAAM8D,gBAAgB,IAAK9D,CAAAA,KAAAA,CAAMsB,MACvD6B,EAAAA,UAAAA,CAAWhE,GAAI8C,CAAAA,KAAK,CACpBmB,CAAAA,KAAAA,CAAM,CAACC,GAAAA,KAAAA;AACN,QAAM,MAAA,IAAIzE,cACR,CACA,kFAAA,CAAA,EAAA;AAAEO,UAAAA,GAAAA,EAAKmE,sBAAYnE,GAAAA,CAAAA;UAAMF,MAAQ,EAAA;AAACoE,YAAAA;;SAAK,CAAA;OAE3C,CAAA;AACF,MAAOlE,OAAAA,GAAAA;KACT,CAAA;AAEJ;AAEA4E,EAAAA,OAAAA,CAAyBvD,IAAuD,EAAA;AAC9E,IAAI,IAAA,IAAA,CAAKT,cAAcS,IAAM,EAAA;AAC3B,MAAA,IAAA,CAAKT,SAAYG,GAAAA,KAAAA,CAAAA;AACnB;AACA,IAAKJ,IAAAA,CAAAA,KAAAA,CAAMkE,OAAOxD,IAAAA,CAAAA;AAClB,IAAO,OAAA,IAAA;AACT;AAEAuB,EAAAA,MAAAA,CAIEkC,SAK+C,EAAA;AAC/C,IAAO,OAAA,OAAOhC,OAAOiC,GAAAA,KAAAA;AACnB,MAAA,MAAMC,cAAcF,SAAWjE,EAAAA,KAAAA,GAAQiE,SAAUjE,CAAAA,KAAAA,CAAMiC,KAAAA,CAASA,GAAAA,KAAAA;AAChE,MAAA,MAAMQ,MAAS,GAAA,MAAM,IAAKtD,CAAAA,GAAAA,CAAIgF,WAAa,EAAA;AAAEpB,QAAAA,KAAAA,EAAOkB,SAAWlB,EAAAA,KAAAA;AAAOV,QAAAA,MAAAA,EAAQ6B,GAAI7B,CAAAA;OAAO,CAAA;AACzF,MAAM+B,MAAAA,YAAAA,GAAeH,WAAWI,MAASJ,GAAAA,SAAAA,CAAUI,OAAO5B,MAAOR,CAAAA,KAAK,IAAIQ,MAAOR,CAAAA,KAAAA;AACjFqC,MAAOC,MAAAA,CAAAA,MAAAA,CAAOtC,OAAOmC,YAAAA,CAAAA;AACrB,MAAA,OAAOH,SAAUpB,CAAAA,IAAAA;AACnB,KAAA;AACF;AAEUC,EAAAA,QAAAA,CAASE,OAAgB,EAAA;AACjC,IAAMlD,MAAAA,KAAAA,GAAQ,KAAKc,QAAQ,EAAA;AAC3B,IAAM4D,MAAAA,KAAAA,GAAQ1E,KAAM2E,CAAAA,OAAAA,CAAQzB,OAAAA,CAAAA;AAC5B,IAAO,OAAA;MACL0B,IAAM5E,EAAAA,KAAAA,CAAM0E,QAAQ,CAAA,CAAA;AACpBxB,MAAAA,OAAAA,EAASlD,MAAM0E,KAAAA,CAAAA;MACf3B,IAAM/C,EAAAA,KAAAA,CAAM0E,QAAQ,CAAA;AACtB,KAAA;AACF;EAEAG,cAAiB,GAAA;AACf,IAAO,OAAA;MACL3E,KAAO4E,EAAAA,WAAAA,CAAK,KAAK5E,KAAO,EAAA;AAAC,QAAA,QAAA;AAAU,QAAA;AAAe,OAAA,CAAA;AAClDH,MAAAA,OAAAA,EAAS,IAAKA,CAAAA,OAAAA;AACdE,MAAAA,SAAAA,EAAW,IAAKA,CAAAA,SAAAA;AAChBD,MAAAA,KAAAA,EAAO,IAAKA,CAAAA;AACd,KAAA;AACF;AAEA+E,EAAAA,YAAAA,CAAaC,QAAkD,EAAA;AAC7DR,IAAOC,MAAAA,CAAAA,MAAAA,CAAO,MAAMO,QAAAA,CAAAA;AACpB,IAAK9E,IAAAA,CAAAA,KAAAA,CAAMsB,MAAWyD,KAAAA,KAAAA,CAAEC,GAAG,EAAA;AAC3B,IAAKhF,IAAAA,CAAAA,KAAAA,CAAM8D,YAAiBiB,KAAAA,KAAAA,CAAEC,GAAG,EAAA;AACnC;AACF","file":"workflow.cjs","sourcesContent":["/**\n * Copyright 2025 IBM Corp.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { z, ZodSchema } from \"zod\";\nimport { Serializable } from \"@/internals/serializable.js\";\nimport { Callback, Emitter } from \"@/emitter/emitter.js\";\nimport { RunContext } from \"@/context.js\";\nimport { omit, pick, toCamelCase } from \"remeda\";\nimport { deepCopy, shallowCopy } from \"@/serializer/utils.js\";\nimport { FrameworkError, ValueError } from \"@/errors.js\";\n\n// eslint-disable-next-line @typescript-eslint/no-invalid-void-type\ntype WorkflowStepHandlerReturn<K extends string> = K | ReservedStep | void;\n\nexport interface WorkflowRun<T extends ZodSchema, T2 extends ZodSchema, K extends string> {\n result: z.output<T2>;\n steps: WorkflowStepRes<T, K>[];\n state: z.output<T>;\n}\n\nexport interface WorkflowRunOptions<K extends string> {\n start?: K;\n signal?: AbortSignal;\n}\n\nexport interface WorkflowStepDef<T extends ZodSchema, K extends string> {\n schema: T;\n handler: WorkflowStepHandler<T, K>;\n}\n\nexport interface WorkflowStepRes<T extends ZodSchema, K extends string> {\n name: K;\n next: K | ReservedStep;\n state: z.output<T>;\n}\n\nexport interface WorkflowRunContext<T extends ZodSchema, K extends string> {\n steps: WorkflowStepRes<T, K>[];\n signal: AbortSignal;\n abort: (reason?: Error) => void;\n}\n\nexport type WorkflowStepHandler<T extends ZodSchema, K extends string> = (\n state: z.output<T>,\n context: WorkflowRunContext<T, K>,\n) => Promise<WorkflowStepHandlerReturn<K>> | WorkflowStepHandlerReturn<K>;\n\nexport interface WorkflowEvents<T extends ZodSchema, T2 extends ZodSchema, K extends string> {\n start: Callback<{ step: K; run: WorkflowRun<T, T2, K> }>;\n error: Callback<{\n step: K;\n error: Error;\n run: WorkflowRun<T, T2, K>;\n }>;\n success: Callback<{\n step: K;\n next: K | ReservedStep;\n state: z.output<T>;\n run: WorkflowRun<T, T2, K>;\n }>;\n}\n\ninterface FlowInput<TS extends ZodSchema, TS2 extends ZodSchema = TS> {\n name?: string;\n schema: TS;\n outputSchema?: TS2;\n}\n\ntype RunStep<K extends string> = K | typeof Workflow.END;\ntype ReservedStep =\n | typeof Workflow.START\n | typeof Workflow.NEXT\n | typeof Workflow.PREV\n | typeof Workflow.END\n | typeof Workflow.SELF;\nexport type FlowStepName<K extends string> = K | ReservedStep;\n\nexport class WorkflowError<\n T extends ZodSchema,\n T2 extends ZodSchema,\n K extends string,\n> extends FrameworkError {\n constructor(message: string, extra?: { run?: WorkflowRun<T, T2, K>; errors?: Error[] }) {\n super(message, extra?.errors, {\n context: extra?.run ?? {},\n isRetryable: false,\n isFatal: true,\n });\n }\n}\n\nexport class Workflow<\n TInput extends ZodSchema,\n TOutput extends ZodSchema = TInput,\n TKeys extends string = string,\n> extends Serializable {\n public static readonly START = \"__start__\";\n public static readonly SELF = \"__self__\";\n public static readonly PREV = \"__prev__\";\n public static readonly NEXT = \"__next__\";\n public static readonly END = \"__end__\";\n\n public readonly emitter: Emitter<WorkflowEvents<TInput, TOutput, TKeys>>;\n\n protected readonly steps = new Map<string, WorkflowStepDef<TInput, TKeys>>();\n protected startStep: TKeys | undefined = undefined;\n\n constructor(protected readonly input: FlowInput<TInput, TOutput>) {\n super();\n this.emitter = Emitter.root.child({\n namespace: [\"workflow\", toCamelCase(input?.name ?? \"\")].filter(Boolean),\n creator: this,\n });\n }\n\n getSteps() {\n return Array.from(this.steps.keys()) as TKeys[];\n }\n\n get name() {\n return this.input.name ?? \"\";\n }\n\n get schemas() {\n return pick(this.input, [\"schema\", \"outputSchema\"]);\n }\n\n addStep<L extends string>(\n name: L,\n handler: WorkflowStepHandler<TInput | TOutput, TKeys>,\n ): Workflow<TInput, TOutput, L | TKeys>;\n addStep<L extends string, TFlow extends AnyWorkflowFlow>(\n name: L,\n flow: Workflow.pipeable<this, TFlow>,\n ): Workflow<TInput, TOutput, L | TKeys>;\n addStep<L extends string>(\n name: L,\n step: WorkflowStepHandler<TInput | TOutput, TKeys> | AnyWorkflowFlow,\n ): Workflow<TInput, TOutput, L | TKeys> {\n return this._addStep(name, step);\n }\n\n addStrictStep<L extends string, TI2 extends ZodSchema>(\n name: L,\n schema: TI2,\n handler: WorkflowStepHandler<TI2, TKeys>,\n ): Workflow<TInput, TOutput, L | TKeys>;\n addStrictStep<L extends string, TI2 extends ZodSchema, TFlow extends AnyWorkflowFlow>(\n name: L,\n schema: TI2,\n flow: Workflow.pipeable<Workflow<TI2, TOutput, TKeys>, TFlow>,\n ): Workflow<TInput, TOutput, L | TKeys>;\n addStrictStep<L extends string, TI2 extends ZodSchema>(\n name: L,\n schema: TI2,\n step: WorkflowStepHandler<TI2, TKeys> | AnyWorkflowFlow,\n ): Workflow<TInput, TOutput, L | TKeys> {\n return this._addStep(name, schema, step);\n }\n\n protected _addStep<TI2 extends ZodSchema = TInput, L extends string = TKeys>(\n name: L,\n schemaOrStep: TI2 | WorkflowStepHandler<TInput, TKeys> | AnyWorkflowFlow,\n stepOrEmpty?: WorkflowStepHandler<TI2, TKeys> | AnyWorkflowFlow,\n ): Workflow<TInput, TOutput, L | TKeys> {\n if (!name.trim()) {\n throw new ValueError(`Step name cannot be empty!`);\n }\n if (this.steps.has(name)) {\n throw new ValueError(`Step '${name}' already exists!`);\n }\n if (name === Workflow.END) {\n throw new ValueError(`The name '${name}' cannot be used!`);\n }\n\n const schema = (schemaOrStep && stepOrEmpty ? schemaOrStep : this.input.schema) as TInput;\n const stepOrFlow = stepOrEmpty || schemaOrStep;\n\n this.steps.set(name, {\n schema,\n handler: stepOrFlow instanceof Workflow ? stepOrFlow.asStep({}) : stepOrFlow,\n } as WorkflowStepDef<TInput, TKeys>);\n\n return this as unknown as Workflow<TInput, TOutput, L | TKeys>;\n }\n\n setStart(name: TKeys) {\n this.startStep = name;\n return this;\n }\n\n run(state: z.input<TInput>, options: WorkflowRunOptions<TKeys> = {}) {\n return RunContext.enter(\n this,\n { signal: options?.signal, params: [state, options] as const },\n async (runContext): Promise<WorkflowRun<TInput, TOutput, TKeys>> => {\n const run: WorkflowRun<TInput, TOutput, TKeys> = {\n steps: [],\n state: this.input.schema.parse(state),\n result: undefined as z.output<TOutput>,\n };\n const handlers: WorkflowRunContext<TInput, TKeys> = {\n steps: run.steps,\n signal: runContext.signal,\n abort: (reason) => runContext.abort(reason),\n };\n\n let next: RunStep<TKeys> =\n this.findStep(options?.start || this.startStep || this.getSteps()[0]).current ??\n Workflow.END;\n\n while (next && next !== Workflow.END) {\n const name = next;\n const step = this.steps.get(next);\n if (!step) {\n throw new WorkflowError(`Step '${next}' was not found.`, { run });\n }\n await runContext.emitter.emit(\"start\", { run, step: next });\n try {\n const state = await step.schema\n .parseAsync(run.state)\n .catch(async (err: Error) => {\n throw new WorkflowError(\n `Step '${next}' cannot be executed because the provided input doesn't adhere to the step's schema.`,\n { run: shallowCopy(run), errors: [err] },\n );\n })\n .then(deepCopy);\n\n const nextStepRaw = await step.handler(state, handlers);\n if (nextStepRaw === Workflow.START) {\n next = run.steps.at(0)?.name!;\n } else if (nextStepRaw === Workflow.PREV) {\n next = run.steps.at(-2)?.name!;\n } else if (nextStepRaw === Workflow.SELF) {\n next = run.steps.at(-1)?.name!;\n } else if (!nextStepRaw || nextStepRaw === Workflow.NEXT) {\n next = this.findStep(next).next || Workflow.END;\n } else {\n next = nextStepRaw;\n }\n\n const stepResult: WorkflowStepRes<TInput, TKeys> = {\n name,\n state,\n next,\n };\n run.steps.push(stepResult);\n run.state = stepResult.state;\n\n await runContext.emitter.emit(\"success\", {\n run: shallowCopy(run),\n state: stepResult.state,\n step: stepResult.name,\n next: stepResult.next,\n });\n } catch (error) {\n await runContext.emitter.emit(\"error\", {\n run: shallowCopy(run),\n step: next as TKeys,\n error,\n });\n throw error;\n }\n }\n\n run.result = await (this.input.outputSchema ?? this.input.schema)\n .parseAsync(run.state)\n .catch((err) => {\n throw new WorkflowError(\n `Workflow has ended but it's state does not adhere to the workflow's output schema.`,\n { run: shallowCopy(run), errors: [err] },\n );\n });\n return run;\n },\n );\n }\n\n delStep<L extends TKeys>(name: L): Workflow<TInput, TOutput, Exclude<TKeys, L>> {\n if (this.startStep === name) {\n this.startStep = undefined;\n }\n this.steps.delete(name);\n return this as unknown as Workflow<TInput, TOutput, Exclude<TKeys, L>>;\n }\n\n asStep<\n TInput2 extends ZodSchema = TInput,\n TOutput2 extends ZodSchema = TOutput,\n TKeys2 extends string = TKeys,\n >(overrides: {\n input?: (input: z.output<TInput2>) => z.output<TInput> | z.input<TInput>;\n output?: (output: z.output<TOutput>) => z.output<TOutput2> | z.input<TOutput2>;\n start?: TKeys;\n next?: FlowStepName<TKeys2>;\n }): WorkflowStepHandler<TInput2, TKeys | TKeys2> {\n return async (state, ctx) => {\n const mappedInput = overrides?.input ? overrides.input(state) : state;\n const result = await this.run(mappedInput, { start: overrides?.start, signal: ctx.signal });\n const mappedOutput = overrides?.output ? overrides.output(result.state) : result.state;\n Object.assign(state, mappedOutput);\n return overrides.next;\n };\n }\n\n protected findStep(current: TKeys) {\n const steps = this.getSteps();\n const index = steps.indexOf(current);\n return {\n prev: steps[index - 1],\n current: steps[index],\n next: steps[index + 1],\n };\n }\n\n createSnapshot() {\n return {\n input: omit(this.input, [\"schema\", \"outputSchema\"]),\n emitter: this.emitter,\n startStep: this.startStep,\n steps: this.steps,\n };\n }\n\n loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>) {\n Object.assign(this, snapshot);\n this.input.schema ??= z.any() as unknown as TInput;\n this.input.outputSchema ??= z.any() as unknown as TOutput;\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace Workflow {\n export type pipeable<T extends AnyWorkflowFlow, T2 extends AnyWorkflowFlow> =\n Workflow.state<T> extends Workflow.input<T2> ? T2 : never;\n export type input<T> = T extends Workflow<infer A, any, any> ? z.input<A> : never;\n export type state<T> = T extends Workflow<infer A, any, any> ? z.output<A> : never;\n export type output<T> = T extends Workflow<any, infer A, any> ? z.output<A> : never;\n export type run<T> = T extends Workflow<infer A, infer B, infer C> ? WorkflowRun<A, B, C> : never;\n}\n\nexport type AnyWorkflowFlow = Workflow<any, any, any>;\n"]}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { Run } from '../context.cjs';
|
|
2
|
+
import { ZodSchema, z } from 'zod';
|
|
3
|
+
import { Serializable } from '../internals/serializable.cjs';
|
|
4
|
+
import { C as Callback, E as Emitter } from '../emitter-BWtGHYn0.cjs';
|
|
5
|
+
import { FrameworkError } from '../errors.cjs';
|
|
6
|
+
import '../internals/helpers/promise.cjs';
|
|
7
|
+
import '../internals/types.cjs';
|
|
8
|
+
import '../internals/helpers/guards.cjs';
|
|
9
|
+
|
|
10
|
+
type WorkflowStepHandlerReturn<K extends string> = K | ReservedStep | void;
|
|
11
|
+
interface WorkflowRun<T extends ZodSchema, T2 extends ZodSchema, K extends string> {
|
|
12
|
+
result: z.output<T2>;
|
|
13
|
+
steps: WorkflowStepRes<T, K>[];
|
|
14
|
+
state: z.output<T>;
|
|
15
|
+
}
|
|
16
|
+
interface WorkflowRunOptions<K extends string> {
|
|
17
|
+
start?: K;
|
|
18
|
+
signal?: AbortSignal;
|
|
19
|
+
}
|
|
20
|
+
interface WorkflowStepDef<T extends ZodSchema, K extends string> {
|
|
21
|
+
schema: T;
|
|
22
|
+
handler: WorkflowStepHandler<T, K>;
|
|
23
|
+
}
|
|
24
|
+
interface WorkflowStepRes<T extends ZodSchema, K extends string> {
|
|
25
|
+
name: K;
|
|
26
|
+
next: K | ReservedStep;
|
|
27
|
+
state: z.output<T>;
|
|
28
|
+
}
|
|
29
|
+
interface WorkflowRunContext<T extends ZodSchema, K extends string> {
|
|
30
|
+
steps: WorkflowStepRes<T, K>[];
|
|
31
|
+
signal: AbortSignal;
|
|
32
|
+
abort: (reason?: Error) => void;
|
|
33
|
+
}
|
|
34
|
+
type WorkflowStepHandler<T extends ZodSchema, K extends string> = (state: z.output<T>, context: WorkflowRunContext<T, K>) => Promise<WorkflowStepHandlerReturn<K>> | WorkflowStepHandlerReturn<K>;
|
|
35
|
+
interface WorkflowEvents<T extends ZodSchema, T2 extends ZodSchema, K extends string> {
|
|
36
|
+
start: Callback<{
|
|
37
|
+
step: K;
|
|
38
|
+
run: WorkflowRun<T, T2, K>;
|
|
39
|
+
}>;
|
|
40
|
+
error: Callback<{
|
|
41
|
+
step: K;
|
|
42
|
+
error: Error;
|
|
43
|
+
run: WorkflowRun<T, T2, K>;
|
|
44
|
+
}>;
|
|
45
|
+
success: Callback<{
|
|
46
|
+
step: K;
|
|
47
|
+
next: K | ReservedStep;
|
|
48
|
+
state: z.output<T>;
|
|
49
|
+
run: WorkflowRun<T, T2, K>;
|
|
50
|
+
}>;
|
|
51
|
+
}
|
|
52
|
+
interface FlowInput<TS extends ZodSchema, TS2 extends ZodSchema = TS> {
|
|
53
|
+
name?: string;
|
|
54
|
+
schema: TS;
|
|
55
|
+
outputSchema?: TS2;
|
|
56
|
+
}
|
|
57
|
+
type ReservedStep = typeof Workflow.START | typeof Workflow.NEXT | typeof Workflow.PREV | typeof Workflow.END | typeof Workflow.SELF;
|
|
58
|
+
type FlowStepName<K extends string> = K | ReservedStep;
|
|
59
|
+
declare class WorkflowError<T extends ZodSchema, T2 extends ZodSchema, K extends string> extends FrameworkError {
|
|
60
|
+
constructor(message: string, extra?: {
|
|
61
|
+
run?: WorkflowRun<T, T2, K>;
|
|
62
|
+
errors?: Error[];
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
declare class Workflow<TInput extends ZodSchema, TOutput extends ZodSchema = TInput, TKeys extends string = string> extends Serializable {
|
|
66
|
+
protected readonly input: FlowInput<TInput, TOutput>;
|
|
67
|
+
static readonly START = "__start__";
|
|
68
|
+
static readonly SELF = "__self__";
|
|
69
|
+
static readonly PREV = "__prev__";
|
|
70
|
+
static readonly NEXT = "__next__";
|
|
71
|
+
static readonly END = "__end__";
|
|
72
|
+
readonly emitter: Emitter<WorkflowEvents<TInput, TOutput, TKeys>>;
|
|
73
|
+
protected readonly steps: Map<string, WorkflowStepDef<TInput, TKeys>>;
|
|
74
|
+
protected startStep: TKeys | undefined;
|
|
75
|
+
constructor(input: FlowInput<TInput, TOutput>);
|
|
76
|
+
getSteps(): TKeys[];
|
|
77
|
+
get name(): string;
|
|
78
|
+
get schemas(): {
|
|
79
|
+
schema: TInput;
|
|
80
|
+
outputSchema?: TOutput | undefined;
|
|
81
|
+
};
|
|
82
|
+
addStep<L extends string>(name: L, handler: WorkflowStepHandler<TInput | TOutput, TKeys>): Workflow<TInput, TOutput, L | TKeys>;
|
|
83
|
+
addStep<L extends string, TFlow extends AnyWorkflowFlow>(name: L, flow: Workflow.pipeable<this, TFlow>): Workflow<TInput, TOutput, L | TKeys>;
|
|
84
|
+
addStrictStep<L extends string, TI2 extends ZodSchema>(name: L, schema: TI2, handler: WorkflowStepHandler<TI2, TKeys>): Workflow<TInput, TOutput, L | TKeys>;
|
|
85
|
+
addStrictStep<L extends string, TI2 extends ZodSchema, TFlow extends AnyWorkflowFlow>(name: L, schema: TI2, flow: Workflow.pipeable<Workflow<TI2, TOutput, TKeys>, TFlow>): Workflow<TInput, TOutput, L | TKeys>;
|
|
86
|
+
protected _addStep<TI2 extends ZodSchema = TInput, L extends string = TKeys>(name: L, schemaOrStep: TI2 | WorkflowStepHandler<TInput, TKeys> | AnyWorkflowFlow, stepOrEmpty?: WorkflowStepHandler<TI2, TKeys> | AnyWorkflowFlow): Workflow<TInput, TOutput, L | TKeys>;
|
|
87
|
+
setStart(name: TKeys): this;
|
|
88
|
+
run(state: z.input<TInput>, options?: WorkflowRunOptions<TKeys>): Run<WorkflowRun<TInput, TOutput, TKeys>, this, readonly [z.input<TInput>, WorkflowRunOptions<TKeys>]>;
|
|
89
|
+
delStep<L extends TKeys>(name: L): Workflow<TInput, TOutput, Exclude<TKeys, L>>;
|
|
90
|
+
asStep<TInput2 extends ZodSchema = TInput, TOutput2 extends ZodSchema = TOutput, TKeys2 extends string = TKeys>(overrides: {
|
|
91
|
+
input?: (input: z.output<TInput2>) => z.output<TInput> | z.input<TInput>;
|
|
92
|
+
output?: (output: z.output<TOutput>) => z.output<TOutput2> | z.input<TOutput2>;
|
|
93
|
+
start?: TKeys;
|
|
94
|
+
next?: FlowStepName<TKeys2>;
|
|
95
|
+
}): WorkflowStepHandler<TInput2, TKeys | TKeys2>;
|
|
96
|
+
protected findStep(current: TKeys): {
|
|
97
|
+
prev: TKeys;
|
|
98
|
+
current: TKeys;
|
|
99
|
+
next: TKeys;
|
|
100
|
+
};
|
|
101
|
+
createSnapshot(): {
|
|
102
|
+
input: Omit<FlowInput<TInput, TOutput>, "schema" | "outputSchema">;
|
|
103
|
+
emitter: Emitter<WorkflowEvents<TInput, TOutput, TKeys>>;
|
|
104
|
+
startStep: TKeys | undefined;
|
|
105
|
+
steps: Map<string, WorkflowStepDef<TInput, TKeys>>;
|
|
106
|
+
};
|
|
107
|
+
loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>): void;
|
|
108
|
+
}
|
|
109
|
+
declare namespace Workflow {
|
|
110
|
+
type pipeable<T extends AnyWorkflowFlow, T2 extends AnyWorkflowFlow> = Workflow.state<T> extends Workflow.input<T2> ? T2 : never;
|
|
111
|
+
type input<T> = T extends Workflow<infer A, any, any> ? z.input<A> : never;
|
|
112
|
+
type state<T> = T extends Workflow<infer A, any, any> ? z.output<A> : never;
|
|
113
|
+
type output<T> = T extends Workflow<any, infer A, any> ? z.output<A> : never;
|
|
114
|
+
type run<T> = T extends Workflow<infer A, infer B, infer C> ? WorkflowRun<A, B, C> : never;
|
|
115
|
+
}
|
|
116
|
+
type AnyWorkflowFlow = Workflow<any, any, any>;
|
|
117
|
+
|
|
118
|
+
export { type AnyWorkflowFlow, type FlowStepName, Workflow, WorkflowError, type WorkflowEvents, type WorkflowRun, type WorkflowRunContext, type WorkflowRunOptions, type WorkflowStepDef, type WorkflowStepHandler, type WorkflowStepRes };
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { Run } from '../context.js';
|
|
2
|
+
import { ZodSchema, z } from 'zod';
|
|
3
|
+
import { Serializable } from '../internals/serializable.js';
|
|
4
|
+
import { C as Callback, E as Emitter } from '../emitter-l0W9gC1A.js';
|
|
5
|
+
import { FrameworkError } from '../errors.js';
|
|
6
|
+
import '../internals/helpers/promise.js';
|
|
7
|
+
import '../internals/types.js';
|
|
8
|
+
import '../internals/helpers/guards.js';
|
|
9
|
+
|
|
10
|
+
type WorkflowStepHandlerReturn<K extends string> = K | ReservedStep | void;
|
|
11
|
+
interface WorkflowRun<T extends ZodSchema, T2 extends ZodSchema, K extends string> {
|
|
12
|
+
result: z.output<T2>;
|
|
13
|
+
steps: WorkflowStepRes<T, K>[];
|
|
14
|
+
state: z.output<T>;
|
|
15
|
+
}
|
|
16
|
+
interface WorkflowRunOptions<K extends string> {
|
|
17
|
+
start?: K;
|
|
18
|
+
signal?: AbortSignal;
|
|
19
|
+
}
|
|
20
|
+
interface WorkflowStepDef<T extends ZodSchema, K extends string> {
|
|
21
|
+
schema: T;
|
|
22
|
+
handler: WorkflowStepHandler<T, K>;
|
|
23
|
+
}
|
|
24
|
+
interface WorkflowStepRes<T extends ZodSchema, K extends string> {
|
|
25
|
+
name: K;
|
|
26
|
+
next: K | ReservedStep;
|
|
27
|
+
state: z.output<T>;
|
|
28
|
+
}
|
|
29
|
+
interface WorkflowRunContext<T extends ZodSchema, K extends string> {
|
|
30
|
+
steps: WorkflowStepRes<T, K>[];
|
|
31
|
+
signal: AbortSignal;
|
|
32
|
+
abort: (reason?: Error) => void;
|
|
33
|
+
}
|
|
34
|
+
type WorkflowStepHandler<T extends ZodSchema, K extends string> = (state: z.output<T>, context: WorkflowRunContext<T, K>) => Promise<WorkflowStepHandlerReturn<K>> | WorkflowStepHandlerReturn<K>;
|
|
35
|
+
interface WorkflowEvents<T extends ZodSchema, T2 extends ZodSchema, K extends string> {
|
|
36
|
+
start: Callback<{
|
|
37
|
+
step: K;
|
|
38
|
+
run: WorkflowRun<T, T2, K>;
|
|
39
|
+
}>;
|
|
40
|
+
error: Callback<{
|
|
41
|
+
step: K;
|
|
42
|
+
error: Error;
|
|
43
|
+
run: WorkflowRun<T, T2, K>;
|
|
44
|
+
}>;
|
|
45
|
+
success: Callback<{
|
|
46
|
+
step: K;
|
|
47
|
+
next: K | ReservedStep;
|
|
48
|
+
state: z.output<T>;
|
|
49
|
+
run: WorkflowRun<T, T2, K>;
|
|
50
|
+
}>;
|
|
51
|
+
}
|
|
52
|
+
interface FlowInput<TS extends ZodSchema, TS2 extends ZodSchema = TS> {
|
|
53
|
+
name?: string;
|
|
54
|
+
schema: TS;
|
|
55
|
+
outputSchema?: TS2;
|
|
56
|
+
}
|
|
57
|
+
type ReservedStep = typeof Workflow.START | typeof Workflow.NEXT | typeof Workflow.PREV | typeof Workflow.END | typeof Workflow.SELF;
|
|
58
|
+
type FlowStepName<K extends string> = K | ReservedStep;
|
|
59
|
+
declare class WorkflowError<T extends ZodSchema, T2 extends ZodSchema, K extends string> extends FrameworkError {
|
|
60
|
+
constructor(message: string, extra?: {
|
|
61
|
+
run?: WorkflowRun<T, T2, K>;
|
|
62
|
+
errors?: Error[];
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
declare class Workflow<TInput extends ZodSchema, TOutput extends ZodSchema = TInput, TKeys extends string = string> extends Serializable {
|
|
66
|
+
protected readonly input: FlowInput<TInput, TOutput>;
|
|
67
|
+
static readonly START = "__start__";
|
|
68
|
+
static readonly SELF = "__self__";
|
|
69
|
+
static readonly PREV = "__prev__";
|
|
70
|
+
static readonly NEXT = "__next__";
|
|
71
|
+
static readonly END = "__end__";
|
|
72
|
+
readonly emitter: Emitter<WorkflowEvents<TInput, TOutput, TKeys>>;
|
|
73
|
+
protected readonly steps: Map<string, WorkflowStepDef<TInput, TKeys>>;
|
|
74
|
+
protected startStep: TKeys | undefined;
|
|
75
|
+
constructor(input: FlowInput<TInput, TOutput>);
|
|
76
|
+
getSteps(): TKeys[];
|
|
77
|
+
get name(): string;
|
|
78
|
+
get schemas(): {
|
|
79
|
+
schema: TInput;
|
|
80
|
+
outputSchema?: TOutput | undefined;
|
|
81
|
+
};
|
|
82
|
+
addStep<L extends string>(name: L, handler: WorkflowStepHandler<TInput | TOutput, TKeys>): Workflow<TInput, TOutput, L | TKeys>;
|
|
83
|
+
addStep<L extends string, TFlow extends AnyWorkflowFlow>(name: L, flow: Workflow.pipeable<this, TFlow>): Workflow<TInput, TOutput, L | TKeys>;
|
|
84
|
+
addStrictStep<L extends string, TI2 extends ZodSchema>(name: L, schema: TI2, handler: WorkflowStepHandler<TI2, TKeys>): Workflow<TInput, TOutput, L | TKeys>;
|
|
85
|
+
addStrictStep<L extends string, TI2 extends ZodSchema, TFlow extends AnyWorkflowFlow>(name: L, schema: TI2, flow: Workflow.pipeable<Workflow<TI2, TOutput, TKeys>, TFlow>): Workflow<TInput, TOutput, L | TKeys>;
|
|
86
|
+
protected _addStep<TI2 extends ZodSchema = TInput, L extends string = TKeys>(name: L, schemaOrStep: TI2 | WorkflowStepHandler<TInput, TKeys> | AnyWorkflowFlow, stepOrEmpty?: WorkflowStepHandler<TI2, TKeys> | AnyWorkflowFlow): Workflow<TInput, TOutput, L | TKeys>;
|
|
87
|
+
setStart(name: TKeys): this;
|
|
88
|
+
run(state: z.input<TInput>, options?: WorkflowRunOptions<TKeys>): Run<WorkflowRun<TInput, TOutput, TKeys>, this, readonly [z.input<TInput>, WorkflowRunOptions<TKeys>]>;
|
|
89
|
+
delStep<L extends TKeys>(name: L): Workflow<TInput, TOutput, Exclude<TKeys, L>>;
|
|
90
|
+
asStep<TInput2 extends ZodSchema = TInput, TOutput2 extends ZodSchema = TOutput, TKeys2 extends string = TKeys>(overrides: {
|
|
91
|
+
input?: (input: z.output<TInput2>) => z.output<TInput> | z.input<TInput>;
|
|
92
|
+
output?: (output: z.output<TOutput>) => z.output<TOutput2> | z.input<TOutput2>;
|
|
93
|
+
start?: TKeys;
|
|
94
|
+
next?: FlowStepName<TKeys2>;
|
|
95
|
+
}): WorkflowStepHandler<TInput2, TKeys | TKeys2>;
|
|
96
|
+
protected findStep(current: TKeys): {
|
|
97
|
+
prev: TKeys;
|
|
98
|
+
current: TKeys;
|
|
99
|
+
next: TKeys;
|
|
100
|
+
};
|
|
101
|
+
createSnapshot(): {
|
|
102
|
+
input: Omit<FlowInput<TInput, TOutput>, "schema" | "outputSchema">;
|
|
103
|
+
emitter: Emitter<WorkflowEvents<TInput, TOutput, TKeys>>;
|
|
104
|
+
startStep: TKeys | undefined;
|
|
105
|
+
steps: Map<string, WorkflowStepDef<TInput, TKeys>>;
|
|
106
|
+
};
|
|
107
|
+
loadSnapshot(snapshot: ReturnType<typeof this.createSnapshot>): void;
|
|
108
|
+
}
|
|
109
|
+
declare namespace Workflow {
|
|
110
|
+
type pipeable<T extends AnyWorkflowFlow, T2 extends AnyWorkflowFlow> = Workflow.state<T> extends Workflow.input<T2> ? T2 : never;
|
|
111
|
+
type input<T> = T extends Workflow<infer A, any, any> ? z.input<A> : never;
|
|
112
|
+
type state<T> = T extends Workflow<infer A, any, any> ? z.output<A> : never;
|
|
113
|
+
type output<T> = T extends Workflow<any, infer A, any> ? z.output<A> : never;
|
|
114
|
+
type run<T> = T extends Workflow<infer A, infer B, infer C> ? WorkflowRun<A, B, C> : never;
|
|
115
|
+
}
|
|
116
|
+
type AnyWorkflowFlow = Workflow<any, any, any>;
|
|
117
|
+
|
|
118
|
+
export { type AnyWorkflowFlow, type FlowStepName, Workflow, WorkflowError, type WorkflowEvents, type WorkflowRun, type WorkflowRunContext, type WorkflowRunOptions, type WorkflowStepDef, type WorkflowStepHandler, type WorkflowStepRes };
|