UNPKG

@pompeii-labs/magma

Version:

The Typescript framework to build AI agents quickly and easily

100 lines (94 loc) 3.25 kB
'use strict'; var __defProp = Object.defineProperty; var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __name = (target, value) => __defProp(target, "name", { value, configurable: true }); var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value); // src/types/messages.ts var _MagmaMessage = class _MagmaMessage { constructor({ role, content, blocks, id }) { __publicField(this, "id"); __publicField(this, "role"); __publicField(this, "blocks", []); this.id = id; this.role = role; if (blocks) { this.blocks = blocks; } else if (content !== void 0 && content !== null) { this.blocks = [ { type: "text", text: content } ]; } } getText() { return this.blocks.filter((block) => block.type === "text").map((block) => block.text).join("\n"); } getToolCalls() { return this.blocks.filter((block) => block.type === "tool_call").map((block) => block.tool_call); } getToolResults() { return this.blocks.filter((block) => block.type === "tool_result").map((block) => block.tool_result); } getReasoning() { return this.blocks.filter((block) => block.type === "reasoning").filter((block) => !block.redacted).map((block) => block.reasoning).join("\n"); } getImages() { return this.blocks.filter((block) => block.type === "image").map((block) => block.image); } get content() { return this.getText(); } }; __name(_MagmaMessage, "MagmaMessage"); var MagmaMessage = _MagmaMessage; var _MagmaUserMessage = class _MagmaUserMessage extends MagmaMessage { constructor(magmaUserMessage) { super(magmaUserMessage); __publicField(this, "role", "user"); } }; __name(_MagmaUserMessage, "MagmaUserMessage"); var MagmaUserMessage = _MagmaUserMessage; var _MagmaAssistantMessage = class _MagmaAssistantMessage extends MagmaMessage { constructor(magmaAssistantMessage) { super(magmaAssistantMessage); __publicField(this, "role", "assistant"); } }; __name(_MagmaAssistantMessage, "MagmaAssistantMessage"); var MagmaAssistantMessage = _MagmaAssistantMessage; var _MagmaSystemMessage = class _MagmaSystemMessage extends MagmaMessage { constructor(magmaSystemMessage) { super(magmaSystemMessage); __publicField(this, "role", "system"); this.blocks.forEach((block) => { var _a; block.cache = (_a = block.cache) != null ? _a : magmaSystemMessage.cache; }); } }; __name(_MagmaSystemMessage, "MagmaSystemMessage"); var MagmaSystemMessage = _MagmaSystemMessage; // src/types/providers.ts var MagmaProviders = [ "openai", "anthropic", "groq", "google" ]; // src/types/utilities/middleware.ts var MagmaMiddlewareTriggers = [ "onCompletion", "preCompletion", "onToolExecution", "preToolExecution", "onMainFinish" ]; exports.MagmaAssistantMessage = MagmaAssistantMessage; exports.MagmaMessage = MagmaMessage; exports.MagmaMiddlewareTriggers = MagmaMiddlewareTriggers; exports.MagmaProviders = MagmaProviders; exports.MagmaSystemMessage = MagmaSystemMessage; exports.MagmaUserMessage = MagmaUserMessage;